web-dev-qa-db-ja.com

インテル/ AMDマイクロコードの問題はどのように提供されますか?それらをブロックすることは可能ですか?

この記事 を読んだ後、私はIntelまたはAMDからのプロセッサマイクロコードの更新が正確にどのように発行されるのかについて本当に興味があります。データはどのように送信されますか?本質的なコンピュータセキュリティの欠陥を回避するために プーチンのタイプライターへの切り替え について偏執的だった場合、これらの更新を「ファイアウォール」にする可能性はありますか? Linuxを使用している場合、Windowsの更新プログラムを受け取っていないので安全ですか?誰かが自分のコンピュータからインテルまたは攻撃者のサーバーへの接続に気づくと思います。

私が読んだことから、セキュリティコミュニティに関するコンセンサスは、これらの攻撃はあまり実行可能ではないということです。しかし、これらの更新がどのように発行され、どのタイプの伝送プロトコルが使用されているのかについては、私はまだ興味があります。これを可能にするには、バックドアがオペレーティングシステムではなくプロセッサ自体に存在するかどうかに関係なく、コンピューターが適切に構成されたファイアウォールを通過するように接続を要求する必要があります。

非常に偏執的だった場合、これらの更新を完全にブロックすることは可能ですか?

9
Chev_603

質問に対する回答を1つずつ:

  1. マイクロコード更新ファイルはどのように公開されますか?

    • これらは、プロセッサメーカーによって発行された、シンプルでかなり小さいファイルです。
  2. それらはどのようにCPUにロードされますか?

    • プロセッサーには、起動時に使用する初期バージョンが付属しています。
    • プロセッサには、マイクロコードのアップロードを開始する一連の命令があります。
    • システムのBIOS/UEFIのバージョンが新しい可能性があります。これは、ブートローダーが制御を取得する前にプロセッサにロードされます。
    • オペレーティングシステムのバージョンがさらに新しい可能性があります。その場合、システムの起動時にプロセッサにロードされます。
  3. 新しいバージョンは通常どのようにコンピューターに転送されますか:

    • BIOSが更新された場合、新しいバージョンが含まれている可能性があります。
    • オペレーティングシステムは、システムアップデートを通じてマイクロコードアップデートを受信するように設定されている可能性があります。 (現在のすべてが可能)
    • IntelのNiceがマイクロコードの暗号化キーを提供した場合、変更されたバージョンを暗号化/署名し、ハードドライブに配置して、いくつかの指示に従ってロードできます。
    • 他の誰かがシステム/ root権限(例:ウイルス、トロイの木馬)でシステム上でプロセスを実行できる場合、彼らはあなたのために/それを行うことさえできます。
  4. 誰かが知らないうちにこのような更新を適用するにはどうすればよいですか?

    • 最近のBIOS/UEFI実装は、それ自体がオペレーティングシステム全体であり、すべての最新機能、ネットワーク、USB、グラフィックスなどをサポートしています。
    • ほとんどのネットワークカードは、独立したオペレーティングシステム全体を実行します。バグはありますが、これらのファームウェアにはすべて、リモート通信プロトコルが(部分的に)文書化されています。
    • NICのバグを悪用したり、magic_key/protocolを使用したりすると、正しく署名されたマイクロコードアップデートがCPUに送信される可能性があります。
  5. このタイプの攻撃はどの程度実行可能ですか?

    • キーホルダーに対する権限を持つ誰かにとって:とても簡単です。
    • 精通した隣人の子供のために:不可能
5
Alex Stragies

はい、それらを回避することは絶対に可能です。そして、強制はありません。また、ロールバックできないはずの特定の方法もありません。

アップデートには、新しいBIOSが付属しているか、OSがロードします。後者の場合、LinuxまたはWindowsを使用していると想定できます。

最初の状況では、linux-firmware/intel-ucodeから読み込まれ、2番目の状況では、通常のWindows Updateを介して読み込まれます。そのため、自由にインストール/アンインストールできます。

本当に偏執的である場合は、システムで見つかったmcupdate_AuthenticAMD.dllおよびmcupdate_GenuineIntel.dllのインスタンスを削除してください。

2
mirh