AMD の脆弱性の CVE-2024-56161 が FIX:悪意のマイクロコード実行の恐れ

AMD fixes bug that lets hackers load malicious microcode patches

2025/02/05 BleepingComputer — ​AMD が発表したのは、重大度の高い脆弱性 CVE-2024-56161 に対処するための緩和策と、ファームウェア・アップデートのリリースである。この脆弱性は、AMD の CPU ROM マイクロコード・パッチ・ローダーの不適切な署名検証に起因し、パッチ未適用のデバイスへの悪意の CPU マイクロコードのロードに悪用される可能性があるという。この脆弱性の悪用に成功したローカル管理者権限を持つ攻撃者により、AMD Secure Encrypted Virtualization-Secure Nested Paging (SEV-SNP) で実行されている機密ゲストの、機密性と整合性が失われる可能性が生じる。

AMD の開発ドキュメントによると、SEV はゲストとハイパーバイザーを分離し、SEV-SNP はメモリ整合性保護を追加するという。それにより、データ・リプレイやメモリの再マッピングなどの、悪意のハイパーバイザー・ベースの攻撃を防ぎ、分離された実行環境が確立される。

現時点において AMD は、悪意のマイクロコードの実行をブロックするために、影響を受ける全てのプラットフォームにおいて、マイクロコードの更新を必要とさせる緩和策を提供している

一部のプラットフォームでは、SEV-SNP 認証のために SEV ファームウェアの更新も必要となるため、ユーザーはシステム BIOS を更新して再起動し、緩和策の認証を有効化する必要がある。

この緩和策が、正しくインストールされていることを確認するためには、マイクロコードのバージョンと、以下の表に記載されているバージョンとの一致を、確認する必要がある。

Code NameFamilyCPUID
NaplesAMD EPYC 7001 Series0x00800F12
RomeAMD EPYC 7002 Series0x00830F10
MilanAMD EPYC 7003 Series0x00A00F11
Milan-XAMD EPYC 7003 Series0x00A00F12
GenoaAMD EPYC 9004 Series0x00A10F11
Genoa-XAMD EPYC 9004 Series0x00A10F12
Bergamo/SienaAMD EPYC 9004 Series0x00AA0F02

Google Security Team は、「Zen 1 から Zen 4 の CPU で、悪意のマイクロコード・パッチを作成できることが実証された。この脆弱性は、マイクロコード更新の署名検証で、安全が確保されないハッシュ関数を、CPU が使用することに起因する。脆弱性 CVE-2024-56161 を悪用する攻撃者は、最新バージョンの AMD Secure Encrypted Virtualization (SEV-SNP) で保護されている機密コンピューティング・ワークロードおよび、Dynamic Root of Trust Measurement を侵害する可能性を得る」と述べている

この欠陥を発見し、AMD に報告したとされる Google のセキュリティ研究者は、任意のマイクロコード・パッチを作成する方法を示す、PoC エクスプロイトを公開している。それらの PoC は、AMD EPYC および AMD Ryzen 9 CPU でテスト済みとのことだ。

この PoC エクスプロイトでは、脆弱な AMD Zen プロセッサの RDRAND 命令は常に4を返し、Carry Flag (CF) はゼロに設定される。それが示すのは、戻り値が無効なことである。つめり、このエクスプロイトを使用して、正常に機能している機密コンピューティング・ワークロードの侵害が不可能なことが保証されている。

今週に、AMD が NTU (国立台湾大学) の Li-Chung Chiang から受けったレポートは、データ センター (第1世代〜第4世代の AMD EPYC) および、組み込み (AMD EPYC 3000/7002/7003/9004) プロセッサに影響を与える、Secure Encrypted Virtualization (SEV) に対するキャッシュ・ベースのサイド・チャネル攻撃の詳細を説明するものだ。

AMD が開発者たちに推奨するのは、プライム攻撃とプローブ攻撃のベスト・プラクティス (定数時間アルゴリズムなど) に従い、秘密に依存するデータを避け、Spectre 型攻撃に関するガイダンスを受け入れることである。

AMD の、マイクロコード実行の脆弱性 CVE-2024-56161 が FIX しました。PoC が提供されていますので、ご利用のチームは、十分に ご注意ください。よろしければ、AMD で検索も、ご利用ください。