web-dev-qa-db-ja.com

Adobe Flashエクスプロイトが頻繁に見つかるのはなぜですか?

ここ数年、Adobe Flashは(ゼロデイ)エクスプロイトのバグ修正を頻繁に公開していたため、インストールはすでに面倒です。しかし、なぜこの特定のソフトウェアにエクスプロイトが頻繁に見られるのでしょうか。

明らかな理由の1つ:広く普及しているすべてのソフトウェアと同様に、フラッシュは最も広く使用されているプログラムの1つであるため、犯罪者、諜報機関などの以前の標的となっています。

しかし、Adobeのような会社のソフトウェアエンジニアは、熟練していないわけではなく、攻撃経路を最小限に抑えようとしないとも思います。

14
user3147268

Adobe Flashは21年前(FutureWaveのSmartSketchとして開始)であり、長年にわたり、さまざまなOS、規格、およびそれらに付随するすべての風変わりな制限に対応できなければなりませんでした。

Flashで行われる作業のほとんどは、Flashを最新のテクノロジーで最新の状態に保ち、徐々に機能を追加していくことを目的としています。これにより、潜在的なセキュリティ問題について古いコードを確認するための時間はあまりありません。

これらの2つの要素を組み合わせると、コードの奥深くに埋もれている長期にわたるバグを完全に解決できます。

15
ztk

Adobe Flash Playerは、アンマネージコード言語で記述されており、次の脆弱性に対して脆弱です よく引用される脆弱性

  • ヒープベースのバッファオーバーフロー
  • 解放後使用の脆弱性
  • 整数オーバーフロー
  • スタックベースのバッファオーバーフロー
  • ダブルフリーの脆弱性
  • 詳細不明の「タイプの混乱」
  • 細工されたフォーマット文字列引数

通常、アンマネージコードは、深いまたは強化されたデータフローと制御フローの影響も受けます。セキュリティ研究者がコードパスを詳しく調査するほど、メモリトレスパスの脆弱性が発見されます。 Flash Playerには非常に深い制御フローがあり、多くの決定を行い、多くの状況要因を呼び出して、複雑さを増しています。

最新のメモリトレスパス脆弱性は、セキュリティ研究者によって継続的に更新されています。近年、 ROPチェーン により、エクスプロイト開発がより簡単で幅広いプロセスになりました。専任のセキュリティ研究者がますます大規模で強力な組織によって採用されるにつれて、ツールとテクニックは指数関数的に増加します。これを利用してください Libformatstrブログ投稿 研究者がエクスプロイト開発のプロセスを簡素化するための新しいフレームワークをリリースしたちょうどその日から。これは、エクスプロイト開発キャンプで行われている爆発的で斬新な研究の例です。

これらの理由と、特にドメインシャドウイングを介したトラフィック分散システムで見つかるエクスプロイトキットへのFlashエクスプロイトの相互受粉のため、Chromeを介してFlash Playerを更新し、意図的にオフにします(つまり、クロム:// plugins、disable)、私または私の組織の管理下にあるITシステムなどの既知の適切な宛先に対してのみ有効にします。Javaアプレットは、 Chromeにより、これらのアプレットのサポートが永久に中止されました-Flashアプレットがすぐに続くことを期待しています。

7
atdre