検索
連載

Use After FreeとヒープスプレーBeyond Zero-day Attacks(4)(3/3 ページ)

ヒープオーバーフローと別の手法でヒープ破壊を行うUser After Freeと呼ばれる攻撃と、Use After Freeと一緒に使われることが多い、ヒープスプレーについて紹介します

Share
Tweet
LINE
Hatena
前のページへ |       

User After Freeとヒープスプレーの対策

 前回のヒープ破壊で紹介をした対策は、Use After Freeとヒープスプレーを使った攻撃に対しても、有効性があると考えられています。

 例えば、Use After Freeで解放済みのヒープを上書きする際には、ガードページ(図6)によるアクセスエラーで、攻撃を防ぐことが期待できます。


図6 ガードページ

 また、このサンプルでは、ヒープ領域が常に一定の順番で割り当てられることが前提となっているため、LFHブロックのランダムアロケーション(図7)により、解放されたヒープ領域への上書きを防ぐことが期待できます。


図7 LFHブロックのランダムアロケーション

 C++では、Use After Freeで書き換えられる仮想テーブルの改ざんを検知する仕組みが利用できるようになっています。


図8 C++での仮想テーブル改ざん検知の仕組み

 EMET(Enhanced Mitigation Experience Toolkit)では、ヒープスプレーで悪用されることの多いメモリ領域を事前にEMETが取得することで、ヒープスプレーの展開を防ぎます。


図9 EMETによるヒープスプレー対策

結びに

 これまでに紹介したスタックオーバーフローやヒープオーバーフローは、何らかのデータを処理するプログラムであれば、データを操作することによって攻撃の対象とすることができます。これに対して、User After Freeは、通常は安全な実行環境と考えられているスクリプト言語(インタプリター)を利用して攻撃を行うことが可能です。

 Java、Flash, PDF、Internet Explorerなどが攻撃のターゲットとなっていますが、いずれもスクリプトを走らせることが可能でUse After Freeとヒープスプレーの組み合わせが利用できる環境です。これらの実行環境は、そもそもヒープを中心として動作すると言っても過言ではない環境であるため、攻撃者が意図したメモリの状態を作りやすく、根本的な対策が難しいのが実情です。

 一方で、ここまで紹介をしてきた攻撃手法は、攻撃コードをスタックまたはヒープに展開したものです。一般的に、プログラムがスタックやヒープに展開されることはないので、スタックやヒープでのプログラムの実行を止めることができれば、脆弱性があったとしても、その悪用を防ぐことができます。この対策を実現するのがDEP(Data Execution Prevention)と呼ばれるハードウェア機構です。

 次回は、DEPとDEPの回避手法についてご紹介します。

著者プロフィール

高橋 正和(たかはし まさかず)

日本マイクロソフト株式会社

チーフ セキュリティ アドバイザー

1980年代初頭からミニコン、PC-98、8085、4ビットマイコンなどを使った制御システムの開発などを経験。

1980年代中頃から、日本デジタル研究所株式会社で標準ライブラリの開発保守、開発環境の開発保守、独自OSからWindows NT/Windows XPへの移植、品質管理、新入社員向けのC言語の新人教育などを担当した。

標準ライブラリでは、ファイルシステムやSocketライブラリの開発・実装・保守、開発環境では、68K系のCPUにWhite Sims’s Cによるリロケータブルな実行ファイル形式という特性を使って、オーバーレイリンカー・ローダー等も開発した。

1999年にISS(現在はIBM)セキュリティに関わり、2006年から現職(日本マイクロソフト株式会社 チーフセキュリティアドバイザー)を務める。


Copyright © ITmedia, Inc. All Rights Reserved.

前のページへ |       

Security & Trust 記事ランキング

  1. 増える標的型ランサムウェア被害、現場支援から見えてきた実態と、脆弱性対応が「限界」の理由
  2. 日本人の約半数が「1年前より危険」と考えるオンライン詐欺とは マカフィーがホリデーショッピング詐欺に関して調査
  3. Google Cloudがサイバーフィジカルシステムのレジリエンスを高める10の指標を解説 最初にすべきことは?
  4. ランサムウェア攻撃を受けた企業、約6割が「サプライチェーンのパートナー経由で影響を受けた」 OpenText調査
  5. 「このままゼロトラストへ進んでいいの?」と迷う企業やこれから入門する企業も必見、ゼロトラストの本質、始め方/進め方が分かる無料の電子書籍
  6. セキュリティ専門家も「何かがおかしいけれど、攻撃とは言い切れない」と判断に迷う現象が急増 EGセキュアソリューションズ
  7. セキュリティ担当者の54%が「脅威検知ツールのせいで仕事が増える」と回答、懸念の正体とは? Vectra AI調査
  8. 米国/英国政府が勧告する25の脆弱性、活発に悪用されている9件のCVEとは、その対処法は? GreyNoise Intelligence調査
  9. 長続きする高度セキュリティ人材育成の秘訣を「第19回情報危機管理コンテスト」から探る
  10. MicrosoftがAD認証情報を盗むサイバー攻撃「Kerberoasting」を警告 検知/防御方法は?
ページトップに戻る