
V0LTpwn(CVE-2019-11157)用ツールスイート。コードは近日公開予定です。
V0LTpwn (CVE-2019-11157) は、x86 プロセッサに対するソフトウェア制御のフォールト攻撃です。SGX エンクレーブの整合性を破壊する初の攻撃です。
最近の Intel プロセッサはすべて、システムを再起動せずにコア電圧を制御するソフトウェアインターフェースを備えています。この機能は通常の操作には必要ありませんが、エキスパートユーザーがパフォーマンス最適化のために使用します。例えば、オーバークロッキングコミュニティでは Intel の XTU アプリケーションで利用されています。
V0LTpwn では、悪意のあるソフトウェアがこのインターフェースを使用してプロセッサの電圧を臨界しきい値まで低下させ、特定の命令が正しく動作しなくなることを示します。これは、攻撃者がこれらの命令で実装された計算にビット反転を誘発できることを意味します。論文では、攻撃者が暗号計算を操作し、プログラムの制御フローを逸脱させる方法を示しています。
この攻撃はソフトウェアによって制御されるため、攻撃者は物理的なマシンへのアクセスを必要としません。ただし、電圧インターフェースを利用するにはオペレーティングシステムの特権が必要です。つまり、この脆弱性は通常のユーザーにとって直接的な脅威ではありません。主な標的は Intel の SGX のような信頼された実行環境です。
SGX は、オペレーティングシステムからも保護されるエンクレーブをアプリケーションが展開できるようにするセキュリティ機能です。例えば、SGX は信頼できないクラウド環境でアプリケーションを(安全に)実行するために使用できます。Foreshadow のような以前の攻撃は、サイドチャネルを介して SGX エンクレーブから秘密が盗まれる可能性があることを示していました。V0LTpwn は、SGX エンクレーブ内の計算が操作される可能性を実証する最初の攻撃です。
私たちは責任ある開示プロセスで Intel に脆弱性を通知しました。Intel は協力し、影響を受けるプラットフォームへのパッチの提供を開始しました。詳細については、Intel のセキュリティアドバイザリの公式情報を参照してください。
V0LTpwn の詳細は研究論文に記載されています。
https://arxiv.org/abs/1912.04870
さらなる研究のためのツールスイートを近日公開予定です。
Intel による公式情報は以下のウェブページでご覧いただけます。
https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00289.html
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-11157