カーネルに低レベルでセキュアブートを処理させたいという懸念の一部は、Microsoftのキーがシステムをハッキングするために使用される可能性があるためです。その場合、Microsoftがキーを無効にし、LinuxPCを実行させることを恐れます。そのキーで(そして誰もそれを望んでいません)。
それはすべて、Microsoftが署名したバイナリキーをセキュアブートモードで実行されているカーネルに動的にロードできるようにする、DavidHowellsからのプルリクエストから始まりました。 毛布を持っている人は、それはでたらめであり、X.509パーサーを改善する方がよいと考えました。 Matthew Garrettは、署名機関はXNUMXつだけであり、PEバイナリ(ポータブル実行可能ファイル)にのみ署名すると回答しています。 そしてここでライナスは彼の鋭い舌を手放し、言います:
みんな、これはコックしゃぶりコンテストではありません。 PEバイナリを解析する場合は、先に進んでください。 RedHatがあなたに質問したい場合 garganta profunda マイクロソフトにとって、それは*あなたの*問題です。 それは私が維持しているカーネルとは何の関係もありません。 PEバイナリを解析し、署名を検証し、結果のキーに独自のキーで署名する署名マシンを用意するのは簡単です。 彼らはすでにコードを書いています、神によって、それはそのひどい順序です。 なぜ私は気にする必要がありますか? なぜカーネルは「PEバイナリにのみ署名する」のようなたわごとを与える必要がありますか? 署名の標準であるX.509をサポートしています。 信頼できるマシンでユーザー側で実行してください。 カーネルでそれを行う言い訳はありません。
マシューは答えます:
売り手は、信頼できる第三者機関によって署名された鍵を持参したいと考えています。 現在、測定するのはMicrosoftだけです。なぜなら、ベンダーがくだらないファームウェアよりも気に入っているのは、Microsoftの仕様に従っていることだけだからです。 これに相当するのは、Red Hat(またはその他)がプログラムでこれらのキーに再署名するだけでなく、アップストリームカーネルによって信頼できるキーを使用してこれらのキーに再署名することです。 信頼できる社会のメンバーが再署名サービスをホストしている場合、デフォルトで信頼できるキーを持ち歩きますか? それとも、外部モジュールをリリースしたい人はばかであり、惨めなことに値すると思いますか?
ライナスは、誰もが気にかけているのではないかと疑っていると答えます。 Microsoftキーでカーネルモジュールに署名するのはすでに愚かです。 また、RedHatはNVIDIAおよびAMDバイナリモジュールに署名します。 Peter Jonesは、RedHatは別のモジュールによって構築されたモジュールに署名しないと言っています。 ギャレット氏は、RHELは最終的にNVIDIAとAMDのキーに依存することになり、Microsoftの署名サービスに基づく可能性が非常に高いと付け加えています。
そして、これは私が一時停止して、技術的な詳細に立ち入りたくない人のために部分的で残忍なものを要約するところです:
セキュアブートに関するすべての開発はおかしくなりましたが、ハードウェアベンダー(少なくとも最大のもの)は依然としてMicrosoftをディープスロートしたいと考えているためです。
それで、ライナスは次の提案をすることに決めました、それで彼らはクソをやめます……:
脅迫でそれを切り落とす。
これは私が提案するものであり、それに基づいています 真の安全性 と ユーザーを最優先する 彼の「がらくたをしてマイクロソフトを甘やかそう」というアプローチの代わりに。
したがって、Microsoftを喜ばせる代わりに、実際にセキュリティを追加する方法を見てみましょう。
-ディストリビューションは独自のモジュールに署名する必要があります そして何も デフォルト。 また、デフォルトで他のモジュールをまったくロードできないようにする必要があります。 そして、マイクロソフトの会社は他の何かと何の関係があるのでしょうか?
-他のサードパーティモジュールをロードする前に、 ユーザーに許可を求める。 コンソール上。 キーを使用せずに。 その何も。 キーが危険にさらされます。 ダメージを制限するようにしてください。ただし、さらに重要なのは、ユーザーが制御できるようにすることです。
-ホストごとのランダムキーなどをアニメーション化します- 必要に応じて愚かなUEFIチェックを無効にします。 彼らはほぼ間違いなくより安全になるので、大企業に基づくいくつかの狂った信頼の根に頼り、署名当局はクレジットカードを持っている人を信頼します。 それらのことを人々に教えてみてください。 独自の(ランダムな)キーを作成し、それらをUEFI設定に追加するように促し(またはそうではない:UEFIに関するすべてはセキュリティよりも制御に関するものです)、キーの秘密を破棄してXNUMX回限りの署名などを行うように努めます。 つまり、「ユーザーに大きな警告を明示的に要求し、その特定のモジュール用に独自のキーを作成するようにします」など、そのようなセキュリティをアニメートしてみてください。 「ユーザーを制御する」セキュリティではなく、真のセキュリティ。
確かに、ユーザーもそれを台無しにするつもりです。 彼らはNVIDIAバイナリモジュールとそのすべてのがらくたをロードしたいと思うでしょう。 しかし、それをしましょう SU 決定、および下 SU これがマイクロソフトによってどのように祝福されるべきかを世界に伝える代わりに、コントロール。
これはMSの祝福についてではなく、 カーネルモジュールを祝福するユーザー.
正直なところ、あなたはアンチキーフリークが恐れているものです。 あなたは「セキュリティではなくコントロール」のたわごとを売っています。 「MSがあなたのマシンを所有している」というのは、パスワードを使用する間違った方法です。
それ以来、スレッドは落ち着きました...そしてそれはフォローする価値がありません。
DesdeLinux の友達。今日、私は Linux ブログの編集者として 2 周年を祝います。ただし、ここでデビューしたのは Frannoe のブログでした。当時は Ubuntu Cosillas と呼ばれ、現在は LMDE Cosillas となっています。そして、私がこのファームウェアの物語の最初の章を書いた 3 月 XNUMX 日にそこにあり、その後ここで続きを書きました。私を読んでくれた人、読んでくれた人全員に感謝したいと思います。特に、私のために場所を作ってくれた Frannoe と Desdelinux のスタッフ全員に感謝します。高度関数型プログラミングのコースを受講していなければ、また、GHC で作業するために Linux を使用することを勧めてくれた同僚がいなかったら、私は今でも Linux に関するすべてのことを気に留めていなかったでしょう。
私はこの文で終わります:「あなたがあなたの無知を叫ばなければ、誰もあなたを正すために出てこないでしょう、そしてそれ故にあなたは正しい間違っているでしょう」
カーネルメールリストからの関連する投稿:
https://lkml.org/lkml/2013/2/21/196
https://lkml.org/lkml/2013/2/21/228
https://lkml.org/lkml/2013/2/21/275
https://lkml.org/lkml/2013/2/25/487
