セキュアブートを使用してinitrdとgrub.cfgを保護するにはどうすればよいですか?


8

ubuntuインストールをセキュアブートするために、shimとgrub2でデフォルトのubuntuアプローチを使用し、独自のプラットフォームキー(sbsignを使用した自己署名shim)と暗号化されたルートパーティションを組み合わせています。ただし、これはgrubx64.efiとカーネルのみを検証しますが、暗号化されていないブートパーティション上のinitrd.imgおよびgrub.cfgファイルを悪意のある変更から保護しません。

では、ブートに使用する前に、おそらくsha256ハッシュを使用して、initrdとgrubの構成を確認するにはどうすればよいですか?その検証は、shim、grub、またはshimやgrubに加えて、またはその代わりに使用する他のツールで発生する可能性があります。

この質問の目的は、変更された環境(カーネルコマンドラインとinitrd)でカーネルを実行して、ルートパーティションの暗号化パスワードがどこかに漏洩するのを防ぐことです。

UbuntuとLinux FoundationのPreLoader.efiを含むセキュアブートに関するWebチュートリアル/ブログを数日間読んだにもかかわらず、ブート構成を検証する方法は見つかりませんでした。これらはすべて、カーネルモジュールを含む実行可能ファイルの検証がどのように機能するかを説明していますが、どれもこれはgrub.cfgと(内部のシェルスクリプトと構成ファイル)initrdについて言及しているため、起動プロセスで非バイナリの検証を要求するのは私が初めてのようです。私が見つけた最高の情報源は、ロッド・スミスの情報源です。

私がまだ試していないのは、shimやgrubのソースコードを変更したり、フォークを作成したり、それらに直接貢献することです。それが唯一の方法でしょうか?


あなたのクロスポストは昨日からのものであり、もう少し忍耐が適切であり、クロスポストは確かに適切ではありません(ただし、下向き矢印の上にダウン投票の理由が表示される場合:調査努力なし/不明確/役に立たない)
Anthon

@Anthon、この質問をするのに適切な場所はどこだと思いますか?わからないので、ここはスーパーユーザーより良い場所だと思いました。そして、私は前の質問とこの質問を削除して、適切な場所に尋ねる前に、クロスクロスによる反対投票を防ぐために削除すべきだと思いますか?
Juergen、2016

ヘルプを読めばわかるように、クロスポストは決して問題ありません。このサイトでは、(ご承知のとおり)閉鎖の理由であり、ある程度の忍耐が必要です。また、これはQ&Aサイトであり、個人的な、またはインスタントのヘルプサイトではありません。特に週末に数日待つのが適切でしょう。また、何を試して何がうまくいかなかったのかについて、もう少し詳しく説明してもかまいません。これをここで再度開きたい場合は、スーパーユーザーのQを削除し、(投稿を編集して)ここでそれを明確に示してください。そうすると、キューが再び開かれるようになります。
Anthon 2016

@Anthon、コメントありがとうございます。SuperUserに関する質問を削除し、質問をここでより詳細に説明しました。もっと上手にできる?
Juergen、2016

見栄えが良い、私は再開するために投票したが、それは私の投票よりも多くかかることに注意してください。
Anthon 2016

回答:



0

Grubは分離された署名を使用した署名検証をサポートしているようです。それがあなたの答えだと思います。


これは質問に対する答えを提供しません。批評したり、著者に説明を要求するには、投稿の下にコメントを残してください。- レビューから
Archemar

実際にはそうです。元の質問は、「起動に使用する前に、init256とgrubの構成を確認し、おそらくsha256ハッシュを使用して確認できますか?この確認は、shim、grub、または私が使用する他のツールで発生する可能性があります。またはシムやグラブの代わりに」その答えは、「Grubは分離された署名を使用した署名検証をサポートしているようです」です。(暗黙的に:「... initrdに署名し、分離された署名を生成して、Grubにそれを検証させることができます。」
Justin King-Lacroix

@Justin King-Lacroix、回答ありがとうございます。gnu.org/ software / grub / manual / grub.htmlで分離された署名を見つけることができません-これは非公式のgrubフォークの機能ですか?グーグルで「切り離された署名grubマニュアル」を実行しても、具体的な内容は返されませんでした。その機能を教えていただけますか?
Juergen、2016年

残念ながら、私はマニュアルのリファレンスを持っていません。私はこれをソースから探しました。「確認」操作を探します。
ジャスティンキングラクロワ2016年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.