【コラム】ITセキュリティのアライ出し (38) Adobe Flash PlayerおよびReaderのゼロディ脆弱性を分析する その2 | エンタープライズ | マイコミジャーナル(情報元のブックマーク数)

今週のアライ出し。EMETを使ったAdobe Readerの保護と動き。

このPDFファイルについては次のことがいえる。

  • Heap Sprayingとシェルコードを用意するためにJavaScriptが使われている。よって、JavaScriptを無効にすると、この攻撃が発現することはない
  • Heap Sprayingが使用されている。よって、これを無効にするような保護機構があれば、攻撃を止めることができる可能性がある

このように、ゼロディ脆弱性と言っても脆弱性の悪用法を詳細に調査することで"Workaround"すなわち回避法が見いだせることもあるのだ。
次に、後者の可能性を検討してみると、前々回に紹介したEMETの存在が浮上する。実際にEMETを使用してAcrobat Readerを保護対象にするには、EMET_conf.exeに次のようなパラメータを与えればよい。

http://journal.mycom.co.jp/column/itsecurity/038/index.html

きれいにNULLになってるなぁ。これ面白そうだ。

EMETがオフの場合には、メモリアドレス0x0c0c0c0c周辺にはシェルコードが書き込まれている。一方で、EMETをオンにし場合にはシェルコードはなく、NULLの羅列が見て取れる。このようにEMETの効果は明らかであり、攻撃コードが書き込まれるより前にメモリ領域を確保しているため、シェルコードが書き込まれてしまうことを予防してくれている。このため、EMETがオンになっているとシェルコードが実行されることなく、脆弱性の発生箇所ではNULL間接参照が発生することになり、結果としてAcrobat Readerが異常停止するはずである。

http://journal.mycom.co.jp/column/itsecurity/038/index.html

screenshot