技術メモ帳 このページをアンテナに追加 RSSフィード

2006-06-11

[]ASCII Armor 20:29 ASCII Armorを含むブックマーク ASCII Armorのブックマークコメント

共有ライブラリをメモリ上に配置するときに

NULL(0x00) を含むアドレスへ配置するようにする。

通常の BufferOverFlow では、

strcpy 等を利用してバッファへ悪意あるコードを注入する。

例えば、リターンアドレスを 共有ライブラリへのアドレス に書き換える、

Return-into-libc 攻撃というものがある。


そして、なぜこれが有効なのかというと、

strcpy は、NULL文字以降は読み込んでくれないからだ。

コピー時にNULLが含まれているとそこでコピーが中断されてしまう。

それを利用して、わざと NULLの含まれるアドレスに配置する。


Linuxのセキュリティ機構である Exec-Shield により

この ASCII Armor は有効になっている。

トラックバック - http://d.hatena.ne.jp/lurker/20060611/1150025385