25
メルトダウンとスペクター攻撃を理解する:Intel、AMD、ARM、Nvidia

2日間にわたる目まぐるしい展開を経て、主要ベンダーのプロセッサに影響を与える新たな脆弱性について、ようやく全体像が明らかになりました。2日前に最初に報じられたのは、Intelのプロセッサが、マイクロコードの更新だけでは修正できない新たなハードウェアベースのバグの影響を受けるというものでした。The Registerのブログ記事に基づく記事によると、WindowsとLinux向けの今後のパッチでこの脆弱性は修正されるものの、ワークロードによっては5~30%のパフォーマンス低下が伴うとのことです。

業界は、一連のパッチが公開される予定日である1月9日にNDAの期限が切れるため、沈黙を守っていた。株価が下落する中、1日間沈黙した後、インテルは声明を発表し、この問題はハードウェアのバグではないと主張した。インテルはまた、AMDやARMホールディングスといった業界の大手企業と協力して、「この問題を迅速かつ建設的に解決するための業界全体のアプローチを構築」していると発表した。AMDはその後声明を発表し、主要な脆弱性の影響は最小限であると主張した。

パフォーマンス第一

詳細に入る前に、最近のテストでは、このパッチがほとんどのワークロードで劇的なパフォーマンス低下をもたらさないことが示されています。PhoronixはLinuxパッチを、Computerbase.deはパッチを適用したWindows Insiderビルドをテストしました。

良いニュースは?ほとんどのデスクトップアプリケーションは、Windows 10とLinuxの両方で安全に動作するようです。これには、ゲームや通常の生産性向上アプリケーションなど、主にユーザー空間に限定されるワークロードのほとんどが含まれます。ストレージI/O操作の速度低下(2~7%)が見られるようですが、現時点では、これがパッチによるものか、他のカーネルアップデートによるものかを判断するのは困難です。Windows 10のパッチは11月にWindows Insiderビルドに展開されており、パフォーマンスの問題は報告されていません。

悪いニュースは?このパッチは、一部のエンタープライズアプリケーションにパフォーマンスのオーバーヘッドをもたらすということです。Phoronixは、オブジェクトリレーショナルデータベースPostgreSQLで重大なパフォーマンス低下を記録しました。Redisもパフォーマンスの低下に見舞われています。多くの業界アナリストは、真の影響は仮想化環境で現れると考えていますが、ベンチマークはまだ確認されていません。Googleはすでにクラウドコンピューティングサービスを含むすべてのクラウドインフラストラクチャを更新しており、パフォーマンスの低下によるユーザーからの大きな反発はまだ聞いていません。

メルトダウンとスペクターに会う

GoogleのProject Zeroは、現在MeltdownとSpectreとして知られる2つのエクスプロイトを通じて、保護されたカーネルメモリに保存されているデータにアクセスできることを発見し、脆弱性に関する懸念を引き起こしました。Googleはこれらのエクスプロイトが実際に使用されたことはないと考えていますが、実際に使用されたかどうかを判断することは不可能です。

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

Meltdownは実行も修正も容易です。このエクスプロイトにより、アプリケーションは保護されたカーネルメモリからデータを読み取ることができます。これにより、ハッカーはメモリからパスワード、暗号鍵、その他のデータを読み取ることができます。Intelの声明では、このエクスプロイトはデータの破損、変更、削除はできないと明記されていますが、攻撃者がパスワードや暗号鍵にアクセスできる場合、これらの点は意味をなさなくなります。データセンターやクラウドサービスプロバイダーにとって最大の懸念は、このエクスプロイトによって、ある仮想マシンに常駐するアプリケーションが別のリモート仮想マシンのメモリにアクセスできるようになることです。つまり、攻撃者はパブリッククラウド上のインスタンスをレンタルし、同じサーバー上の他の仮想マシンから情報を収集できる可能性があるということです。

研究者たちは、Meltdownの脆弱性を悪用した攻撃をIntelプロセッサ上でのみ実行することに成功していますが、ARMは同様の攻撃手法から身を守るためのパッチを提出しています。実際、この攻撃は、1995年以降に製造されたすべてのIntelプロセッサに搭載されているIntelのアウトオブオーダー実行実装を悪用しています。研究者たちは昨年、Meltdownを発見しました。この脆弱性はスクリプトキディでも実行できるほど単純であると報告されているため、修正は極めて重要です。

AppleはすでにmacOSの12月のOSXパッチ(10.13.2)でこの脆弱性を修正しています。Windowsも緊急パッチを直ちにリリースしています。Linuxカーネルにもパッチが適用されています。前述の通り、これらのパッチはパフォーマンスに影響を与え、その影響は主にアプリケーションがカーネル呼び出しを発行する頻度に左右されます。 

Spectreエクスプロイトははるかに悪質で、Intel、AMD、ARMに影響を与えます。このエクスプロイトはカーネルメモリや他のアプリケーションのデータにアクセスできます。研究者たちは、このエクスプロイトを修正するには、すべてのプロセッサアーキテクチャの根本的な再構築が必要になると主張しているため、当面はこの脆弱性の脅威と共存することになります。幸いなことに、このエクスプロイトの実行は極めて困難であり、標的のプロセッサの内部動作に関する高度な知識が必要です。

これら2つのエクスプロイトは3つの亜種に分類されます。亜種1と2はSpectre、亜種3はMeltdownです。Intelはこれら3つすべてに対して脆弱です。

バリアント1: 境界チェックバイパス (CVE-2017-5753) バリアント2: 分岐ターゲットインジェクション (CVE-2017-5715) バリアント3: 不正なデータキャッシュロード (CVE-2017-5754)

露出レベル

私たちは AMD に連絡を取り、同社から以下の情報が返答され、その後公表されました。

最も注目すべきは、AMDがVariant 3(Meltdown)に対する脆弱性が全くないと主張していることです。現在Meltdown向けにリリースされているパッチは、「アーキテクチャの違い」により、AMDのプロセッサには適用されないと述べています。これはAMDにとって朗報です。パフォーマンスを低下させる可能性のある一連のパッチの影響を受けないためです。競争力のあるEPYCプロセッサ製品ラインを携えてデータセンター市場に再参入する同社にとって、これは非常に良い兆候と言えるでしょう。

RyzenデスクトッププロセッサもMeltdownの影響を受けません。Linus Torvalds氏は、AMDに対し、Meltdownに対するLinuxパッチによるパフォーマンスの低下を免除する措置も講じました。

AMDはSpectreエクスプロイトであるVariant 1に対して脆弱です。前述の通り、Spectreに対する有効なパッチがすぐにリリースされる可能性は低いと多くの人が主張しており、一部の研究者は、この脆弱性は現存するすべての最新プロセッサアーキテクチャに存在すると主張しています。また、これらの問題を修正するには、プロセッサの基本的なアーキテクチャの再設計が必要になる可能性があるとも主張しています。AMDは、パフォーマンスへの影響を最小限に抑えながらVariant 1の影響を軽減できるパッチを用意しており、さらに、同じくSpectreエクスプロイトであるVariant 2による悪用リスクは「ほぼゼロ」であると述べています。

Nvidia もこの脆弱性に関して声明を発表しました。

NVIDIAのコア事業はGPUコンピューティングです。NVIDIAのGPUハードウェアは報告されたセキュリティ問題の影響を受けないと考えており、CPUセキュリティ問題を軽減するためにGPUドライバを更新しています。ARM CPUを搭載したSoCについては、影響を受ける製品を特定するために分析を行い、適切な緩和策を準備しています。

ARM ホールディングスは、自社の Web サイトにセキュリティ アップデートを追加し、脆弱性に対する自社の危険性を説明したが、インテルと同様に、同社も 3 つの亜種すべての影響を受ける可能性がある。 

これらの展開は、法的な問題を引き起こす可能性があります。ハワード・G・スミス法律事務所はすでにインテル社の投資家を代表して調査を開始すると発表しており、今後数週間のうちに同様の展開がさらに増える可能性があります。インテルはこれまで、大規模なハードウェア交換に備えて準備金を積み立ててきましたが、今回の脆弱性に対処するための新たな資金については明らかにしていません。また、同社は事業への影響はないと表明しています。

インテルはこの件に関する声明で、これらのエクスプロイトはインテル製品特有の「バグ」や「欠陥」によるものではないと明言しています。また、これらのエクスプロイトは「設計通りに動作しているコンピューティングデバイスから機密データを収集する」可能性があるとも指摘しています。これらの声明は、インテルが「ハードウェアは正常に動作している」ことを理由に、潜在的なクレームに対して抗弁する姿勢を示していると考えられます。これらの脆弱性がいつ明らかになったか(メルトダウン型攻撃は2010年から既知の存在だったという主張もあります)、これらの点は裁判で争われる可能性があります。ARMや他のベンダーも同様の課題に直面する可能性があります。

インテルのCEO、ブライアン・クルザニッチ氏も、2017年11月に3,900万ドル相当の株式を売却しました(この金額にはストックオプションの購入額は含まれていません)。クルザニッチ氏が10b5-1(c)プランに基づいて株式を売却したため、この取引は当初無害に見えました(実際、そうかもしれません)。10b5-1(c)プランは、インサイダー取引の申し立てを防ぐことを目的とした、事前に計画された株式売却です。この売却により、クルザニッチ氏はインテルが義務付けている最低保有株数である25万株を保有することになりました。売却は10月30日に計画されていました。しかし、MarketWatchは、インテルが6月1日にこの脆弱性を認識していたと報じており、規制当局の注目を集める可能性があるとのことです。Business Insiderは、証券取引委員会の担当者がこの件についてコメントを控えたと報じています。

準備期間が長かったことを考慮すると、クラウドサービスプロバイダーへのサービスに大きな支障は発生しないと考えられます。ただし、新しいパッチが様々なワークロードに及ぼすパフォーマンスへの影響については、今後さらに詳細が明らかになると思われます。今後の動向にご注目ください。

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