Windows 8の新しいUEFIセキュアブートシステムは、特にデュアルブーターの間で、かなりの混乱を引き起こしました。 Windows8とLinuxでのデュアルブートに関する誤解を解き明かすために読んでください。
今日の質疑応答セッションは、コミュニティ主導のQ&AWebサイトのグループであるStackExchangeの下位区分であるSuperUserの好意で行われます。
質問
スーパーユーザーの読者であるHarshaKは、新しいUEFIシステムに興味を持っています。彼は書く:
MicrosoftがWindows8にUEFIセキュアブートを実装する方法について多くのことを聞きました。明らかに、マルウェアを防ぐために、「不正な」ブートローダーがコンピューター上で実行されるのを防ぎます。フリーソフトウェアファウンデーションによるセキュアブートに反対するキャンペーンがあり、多くの人がオンラインで「無料のオペレーティングシステムを排除する」ことはマイクロソフトによる「パワーグラブ」だと言っています。
Windows8とセキュアブートがプリインストールされているコンピューターを入手した場合でも、後でLinux(またはその他のOS)をインストールできますか?または、セキュアブートを備えたコンピューターはWindowsでのみ動作しますか?
それで、取引は何ですか?デュアルブーターは本当に運が悪いのですか?
答え
スーパーユーザーの寄稿者であるNathanHinkleが、UEFIとは何かとそうでないものの素晴らしい概要を説明しています。
まず第一に、あなたの質問に対する簡単な答え:
- ARMタブレットをお持ちの場合 Windows RT(SurfaceRTやAsusVivo RTなど)を実行してから、 セキュアブートを無効にしたり、他のOSをインストールしたりすることはできません 。他の多くのARMタブレットと同様に、これらのデバイスは のみ 付属のOSを実行します。
- ARM以外のコンピューターを使用している場合 Windows 8(Surface Proや、x86-64プロセッサを搭載した無数のウルトラブック、デスクトップ、タブレットなど)を実行している場合 セキュアブートを完全に無効にすることができます 、または独自のキーをインストールして独自のブートローダーに署名することができます。どちらにしても、 LinuxディストリビューションのようなサードパーティのOSをインストールできます またはFreeBSDまたはDOSまたはあなたが喜ぶものなら何でも。
次に、このセキュアブート全体が実際にどのように機能するかについて詳しく説明します。特に、フリーソフトウェアファウンデーションや同様のグループから、セキュアブートに関する誤った情報がたくさんあります。これにより、セキュアブートが実際に何をするかについての情報を見つけるのが難しくなっているので、説明するために最善を尽くします。私はセキュアブートシステムなどの開発について個人的な経験がないことに注意してください。これは私がオンラインで読んだことから学んだことです。
まず第一に、 セキュアブートは ない マイクロソフトが思いついたもの。 彼らはそれを広く実装した最初の人ですが、彼らはそれを発明しませんでした。それは UEFI仕様の一部 、これは基本的に、おそらく慣れている古いBIOSの新しい代替品です。 UEFIは基本的に、OSとハードウェアの間で通信するソフトウェアです。 UEFI標準は、「 UEFIフォーラム 「これは、Microsoft、Apple、Intel、AMD、および少数のコンピューターメーカーを含むコンピューティング業界の代表者で構成されています。
2番目に重要なポイントは コンピュータでセキュアブートを有効にすると、 ない コンピュータが他のオペレーティングシステムを起動できないことを意味します 。実際、マイクロソフト独自のWindowsハードウェア認定要件では、ARM以外のシステムの場合、セキュアブートを無効にし、キーを変更できる必要があると規定されています(他のOSを許可するため)。それについては後で詳しく説明します。
セキュアブートは何をしますか?
基本的に、マルウェアがブートシーケンスを通じてコンピューターを攻撃するのを防ぎます。ブートローダーを介して侵入したマルウェアは、オペレーティングシステムの低レベルの機能に侵入し、ウイルス対策ソフトウェアから見えないようにする可能性があるため、検出と停止が非常に難しい場合があります。セキュアブートが実際に行うことは、ブートローダーが信頼できるソースからのものであり、改ざんされていないことを確認することだけです。 「蓋がポップアップしたり、シールが改ざんされたりした場合は開かないでください」と書かれたボトルのポップアップキャップのように考えてください。
![]()
保護の最上位には、プラットフォームキー(PK)があります。どのシステムにもPKは1つしかなく、製造時にOEMによってインストールされます。このキーは、KEKデータベースを保護するために使用されます。 KEKデータベースは、他のセキュアブートデータベースを変更するために使用されるキー交換キーを保持します。複数のKEKが存在する可能性があります。次に、3番目のレベルがあります。許可されたデータベース(db)と禁止されたデータベース(dbx)です。これらには、認証局、追加の暗号化キー、および許可またはブロックするUEFIデバイスイメージに関する情報がそれぞれ含まれています。ブートローダーの実行を許可するには、次のようなキーで暗号化された署名が必要です。 です データベース内、および ではありません dbxで。
![]()
からの画像 Windows 8の構築:UEFIによるOS以前の環境の保護
これが実際のWindows8認定システムでどのように機能するか
OEMは独自のPKを生成し、MicrosoftはOEMがKEKデータベースにプリロードする必要があるKEKを提供します。次に、マイクロソフトはWindows 8ブートローダーに署名し、KEKを使用してこの署名を承認済みデータベースに配置します。 UEFIはコンピューターを起動するときに、PKを検証し、MicrosoftのKEKを検証してから、ブートローダーを検証します。すべてが良好に見える場合、OSは起動できます。
![]()
からの画像 Windows 8の構築:UEFIによるOS以前の環境の保護LinuxのようなサードパーティのOSはどこにありますか?
まず、Linuxディストリビューションは、KEKを生成し、OEMにデフォルトでKEKデータベースに含めるように依頼することができます。そうすれば、Microsoftと同じように、ブートプロセスをあらゆる点で制御できるようになります。これに関する問題は、 FedoraのMatthewGarrettによる説明 、a)すべてのPCメーカーにFedoraのキーを含めることは困難であり、b)他のLinuxディストリビューションにはキーが含まれないため、小規模なディストリビューションにはOEMが少ないため、不公平になります。パートナーシップ。
Fedoraが選択したこと(および他のディストリビューションがそれに続いていること)は、Microsoftの署名サービスを使用することです。このシナリオでは、Verisign(Microsoftが使用する認証局)に99ドルを支払う必要があり、開発者はMicrosoftのKEKを使用してブートローダーに署名することができます。 MicrosoftのKEKはすでにほとんどのコンピューターに搭載されているため、これにより、独自のKEKを必要とせずに、ブートローダーに署名してセキュアブートを使用できるようになります。最終的には、より多くのコンピューターとの互換性が高まり、独自の鍵署名および配布システムをセットアップするよりも全体的なコストが低くなります。これがどのように機能するか(GRUB、署名されたカーネルモジュール、およびその他の技術情報を使用)の詳細については、前述のブログ投稿を参照してください。この種のことに興味がある場合は、この記事を読むことをお勧めします。
Microsoftのシステムにサインアップする煩わしさを処理したくない、99ドルを支払いたくない、またはMで始まる大企業に恨みを持っているとしましょう。引き続きセキュアブートを使用する別のオプションがあります。 Windows以外のOSを実行します。 Microsoftのハードウェア認定 が必要 OEMは、ユーザーがシステムをUEFI「カスタム」モードに入ることができるようにします。このモードでは、セキュアブートデータベースとPKを手動で変更できます。システムをUEFIセットアップモードにすることができます。このモードでは、ユーザーが独自のPKを指定し、ブートローダーに署名することもできます。
さらに、Microsoft独自の認定要件により、OEMは非ARMシステムでセキュアブートを無効にする方法を含めることが義務付けられています。 セキュアブートをオフにすることができます! セキュアブートを無効にできない唯一のシステムは、Windows RTを実行しているARMシステムです。これは、カスタムOSをロードできないiPadと同様に機能します。 ARMデバイスのOSを変更できることを願っていますが、Microsoftはここでタブレットに関して業界標準に従っていると言っても過言ではありません。
それで、安全なブートは本質的に悪ではありませんか?
ご覧のとおり、セキュアブートは悪ではなく、Windowsでの使用のみに制限されているわけではありません。 FSFやその他の企業がこれに非常に腹を立てている理由は、サードパーティのオペレーティングシステムの使用に追加の手順が追加されるためです。 Linuxディストリビューションは、Microsoftのキーを使用するためにお金を払うことを好まないかもしれませんが、Linuxでセキュアブートを機能させるための最も簡単で費用効果の高い方法です。幸い、セキュアブートをオフにするのは簡単で、さまざまなキーを追加できるため、Microsoftに対処する必要がありません。
ますます高度なマルウェアの量を考えると、セキュアブートは合理的なアイデアのようです。これは、世界を支配するための邪悪な計画を意味するものではなく、一部のフリーソフトウェア専門家が信じるよりもはるかに怖いものではありません。
![]()
追加の読み物:
- マイクロソフトハードウェア認定要件
- Windows 8の構築:UEFIによるOS以前の環境の保護
- セキュアブートの展開とキー管理に関するマイクロソフトのプレゼンテーション
- FedoraでのUEFIセキュアブートの実装
- TechNetセキュアブートの概要
- UEFIに関するウィキペディアの記事
TL; DR: セキュアブートは、マルウェアがブート中に検出できない低いレベルでシステムに感染するのを防ぎます。誰でもそれを機能させるために必要なキーを作成できますが、コンピュータメーカーに配布するよう説得するのは困難です きみの 全員に鍵をかけるので、代わりにVerisignに支払うことを選択して、Microsoftの鍵を使用してブートローダーに署名し、それらを機能させることができます。 セキュアブートを無効にすることもできます どれか 非ARMコンピューター。
セキュアブートに対するFSFのキャンペーンに関する最後の考え:彼らの懸念のいくつか(つまり、それが もっと強く 無料のオペレーティングシステムをインストールする)は有効です ポイントに 。ただし、上記の理由により、制限によって「Windows以外のユーザーが起動できない」と言うのは明らかに誤りです。テクノロジーとしてのUEFI / Secure Bootに対するキャンペーンは、近視眼的で、誤った情報に基づいており、とにかく効果的である可能性は低いです。製造元が、ユーザーがセキュアブートを無効にしたり、必要に応じてキーを変更したりできるようにするためのMicrosoftの要件に実際に従うようにすることがより重要です。
説明に追加するものがありますか?コメントで音を立ててください。他の技術に精通したStackExchangeユーザーからの回答をもっと読みたいですか? ここで完全なディスカッションスレッドをチェックしてください 。