この脆弱性は、Intel プロセッサのメモリ最適化機能が原因で発生します。
また Intelプロセッサの投機的命令実行システムに脆弱性が発見された、そして今回は Google 研究者が、新しい脆弱性を特定したと発表しました (すでに以下にカタログされています) CVE-2022-40982)、「ダウンフォール」と呼ばれます
ダウンフォールとは、XMM、YMM の内容を判別できる脆弱性です ZMM ベクトル レジスタは、同じ CPU コアで AVX 命令を実行するときに他のプロセスによって以前に使用されていました。
ダウンフォールについて
脆弱性に関しては、次のように述べられています。 特権のない攻撃者 システム上で独自のコードを実行できる機能 脆弱性を利用して他のユーザー プロセスからデータが漏洩する可能性があります。 システム カーネル、分離された Intel SGX エンクレーブ、および仮想マシン。
フィルタリング可能なベクトル レジスタは、暗号化、メモリ コピー関数、文字列処理で広く使用されています。たとえば、これらのレジスタは、Glibc ライブラリの memcpy、strcmp、strlen 関数などで使用されます。 実用的な観点から見ると、この脆弱性が悪用されて、他のプロセスの AES-NI または REP-MOVS 命令 (memcpy 関数で使用される) で処理されているデータを特定することができ、暗号化キー、機密データ、ユーザー パスワードが漏洩する可能性があります。
Intelプロセッサに脆弱性が現れる これらは AVX2 および AVX-512 拡張命令セットをサポートします (つまり、第 6 世代から第 11 世代のプロセッサーに影響します)。一方、Alder Lake、Raptor Lake、および Sapphire Rapids マイクロアーキテクチャに基づく Intel プロセッサーは影響を受けないようです。
AMD Zen2 プロセッサに影響を与える最近発見された Zenbleed 脆弱性と同様、Downfall の脆弱性の原因は、同じ CPU コア上のすべてのアプリケーション タスク間でログ内容を共有するために使用されるログ ファイルからのデータ漏洩です。
リークの原因は、GATHER ステートメントの実行時の投機的なデータ転送です。、AVX2 および AVX-512 拡張で利用可能で、メモリ内の異種データへの高速アクセスを提供するように設計されています。 GATHER ステートメントの実行中、レジスタ ファイル内の古いデータは、依存する命令の投機的実行に使用されます。 このデータはソフトウェア ログに直接反映されませんが、CPU キャッシュに残ったデータの解析など、メルトダウン攻撃用に設計されたサイドチャネル攻撃手法を使用して特定できます。
ダウンフォールを悪用するには、 データ収集サンプリングと呼ばれる攻撃手法が開発されました (GDS) であり、別のユーザーのプロセスから暗号キーを抽出し、memcpy 関数によって Linux カーネルにコピーされた後にデータを漏洩し、他のプロセスの動作後にベクトル レジスタに残された印刷文字を傍受するエクスプロイト プロトタイプが公開されています。 たとえば、OpenSSL ライブラリを使用して、別のユーザーのプロセスでデータを暗号化するために使用される AES キーを定義する機能を示します。
この方法は高い効率を示しました。 100 個の異なるキーを使用して実験を実施したところ、AES-100 キーの 128% と AES-86 キーの 256% が、各試行時間 10 秒以内で決定されました。 クラウド システムでは、他の仮想マシンでどのようなデータが処理されているかを特定するために攻撃が使用される可能性があります。 この脆弱性は、Web ブラウザで JavaScript コードを実行することによって悪用される可能性があります。
言及しておかなければならないのは、私はntelは昨年この問題を発見した (正確にはXNUMX月に) そして、この脆弱性は今年の BlackHat USA カンファレンスでのみ公開されたとのこと。 この脆弱性を防ぐための修正は、バージョン 6.4.9、6.1.44 から 4.14.321 までのさまざまな Linux カーネル アップデートにすでに含まれています。
これに加えて、Downfall 脆弱性に対する保護がパフォーマンスに及ぼす悪影響を回避するために考えられる対策として、コンパイラを変更して GATHER ステートメントの使用を無効にするか、GATHER LFENCE の直後にステートメントを追加することが挙げられています。これにより、以前のすべてのコミットが完了する前に、後続のステートメントのプリエンプティブ実行が無効になります。
ファームウェア修正が利用できないシステムでは、すべての AVX 拡張機能のサポートが無効になっていますが、Intel マイクロコード更新部分については、MSR インターフェイスを使用して、個々のプロセスのコンテキストでファームウェア保護を選択的に無効にする機能も提供されています。
最後に、 あなたがそれについてもっと知りたいなら、詳細はで確認できます 次のリンク。