BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Lazy FP State Restoreの脆弱性が、ほとんどのIntel Core CPUに影響を与える

Lazy FP State Restoreの脆弱性が、ほとんどのIntel Core CPUに影響を与える

原文(投稿日:2018/06/18)へのリンク

インテルは、Coreプロセッサのほとんどに影響を及ぼす新たな脆弱性を明らかにし、それはSpectreとMeltdownに類似したサイドチャネル攻撃の標的となっている。Lazy FP state restore (CVE–2018–3665)と呼ばれるこの脆弱性により、プロセスは他のプロセスに属するFPU/MMX/SSE/AVXレジスタの内容を推測することができてしまう。

新しい脆弱性は、コンテキストスイッチ上でFPUを遅れて切り替えられるx86プロセッサの機能によって発現した。実際には通常、FPUレジスタの数が非常に多くなり、FPUステートの保存と復元が比較的高価になるため、オペレーティングシステムは代わりにLazy FP state restoreを活用する。つまり、FPUステートの実際の保存と復元は、命令がアクセスするまで延期される。この動作は、すべてのプログラムがFPUを使用するわけではないときに意味をなすが、攻撃者がメモリアドレスの一部としてそのレジスタを使用することでアクセスすることが許可されていないFPUレジスタにアクセスすることを許してしまう。そのため、CPUが推測してアクセスできる。その後、CPUはそのミスを検出して修正するが、この推測による実行の履歴がキャッシュに残され、攻撃者が利用できるようになる。

この脆弱性の悪用について検討しているセキュリティ研究者の1人であるColin Percival氏によると、そこに紐づく主なリスクは、AES暗号化キーがよくFPUのSSEレジスタに格納されることである。Percivalが脆弱性を悪用するコードを書くのにちょうど5時間かかったが、リモートから脆弱性を悪用することはMeltdownよりもはるかに難しいと彼は言っている。

この方法で暗号鍵を盗むためには、ターゲットプロセスと同じCPU上でコードを実行する必要があります。また、CPUパイプラインが完了する前に特定の一連の操作を実行する必要があるため、実行のための狭いウィンドウが存在します。

この新しい脆弱性は、Meltdown (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE–2017–5754) に似ている。この脆弱性によりユーザ空間プログラムから保護されたメモリの内容を読み取ることができてしまう。しかし、それはプロセスの境界を跨いだ特定のレジスタの内容に制限される。

明るい点として、この脆弱性はOSレベルで修正できる可能性があり、その場合SpectreやMeltdownのようなマイクロコードを更新する必要はない。実際には、プロセッサとオペレーティングシステムの特定の組み合わせを実行しているシステムのみが影響を受ける。特に、古いLinuxバージョン(4.9以前)、FreeBSD、およびいくつかのハイパーバイザーがIntel Core CPU上で動作している場合である。マイクロソフトは、すべてのWindowsバージョンがLazy PF state restoreを使用しており、無効にすることはできないと、セキュリティアドバイザで述べている。そして、その時点で緩和策や回避策はない。

この脆弱性に関する非Intelプロセッサの状態は明らかでないが、AMDはSecurityWeekに、AMD製品は悪用されやすいとは考えていないと述べている

InfoQは新しい情報が入り次第、この投稿を更新する。

Rate this Article

Adoption Stage
Style

この記事に星をつける

おすすめ度
スタイル

BT