2020年03月11日 16時34分 セキュリティ

Intel製CPUに新たな脆弱性「LVI」が判明、個人情報や企業の機密情報が流出する可能性も



Intel製CPUに証明書やパスワードといった機密情報を抜き取られる危険性をもつ脆弱性「Load Value Injection(LVI)」が判明しました。LVIは2018年以降たびたび報告されているCPUの「投機的実行」や「アウトオブオーダー実行」に関する脆弱性のひとつで、個人のコンピューターにおいては個人情報の 漏洩 ( ろうえい ) 、複数のサービスが1つのCPUで稼働しているデータセンターなどでは、権限の低い仮想環境のユーザーによって、権限の高い仮想環境にあるデータが盗まれる危険性が指摘されています。



LVI: Hijacking Transient Execution with Load Value Injection

https://lviattack.eu/



Intel CPUs vulnerable to new LVI attacks | ZDNet

https://www.zdnet.com/article/intel-cpus-vulnerable-to-new-lvi-attacks/



LVI Attacks: New Intel CPU Vulnerability Puts Data Centers At Risk

https://thehackernews.com/2020/03/intel-load-value-injection.html



今回の脆弱性「LVI」は、CPUの高速化を目的とした、条件分岐前に分岐後の処理を先読みして行う「投機的実行」や、処理が完了する前にその後の処理を先回りして行う「アウトオブオーダー実行」に関するもの。同じ脆弱性の構造を利用した「Meltdown」や「Spectre」については、下記の記事で詳しく説明されています。



Intel製CPUに内在する脆弱性問題の根は深く「すべてのプロセッサが安全性と高速性を両立できない問題を抱える」との指摘 - GIGAZINE





MeltdownやSpectreは投機的実行によるデータそのものの 漏洩 ( ろうえい ) を引き起こしましたが、LVIは攻撃者が悪意のあるコードを投機的実行の対象として挿入することでデータを取得することができる脆弱性とのこと。コードの挿入はマルウェアによるローカルアクセスのほか、JavaScriptをブラウザ上でリモート実行させることでも可能とされています。



LVIでは、まず攻撃対象のプログラムに対し、隠されたバッファーを介して不適切なデータを読み込ませ、バッファオーバーフローなどの例外を引き起こします。例外を検知したCPUは正常な状態に戻るまでに、プログラムの「一時的実行」を行いますが、その一時的実行のコードを改変することで、攻撃対象のメモリ上にある機密情報を読み込むことができるという仕組みになっています。





また、LVIによるハッキングのデモムービーがYouTube上に公開されています。



LVI (Load Value Injection) Demo Video - YouTube





LVIはMeltdownやSpectreに対して行われた、CPUの性能低下をもたらす緩和策をもバイパス可能であり、ファームウェアによるCPUのマイクロコードを変更するだけでは完全に修正することができないとのこと。今回の影響を受けるCPUは、Ice Lake世代より前のIntel SGXを搭載したCPUであると報告されています。