Google Chromeは、Flash Playerに追加のセキュリティメカニズムを実装しました

Windows用のGoogle Chrome Webブラウザの開発者は、エクスプロイトに対抗するための追加機能を追加したことを以前に書きました。 64ビットタブ、高エントロピーASLRのメカニズム、およびサンドボックスプロセスでのwin32k.sysドライバーの使用の無効化について説明しています。 これらのメカニズムは、攻撃者に対するRCEエクスプロイトの動作の開発を著しく複雑にします。これにより、ブラウザを介してシステムにフルアクセスできます。







Chromeの最新バージョンでは、AdobeのFlash Playerに付属する新しい悪用防止機能が追加ています。 Flash Playerエクスプロイトで最近公開されたデータは、攻撃者がバッファオーバーフローの脆弱性を使用して、広く使用されているFlashベクターオブジェクトまたはバッファの一部の書き換えまたは台無しを可能にし、それによってメモリにシェルコードデータを配置することを示しています。



そのような状況がメモリ内の隣接する構造とバッファを上書きするのを防ぐために、Chromeはヒープパーティションを使用します軽減:Vector.uintバッファヒープパーティション )。 同時に、セキュリティクリティカルなバッファベクトルのメモリは、一般的なフラッシュヒープから割り当てられないため、不正使用の状況が防止されます。 ベクター構造は、さまざまな構造の隣接する配列をメモリに便利に格納するためにフラッシュで最も一般的に使用されるものの1つです。 セキュリティメカニズムは、整数UINT型のベクトルに対して有効になっています。



別のセキュリティメカニズムは、ベクターバッファー構造の整合性を制御します。これは、このバッファーのサイズフィールドからメモリ内で始まります( 軽減策:ベクター。<*>長さの検証 )。 このフィールドは、メモリ内のバッファへの損傷を部分的に正当化し、新しい構造サイズを設定できるため、攻撃者にとって不可欠です。 これを行うために、ブラウザコードは、このフィールドの現在の値を指定された値と最初に比較することにより、特別なチェックを実行します。 ( 攻撃者が長さを破損した場合、シークレットを設定する値がわからないため、結果の不一致によりランタイムが中止されます。



Chromeは、ASLRをサポートするプロセスに対してWindowsがデフォルトで使用するASLRメカニズムに加えて、Flashを使用してFlashヒープ内のメモリ割り当てアドレスをランダム化します( 軽減:Flashヒープの強力なランダム化 )。 このメカニズムは、ヒープスプレーメカニズムを使用する可能性、および解放後使用を大幅に防止します。



上記のWebブラウザのセキュリティ機能(64ビットタブ、HEASLR、win32k.sysの使用禁止、Flashエクスプロイト緩和)は、セキュリティを大幅に強化します。 新しいFlashエクスプロイト緩和セキュリティ機能は、バージョン18.0.0.209以降のFlash Playerで利用できます。



ブラウザで使用されているFlashのバージョンは、ブラウザの行またはこちらの Adobe Flash Player Webページ about:versionコマンドを実行することで確認できます



画像

安全である。



All Articles