59
AMD Zenbleed脆弱性修正テスト:一部のアプリが15%低下、ゲームには影響なし
Ryzenダイ
(画像提供:Fritchenz Fritz)

Googleのセキュリティ研究者が先日、AMDのZen 2プロセッサを通過する際に暗号化キーやユーザーログイン情報といった最も機密性の高い情報が漏洩する、驚くべき新たなZenbleed脆弱性を発見しました。これにより、攻撃者はデータを盗み出し、システム全体を侵害することが可能になります。私たちはこの問題に対処できる回避策を発見しました。この修正は再起動すると無効になりますが、AMDが近日中にリリースする修正プログラムを適用した場合のパフォーマンスへの影響を検証するための一連のテストを実行することができました。 

弊社のテストでは、エンコーダーやレンダラーなどの一部のワークロードでは最大約15%のパフォーマンス低下が発生する可能性があることが明らかになりました。一方、他の種類のデスクトップPCアプリケーションでは、パッチ適用後にパフォーマンスへの影響は見られないか、わずかに向上する場合もあります。ただし、ゲームのみを目的とした方は、弊社のテストではいくつかのタイトルで重大なパフォーマンスの低下は見られなかったため、ご安心ください。

私のノートパソコンでも再現できます。#zenbleed https://t.co/J9LGmIIWhF pic.twitter.com/i5UH9NCzdZ 2023年7月25日

上記のツイートを展開すると、Zenbleedエクスプロイトが実際に動作している様子が確認できます。ZenbleedはCPUの投機的実行エンジンを利用して機密データを窃取しますが、MeltdownやSpectreのような脆弱性で見られるようなエンジンへの直接的な攻撃ではありません。Zenbleedの「use-after-free(解放後使用)」攻撃は、ベクター命令(vzeroupper)の分岐ミスによってレジスタが「解放」された後のAMDの誤った回復動作を悪用し、データの傍受を可能にします(詳細な説明はこちら)。 

AMDはこの脆弱性について簡潔に説明し、「特定のマイクロアーキテクチャ環境下では、『Zen 2』CPUのレジスタに正しく0が書き込まれない可能性があります。これにより、別のプロセスやスレッドのデータがYMMレジスタに保存され、攻撃者が機密情報にアクセスできるようになる可能性があります」と述べています。

Zenbleed の脆弱性は、ここ数年間に発見されたチップの欠陥の長いリストに加わることになります。このリストには、Zen 3 および 4 アーキテクチャに悪影響を及ぼし、一部のデータ センターのワークロードで大幅なパフォーマンス低下を引き起こす可能性がある AMD Inception の脆弱性 (PC でテストするためのパッチを待機中) や、Skylake から Rocket Lake 世代にわたるチップに影響を及ぼし、一部のワークロードで最大 39% のパフォーマンス低下を引き起こす可能性がある Intel の GDS / Downfall の脆弱性など、最近追加された脆弱性も含まれます。 

Tom's Hardware の最高のニュースと詳細なレビューをあなたの受信箱に直接お届けします。

弊社では、Downfall および Inception の脆弱性の影響を近々テストする予定です。これらのパッチは、間違いなく CPU ベンチマーク階層に影響しますが、その間の Zenbleed テストは次のとおりです。 

Zenbleedパッチを有効にする方法

画像

1

2

ゼンブリード
(画像提供:Tom's Hardware)

Zenbleedパッチは、AMDの今後のファームウェアパッチで使用されるハードウェアベースの方法ではなく、ソフトウェアトリガー方式で有効化しました。そのため、このパッチ適用方法はマイクロコードアップデートほど効率的ではない可能性があります。テストで確認されたわずかなパフォーマンス低下は、マイクロコードパッチで軽減できる可能性はありますが、確実ではありません。しかし、AMDのパッチは、私たちがテストで狙っているのと同じ「チキンビット」を引き起こす可能性が高いでしょう。

AMDは、これがシステムパッチの有効な手段であることを確認していますが、一時的な修正です。このパッチは再起動後は適用されないため、システムは保護されていない状態に戻ります。もちろん、一般ユーザーにとっては耐えられないものですが、パッチの影響を評価するためのテストを実施することができました。当然のことながら、ファームウェアの修正は再起動後にも有効です。

RWEverythingを使用してMSRパラメータを設定することで、このバグを修正しました。RWEverythingは、様々な分野のエンジニアがシステムの最下層を制御するために広く使用されている無料ツールです。皮肉なことに、このパッチを使用するには、パフォーマンスの低下につながる可能性のある物議を醸すセキュリティ機能であるメモリ整合性(HVCI)と、Microsoftの脆弱なドライバーブロックリストを無効にする必要があります。つまり、この回避策は1つの脆弱性を修正する一方で、他の潜在的な攻撃への扉を開くことになるため、注意して使用してください。 

次のステップは、プログラム内でMSRアイコンを選択し、「ユーザーリスト」アイコンをクリックして、「name」=0xC0011029のレジスタを作成することです。レジスタの名前は自由に設定できます(ここでは「Zen 2」としました)。次に、ビット9を「1」に変更して「完了」をクリックすると、Zenbleedの脆弱性を悪用しようとする攻撃者からシステムが保護されます。

Zenbleed攻撃はコアあたり30KB/秒の速度でデータを窃取するため、実際にはコア数の多いチップの方が高速に動作します。そこで、コア数の異なる2種類のZen 2搭載プロセッサをテストしました。16コア32スレッドのRyzen 9 3950Xは高コア数モデル、Ryzen 5 3600はより主流の6コア12スレッドチップです。両チップは、Windows 11のフルアップデート版、Corsair H150iクーラー、32GB DDR4-3200メモリを搭載したMSI MEG X570 Godlikeマザーボードでテストしました。 

AMD Zenbleed ゲーミングパフォーマンスへの影響

画像

1

7

ゼンブリード
(画像提供:Tom's Hardware)

ゲーマーにとって朗報です。Zenbleedパッチは、1080p平均フレームレートと99パーセンタイルフレームレートにおいて、目立ったオーバーヘッドをほとんど、あるいは全く感じさせません。平均fpsと99パーセンタイルfpsの累積測定では、1%未満の変動を記録しました。つまり、2つの設定間の差異は、ベンチマークにおける実行ごとの変動の想定範囲内に収まるということです。

5つのタイトルをテストし、有意な違いがないか確認しました。その結果、1080pゲームでは、パッチ適用済みと未適用の構成は全体的にほぼ同一で、『ウォッチドッグス レギオン』、 『サイバーパンク2077』『ファークライ6』『ヒットマン3』『ウォーハンマー3』はいずれもテストで同等のパフォーマンスを示しました。もちろん、ゲームによっては影響の度合いが異なる場合もありますが、今回のテスト結果から、影響は目立たない可能性が高いことが示唆されています。 

AMD Zenbleed 生産性アプリケーションのパフォーマンスへの影響

画像

1

18

ゼンブリード
(画像提供:Tom's Hardware)

一部の生産性アプリケーションでは、いくつかの顕著なパフォーマンスの違いが見られますが、シングルスレッドとマルチスレッドの累積パフォーマンススライドには、それらの違いは明確に表れていません。これらのスライドは、シングルスレッドとマルチスレッドを問わず、各ワークロードタイプにおける最も重要なベンチマークの幾何平均で構成されています。私たちはこれらの指標を一般的な指標として使用していますが、この指標はテストスイートのすべてのワークロードを網羅しているわけではなく、他のベンチマークでも大きな影響が見られます。次のセクションで説明します。

全体的な測定ではわずかな違いが見られ、Ryzen 9 3950X のマルチスレッド パフォーマンスでは約 1% の差があり、Ryzen 5 3600 では 2.2% の変動がありましたが、この一連のテストには例外があります。

HandBrakeは、x265トランスコードにおいて両チップで約5%の顕著なパフォーマンス低下を示しました。一方、x264コーデックを使用した場合、パッチ適用済み構成と未適用構成で10%の差が生じました。比較的短時間のテストでは、完了時間の差はわずかに見えるかもしれませんが、長時間のジョブでは、タスクの完了に顕著な追加時間が生じる可能性があります。

シングルスレッド性能に非常に敏感なオーディオエンコーダーであるLAMEは、パッチ適用済みの両チップで約2.5%遅くなっています。しかし、レイトレーシングレンダラーのPOV-Rayなどの一部のベンチマークでは、わずかなパフォーマンスの向上が見られ、パッチ適用済みのRyzen 9 3950Xはパッチ未適用構成に対して3.7%のリードを獲得しました。

パッチ適用済みのRyzen 5 3600構成では、マルチスレッドCinebenchでさらに大きなパフォーマンス向上が見られ、5.7%の向上が見られました。一方、パッチ適用済みの両構成は、シングルスレッドCinebenchベンチマークではわずかに速度が低下しました。これは、コードの種類によってパッチへの反応が異なる一方で、並列処理によってもパフォーマンスにばらつきが生じる可能性があることを示唆しています。 

画像

1

8

ゼンブリード
(画像提供:Tom's Hardware)

Zenbleed ソフトウェア パッチによるパフォーマンスへの影響が最も大きい傾向があるその他のワークロードを以下に示します。

Ryzen 9 3950Xでは、FLACエンコーダーに7~9%の影響があり、SVT-HEVCエンコードジョブでは16%の速度低下が見られました。前のセクションで示したHandBrakeの結果と合わせると、エンコーダーはパッチの影響を最も受けた生産性向上アプリケーションの1つであることがわかります。

マルチスレッドのLuxMark OpenCL C++レンダラーは、古いベンチマークではありますが、パッチによるパフォーマンスへの影響が顕著であることが明らかになりました。パッチ未適用のRyzen 9 3950Xはパッチ適用済み構成よりも5%高速化しましたが、Ryzen 5 3600はパッチ適用後に10%遅くなりました。繰り返しになりますが、これはコードの種類やZen 2プロセッサによってパッチへの反応が異なる可能性があることを浮き彫りにしています。

また、C-Ray レイ トレーシング レンダラーではパッチを適用した構成の両方でパフォーマンスが 16% 低下し、NAMD シミュレーション コード ワークロードではパッチを適用した構成とパッチを適用していない構成の間で 9% の差が生じるなど、他のワークロードにも影響が見られます。 

CPU-Zのシングルスレッドおよびマルチスレッドベンチマークでは、両チップで約7%の差を記録しましたが、この広く引用されているベンチマークは、特定のワークロードの適切な代替指標とは言えません。むしろ、相対的なパフォーマンスを定量化するのに役立つ、純粋に合成的なベンチマークです。このベンチマークは実際のワークロードと直接相関するものではありませんが、パッチが合成ベンチマークソフトウェアにも影響を与える可能性があることを示しています。 

まとめ

AMDのZen 2は、同社のIntelに対する歴史的な逆転劇を確固たるものにしましたが、AMDとIntel両社のチップで繰り返し見てきたように、研究者たちはチップの全盛期を過ぎてもなお、弱点の兆候を探し求めてチップアーキテクチャを詮索し続けています。チップセキュリティをめぐるいたちごっこが続く中、両チップメーカーは狡猾な研究者と悪意あるアクターの両方の餌食となり、結果として生じたパッチは、長年にわたりパフォーマンスのロールバックを繰り返すことになり、実質的に世代を超えたパフォーマンスの進歩を帳消しにしてしまう可能性があります。

幸いなことに、Zenbleedパッチはゲームには影響がなく、ほとんどのアプリケーションでもパフォーマンスに大きな影響は見られません。ただし、一部のワークロードは影響を受けており、AVX命令を使用するエンコーダーでは5%から15%のパフォーマンス低下が見られました。また、他の種類のソフトウェアにも影響が見られ、C-Rayレイトレーシングレンダラーでは16%、NAMDシミュレーションコードワークロードでは9%、CPU-Zでは7%のパフォーマンス低下が見られました。 

エンコーダや一部のアプリケーションへの影響を除けば、Zenbleedソフトウェアパッチによるパフォーマンスへの影響は、MeltdownやSpectreといった他の脆弱性で見られたような大幅なパフォーマンス低下に比べれば軽微です。とはいえ、既に購入した製品のパフォーマンスを犠牲にしたくないと思う人は少なくありませんし、ソフトウェアパッチは特定の作業においてパフォーマンスの低下をもたらします。 

はい、脆弱性を感じていない場合は、システムにパッチを適用しないという選択肢もありますが、その場合、チップの将来のBIOSアップデートを諦めることになります。さらに、POCコードが広く入手可能なことを考えると、攻撃者はいずれこれらの攻撃をマルウェアに組み込む可能性が高いでしょう。 

パッチが今年後半までリリースされないのも、確かに状況を悪化させています。さらに、ODMがこれらのBIOSバージョンを顧客に提供できるようになるまでには時間がかかり、チップが脆弱な状態が続く期間が長引くことになります。しかも、これはマザーボードベンダーが特定のチップアーキテクチャをサポートするすべてのマザーボードにパッチをリリースすると仮定した場合です。 

Zenbleedの影響は限定的ですが、最近公表されたAMD InceptionおよびIntel GDS/Downfallの脆弱性に対するデスクトップPC向けの完全版パッチもまだ提供されており、これらの緩和策もパフォーマンスに影響を与える可能性があります。これらのパッチもテスト中です。今後の展開にご期待ください。 

ポール・アルコーンはTom's Hardware USの編集長です。CPU、ストレージ、エンタープライズハードウェアに関するニュースやレビューも執筆しています。