home ホーム search 検索 -  login ログイン  | reload edit datainfo version cmd icon diff delete  | help ヘルプ

C言語系/memos/VC++/11, 構造化例外処理と"/SAFESEH"リンカオプション

C言語系/memos/VC++/11, 構造化例外処理と"/SAFESEH"リンカオプション

C言語系 / memos / VC++ / 11, 構造化例外処理と" / SAFESEH"リンカオプション
id: 769 所有者: msakamoto-sf    作成日: 2010-09-02 18:04:32
カテゴリ: C言語 Windows セキュリティ 

参考リンク

参考リンクのまとめメモです。

初級:構造化例外処理の使い方を学ぶ

  • MSDNの基本情報
    • "MSDN Library" > "Windows Development" > "Diagnostics" > "Debugging and Error Handling" > "Structured Exception Handling"
  • SEHのサンプル
    • "MSDN Library" > "Windows Development" > "Diagnostics" > "Debugging and Error Handling" > "Structured Exception Handling" > "Using Structured Exception Handling"
  • "Windows の内部動作 - Web/DB プログラミング徹底解説" : 例外処理の一通りの日本語解説
  • VC++構造化例外メモ(Hishidama's VC++2005 SEH Memo)

中級:構造化例外処理の実装とC++の例外処理の関係について学ぶ

アセンブラ知識が必要。内容も非常に濃厚。

上級:"/SAFESEH"とセキュリティ関連の話題

なぜ"/SAFESEH"を使うべきなのか?それはバッファオーバーフローを使ってスタック上に展開された例外ハンドラのアドレスを書き換える"SEH Overwiting Expoit"という攻撃を防止するためである。しかしロードされる他のモジュールの"/SAFESEH"有無やSoftwareDEPの有効・無効によって回避される場合もあり、万能ではない。
また"/SAFESEH"はx86のみ有効である点も注意が必要である。x64におけるSEHの仕組みについての解説記事へのリンクも載せているので、参照されたい。



プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2010-09-02 18:23:02
md5:150dec004e925a949a6e060c9fb69bc0
sha1:93ab1150a42155c86a8f89bc669ecbdc340fbbd5
コメント
コメントを投稿するにはログインして下さい。