AMDは、Zen 1からZen 4アーキテクチャを採用したEPYCプロセッサに存在するマイクロコードの脆弱性(CVE-2024-56161)を修正したと発表した。この脆弱性は、Googleのセキュリティチームが2024年9月25日に報告し、同年12月17日に修正が完了した。公開は2025年2月3日まで延期され、ユーザーが修正を適用する猶予が設けられた。

問題の原因は、マイクロコード更新時の署名検証に不適切なハッシュ関数が使用されていたことで、攻撃者が悪意のあるマイクロコードをロードし、Secure Encrypted Virtualization(SEV)による仮想マシンの保護が失われる可能性があった。

影響を受けるプロセッサは、EPYC 7001(Naples)、7002(Rome)、7003(MilanおよびMilan-X)、9004(Genoa、Genoa-X、Bergamo/Siena)シリーズである。AMDは、該当するプロセッサ向けのマイクロコードアップデートをリリースしており、適切なアップデートツール(BIOSアップデートなど)を使用することで問題を修正できる。

一部のプラットフォームでは、SEV-SNPの認証を適切にサポートするために、SEVファームウェアのアップデートが必要になる可能性がある。

AMDのマイクロコード脆弱性、なぜここまで深刻だったのか

今回の脆弱性(CVE-2024-56161)は、AMDのZen 1からZen 4世代のEPYCプロセッサに影響を及ぼすが、特に問題となったのは、Secure Encrypted Virtualization(SEV)を採用する環境におけるリスクの高さである。SEVは、仮想マシンごとにメモリを暗号化し、ホストOSやハイパーバイザーの影響を受けにくくする技術だ。

しかし、今回の脆弱性では、攻撃者が悪意のあるマイクロコードをロードできる状態になり、SEVの保護を無効化できる可能性があった。本来、マイクロコードのアップデートには強固なセキュリティ機構が求められるが、今回の問題では署名検証に使われるハッシュ関数が適切でなく、悪意のあるコードを正規のものと誤認するリスクがあった。

特に、データセンターなどで使用されるEPYCプロセッサでは、大量の仮想マシンが稼働しているため、一度攻撃が成功すると影響範囲は非常に広くなる。これにより、クラウド事業者や企業のITインフラに対し、潜在的なセキュリティリスクが生じていた。

しかし、AMDはすでにパッチを提供し、BIOSの更新などで修正が可能となっている。ただし、一部の環境ではSEV-SNPの認証を強化するため、追加のファームウェアアップデートが必要となることも明らかになった。

AMDが対応を急いだ背景、クラウド環境への影響と対策

この脆弱性の深刻さを示すもう一つの要因は、Googleのセキュリティ研究チームによって発見された点にある。Googleは大規模なクラウドサービスを展開しており、AMDのEPYCプロセッサを採用している。もし、この脆弱性が攻撃者に発見されていれば、クラウド上の顧客データが侵害されるリスクがあった。

Googleは2024年9月にAMDへ問題を報告し、約2か月後の12月に修正が完了したが、AMDは広範な影響を考慮し、2025年2月まで公表を遅らせた。これにより、クラウド事業者や企業が先行して修正プログラムを適用できる期間を確保したと考えられる。

仮想化環境では、単一のハードウェア上で多数のユーザーがリソースを共有するため、セキュリティ上の問題が発生すると、多くのシステムへ影響が広がる。すでに主要なクラウド事業者は、AMDの修正を適用済みだが、企業が自社でEPYCプロセッサを運用している場合、BIOSアップデートを適用することが推奨される。

また、一部のシステムではSEV関連の機能を強化するため、追加のファームウェア更新が必要となる可能性があるため、今後の情報にも注意が必要だ。

AMDの対応は十分だったのか、セキュリティ課題は今後も続くのか

AMDは、脆弱性の報告を受けてから迅速に修正を行い、公開までの期間を調整することで影響を最小限に抑えた。しかし、今回の問題は、そもそもマイクロコードのセキュリティ検証における課題を浮き彫りにしたとも言える。近年、CPUのセキュリティ脆弱性は増加傾向にあり、SpectreやMeltdownのような問題が過去にも発生している。

マイクロコードの脆弱性は、OSやソフトウェアレベルのパッチとは異なり、BIOSやファームウェアの更新が必要となるため、一般ユーザーの適用率が低い傾向がある。特にサーバー環境では、稼働中のシステムを再起動する必要がある場合もあり、適用が遅れるリスクがある。

この問題を踏まえ、AMDや他の半導体メーカーは、今後さらに厳格なマイクロコード検証を求められるだろう。特に、ゼロトラストアーキテクチャの観点から、ファームウェアやハードウェアのセキュリティをより強固にする取り組みが必要になると考えられる。

クラウド事業者や企業ユーザーにとっても、最新のアップデートを適用するだけでなく、ハードウェアのセキュリティリスクを常に監視し続けることが重要となる。

Source:Tom’s Hardware