米国時間3月10日、世界中の大学の研究者からなるチームと、Bitdefenderの脆弱性研究者が、Intelのプロセッサーに存在する新たなセキュリティホールに関する情報を公開した。
この新たに発見された理論上の攻撃は、「Load Value Injection(LVI)」攻撃と呼ばれるものだ。
今のところ、この攻撃は理論上の脅威にすぎないとみられているが、Intelは現在出回っているCPUに対する攻撃を緩和するファームウェアアップデートを公開している。また同社は、将来の世代の製品では、ハードウェアレベルで問題を修正する。
Meltdown攻撃の逆の攻撃
LVI攻撃を理解するためには、まず「Meltdown」攻撃と「Spectre」攻撃を理解する必要がある。特にMeltdown攻撃だ。
2018年1月に一般に情報が開示されたMeltdown攻撃は、あるCPUでコードを実行している攻撃者が、CPUが「投機的」なオペレーションを実行している際に、そのCPUのメモリーからデータを読み出すことができるというものだ。
「投機的実行」は、最近のすべてCPUが備えている機能で、CPUが将来行う可能性がある処理の結果をあらかじめ予測する。この機能は、CPUが将来必要とする可能性があるデータをあらかじめ用意しておけば、CPUの処理速度とパフォーマンスを改善できるという考え方に基づくものだ。用意されたデータは、もし必要なければ破棄される。Meltdown攻撃とSpectre攻撃では、この「一時的(transient)」な状態にあるデータを読み取る。
これらの攻撃手法をもとに世界中の研究者が研究を進め、「transient attack」と呼ばれる種類の攻撃を発見した。これらの攻撃も、やはり投機的実行を行う際の「一時的」な状態にあるCPUからデータを読み取るものだ。
既知のサイドチャネル攻撃やtransient-execution攻撃の分類
一方、LVI攻撃は、技術的な位置づけとしてはMeltdown攻撃とは逆の位置にある。Meltdown攻撃は、CPUのメモリ中にあるアプリケーションのデータを読み取ることを可能にするものだったが、LVI攻撃は、CPUにコードを注入し、一時的なオペレーションとして実行させることで、攻撃者がCPUの挙動をコントロールすることを可能にする。LVIのサイトでは、データを被害者から攻撃者へ直接流すのではなく、研究者らは、攻撃者のデータを、隠れたプロセッサーバッファーを通して被害者のプログラムに注入し、一時的な実行をハイジャックして、被害者の指紋やパスワードなどの機密情報を取得すると説明されている。
学術機関の研究チームはIntel SGXのエンクレーブからの流出データにフォーカスしており、Bitdefenderは攻撃のクラウド環境などへの影響について注目している。
Bitdefenderの研究チームらは、LVI攻撃にはハードウェアの修正が必要だと述べている。