Intel チップの DDIO 実装により、SSH セッションでのキーストロークを検出するネットワーク攻撃が可能になります

アムステルダム自由大学とチューリッヒ工科大学の研究者グループがネットワーク攻撃手法を開発しました NetCAT (Network Cache ATtack) により、サードパーティ チャネルを介したデータ分析手法を使用して、SSH セッションでの作業中にユーザーが押したキーをリモートで判断できます。 この問題はテクノロジーを使用するサーバーでのみ発生します RDMA (リモート ダイレクト メモリ アクセス) および DDIO (データダイレクト I/O)。

インテル 攻撃者がローカル ネットワークにアクセスし、無菌状態で、RDMA および DDIO テクノロジを使用したホスト通信を組織する必要があるため、この攻撃を実際に実行するのは困難です。RDMA および DDIO テクノロジは通常、コンピュータが接続されている隔離されたネットワークで使用されます。クラスターが動作します。 この問題はマイナーと評価されています (CVSS 2.6、 CVE-2019-11184)、セキュリティ境界が提供されておらず、信頼できないクライアントの接続が許可されているローカル ネットワークでは、DDIO と RDMA を有効にしないことが推奨されています。 DDIO は、2012 年から Intel サーバー プロセッサ (Intel Xeon E5、E7、および SP) で使用されています。 AMD およびその他のメーカーのプロセッサをベースとしたシステムは、ネットワーク経由で転送されたデータの CPU キャッシュへの保存をサポートしていないため、この問題の影響を受けません。

攻撃に使用された手法は脆弱性と類似しています。」投げハンマーこれにより、RDMA を備えたシステムでネットワーク パケットを操作することで、RAM の個々のビットの内容を変更できます。 この新たな問題は、DDIO メカニズムを使用する際の遅延を最小限に抑えるための作業の結果です。DDIO メカニズムは、ネットワーク カードおよびその他の周辺機器とプロセッサ キャッシュとの直接対話を保証します (ネットワーク カードのパケットを処理する過程で、データはキャッシュとキャッシュに保存されます)。メモリにアクセスせずにキャッシュから取得されます)。

DDIO のおかげで、プロセッサ キャッシュには、悪意のあるネットワーク アクティビティ中に生成されたデータも含まれます。 NetCAT 攻撃は、ネットワーク カードがデータをアクティブにキャッシュし、最新のローカル ネットワークのパケット処理速度がキャッシュの充填に影響を与え、データの遅延を分析することでキャッシュ内のデータの有無を判断するのに十分であるという事実に基づいています。移行。

SSH 経由などの対話型セッションを使用する場合、ネットワーク パケットはキーが押された直後に送信されます。 パケット間の遅延は、キーストローク間の遅延と相関します。 統計分析手法を使用し、キーストローク間の遅延が通常キーボード上のキーの位置に依存することを考慮すると、入力された情報を一定の確率で再作成することが可能です。 たとえば、ほとんどの人は、「a」の後に「s」を入力する方が、「s」の後に「g」を入力するよりもはるかに速く入力する傾向があります。

プロセッサ キャッシュに保存された情報により、SSH などの接続を処理するときにネットワーク カードによって送信されたパケットの正確な時刻を判断することもできます。 攻撃者は、特定のトラフィック フローを生成することで、システム内の特定のアクティビティに関連する新しいデータがキャッシュに出現する瞬間を特定できます。 キャッシュの内容を分析するには、メソッドが使用されます プライム+プローブこれには、値の参照セットをキャッシュに設定し、変更を判断するために再設定されたときにそれらへのアクセス時間を測定することが含まれます。

Intel チップの DDIO 実装により、SSH セッションでのキーストロークを検出するネットワーク攻撃が可能になります

提案された技術を使用して、キーストロークだけでなく、CPU キャッシュに保存された他の種類の機密データも特定できる可能性があります。 この攻撃は RDMA が無効であっても実行される可能性がありますが、RDMA がないと攻撃の有効性が低下し、実行が大幅に困難になります。 DDIO を使用して、サーバーが侵害された後にセキュリティ システムをバイパスしてデータを転送するために使用される秘密の通信チャネルを組織することも可能です。

出所: オープンネット.ru

コメントを追加します