Làm cách nào tôi có thể bảo mật initrd và grub.cfg bằng cách khởi động an toàn?


8

Tôi đang sử dụng cách tiếp cận ubfox mặc định với shim và grub2, kết hợp với khóa nền tảng của riêng tôi (tự ký shim với sbsign) và phân vùng gốc được mã hóa, để khởi động cài đặt ubfox của tôi. Nhưng điều này chỉ xác minh grubx64.efi và kernel, nhưng không bảo vệ các tệp initrd.img và grub.cfg trên phân vùng khởi động không được mã hóa khỏi các sửa đổi độc hại.

Vậy làm thế nào tôi có thể xác minh cấu hình initrd và grub, có thể sử dụng hàm băm sha256, trước khi sử dụng chúng để khởi động? Việc xác minh đó có thể xảy ra trong shim, trong grub hoặc trong một số công cụ khác mà tôi có thể sử dụng ngoài hoặc thay vì shim và / hoặc grub.

Mục đích của câu hỏi này là để ngăn chặn việc thực thi kernel với môi trường đã sửa đổi (dòng lệnh kernel và initrd) để ngăn chặn rò rỉ mật khẩu mã hóa phân vùng gốc đến bất cứ đâu.

Không tìm thấy bất kỳ phương pháp nào để xác minh cấu hình khởi động mặc dù đã đọc nhiều ngày hướng dẫn web / blog về khởi động an toàn, bao gồm PreLoader.efi của Ubuntu và Linux, tất cả đều giải thích cách xác minh các tệp thực thi bao gồm các mô-đun hạt nhân hoạt động, nhưng không trong đó đề cập đến grub.cfg và (shell script và các tệp cấu hình bên trong) initrd, vì vậy có vẻ như tôi là người đầu tiên từng yêu cầu xác minh các tệp không nhị phân trong quá trình khởi động. Các nguồn tốt nhất tôi từng tìm thấy là của Rod Smith .

Những gì tôi chưa thử là sửa đổi mã nguồn của shim hoặc grub, tạo một ngã ba hoặc trực tiếp đóng góp cho chúng. Đó sẽ là cách duy nhất để đi?


Bài đăng chéo của bạn là từ ngày hôm qua, một chút kiên nhẫn sẽ phù hợp hơn và chắc chắn bài đăng chéo sẽ không (BTW nếu bạn vượt lên trên bạn có thể thấy các lý do cho việc hạ cấp: không có nỗ lực nghiên cứu / không rõ ràng / không hữu ích)
Anthon

@Anthon, bạn nghĩ đâu là nơi thích hợp để đặt câu hỏi này? Tôi không biết, vì vậy tôi nghĩ đây là một nơi tốt hơn so với SuperUser. Và bạn có nghĩ rằng tôi nên xóa câu hỏi trước đó và câu hỏi này trước khi hỏi tại địa điểm thích hợp để tránh bị từ chối vì đăng chéo lại không?
Juergen

Đăng chéo là không bao giờ ok, như bạn sẽ biết nếu bạn đọc trợ giúp. Trên trang web này là một lý do để đóng cửa (như bạn nhận thấy), một số kiên nhẫn là cần thiết cũng như đây là một trang web Hỏi & Đáp, không phải là một trang web trợ giúp cá nhân, hoặc ngay lập tức. Một vài ngày chờ đợi, đặc biệt là vào cuối tuần sẽ thích hợp. Và một số mô tả thêm về những gì bạn đã cố gắng và những gì không hoạt động cũng sẽ phù hợp. Nếu bạn muốn mở lại ở đây, hãy xóa Q trên superuser, chỉ rõ nó ở đây (bằng cách chỉnh sửa bài đăng của bạn) và sau đó nó sẽ nằm trong hàng đợi để được mở lại.
Anthon

@Anthon, cảm ơn bạn đã cho ý kiến. Đã xóa câu hỏi trên SuperUser và giải thích câu hỏi ở đây chi tiết hơn. Tôi có thể làm tốt hơn không?
Juergen

Có vẻ tốt hơn, tôi bỏ phiếu để mở lại, nhưng được thông báo rằng nó mất nhiều hơn chỉ là phiếu bầu của tôi.
Anthon

Câu trả lời:



0

Grub xuất hiện để hỗ trợ xác minh chữ ký bằng cách sử dụng chữ ký tách rời. Tôi nghi ngờ đó là câu trả lời của bạn.


Điều này không cung cấp một câu trả lời cho câu hỏi. Để phê bình hoặc yêu cầu làm rõ từ một tác giả, hãy để lại nhận xét bên dưới bài đăng của họ. - Từ đánh giá
Archemar

Trên thực tế, nó làm. Câu hỏi ban đầu là: "Vậy làm cách nào tôi có thể xác minh cấu hình initrd và grub, có thể sử dụng hàm băm sha256, trước khi sử dụng chúng để khởi động? Xác minh đó có thể xảy ra trong shim, trong grub hoặc trong một số công cụ khác mà tôi có thể sử dụng ngoài hoặc thay vì shim và / hoặc grub. " Câu trả lời là: "Grub xuất hiện để hỗ trợ xác minh chữ ký bằng cách sử dụng chữ ký tách rời." (Ngẫu nhiên: "... vì vậy bạn có thể ký tên initrd, tạo chữ ký tách rời và yêu cầu Grub xác minh nó.")
Justin King-Lacroix

@Justin King-Lacroix, cảm ơn bạn đã trả lời, nhưng tôi không thể tìm thấy chữ ký tách rời trong gnu.org/software/grub/manual/grub.html - đó có phải là một tính năng của một ngã ba grub không chính thức? Googling "hướng dẫn sử dụng chữ ký grub" không trả lại bất cứ điều gì cụ thể. Bạn có thể chỉ cho tôi tính năng đó được không?
Juergen

Thật không may, tôi không có tài liệu tham khảo thủ công; Tôi tìm thấy điều này thông qua các nguồn. Tìm kiếm hoạt động "xác minh".
Justin King-Lacroix
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.