Googleは、ブラウザでJavaScriptを使用してSpectreの脆弱性を悪用する方法を示しています

Googleが発表 数日前 さまざまなエクスプロイトプロトタイプ 脆弱性を悪用する可能性を示しています ブラウザでJavaScriptコードを実行するときのSpectreクラスの 上記で追加されたセキュリティ方法を経ることなく。

エクスプロイトは、プロセスのメモリにアクセスするために使用できます Webコンテンツを処理しています 現在のタブで。 エクスプロイトの動作をテストするために、リークページのWebサイトが立ち上げられ、動作のロジックを説明するコードがGitHubで公開されています。

提案されたプロトタイプは、 攻撃システム LinuxおよびChrome7環境のIntelCore i6500-88Uプロセッサー、 ただし、これは、他の環境でエクスプロイトを使用するために変更を加えることができることを排除するものではありません。

操作方法は特定のものではありません プロセッサ Intel:適切な適応の後、 このエクスプロイトは、ARMアーキテクチャに基づくAppleM1を含むサードパーティのCPUを搭載したシステムで機能することが確認されています。 マイナーな調整の後、このエクスプロイトは、Chromiumエンジンに基づく他のオペレーティングシステムや他のブラウザでも機能します。

標準のChrome88およびIntelSkylakeプロセッサに基づく環境では、現在のChromeタブでWebコンテンツをレンダリングするプロセス(レンダリングプロセス)から1キロビット/秒の速度でデータ漏洩が発生しました。 さらに、代替のプロトタイプが開発されました。たとえば、8マイクロ秒(5ミリ秒)の精度でperformance.now()タイマーを使用すると、安定性が低下しますが、リークレートを0.005kB / sに上げることができるエクスプロイトが開発されました。 )。 60ミリ秒のタイマー精度で動作するバリアントも用意されました。これは、約XNUMXバイト/秒の速度で別のプロセスのメモリへのアクセスを整理するために使用できます。

公開されているデモコードは、次のXNUMXつの部分で構成されています。

  • 最初の部分 実行時間を見積もるためにタイマーを調整します CPU命令の投機的実行の結果としてプロセッサキャッシュに残っているデータを取得するために必要な操作の例。
  • パート2 JavaScript配列を割り当てるときに使用されるメモリレイアウトを定義します。
  • 第三部 Spectreの脆弱性を直接悪用して、メモリの内容を特定します 特定の操作の投機的実行の条件の作成の結果としての現在のプロセスの結果。その結果は、失敗した予測を決定した後にプロセッサによって破棄されますが、実行トレースは共有キャッシュに解決され、を使用して復元できます。キャッシュされたデータとキャッシュされていないデータへのアクセス時間の変化を分析するサードパーティチャネルを使用して、キャッシュの内容を決定する方法。

提案された搾取技術 高精度タイマーを排除します performance.now()APIを介して利用でき、SharedArrayBufferタイプはサポートされていません。これにより、共有メモリに配列を作成できます。

このエクスプロイトには、制御された投機的コードの実行を引き起こすSpectreデバイスと、投機的実行中にキャッシュされたデータを判別するサイドチャネルリークアナライザーが含まれます。

ガジェットはJavaScript配列を使用して実装されます。 その中で バッファの制限外の領域にアクセスしようとしました、コンパイラによって追加されたバッファサイズチェックの存在により、分岐予測ブロックの状態に影響します(プロセッサは事前に投機的にアクセスを実行しますが、チェック後に状態を元に戻します)。

タイマーの精度が不十分な条件下でキャッシュの内容を分析するために、プロセッサで使用されるTree-PLRUキャッシュデータエビクション戦略をだまし、サイクル数を増やすことで、値がキャッシュから返され、キャッシュに値がない場合に返されます。

Googleは、攻撃の実現可能性を示すためにエクスプロイトのプロトタイプを公開しました Spectreクラスの脆弱性の使用 そして、そのような攻撃のリスクを最小限に抑える手法を使用するようにWeb開発者に奨励してください。

同時に、Googleは、提案されたプロトタイプの大幅な改訂がなければ、デモンストレーションだけでなく、広く使用できるユニバーサルエクスプロイトを作成することは不可能であると考えています。

出典 https://security.googleblog.com


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:MiguelÁngelGatón
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。