Libsafe は 32 ビットアーキテクチャでのみ動作します
- make build: Libsafe をビルドし、概念実証エクスプロイト
'thread' をコンパイルし、ライブラリインターセプトコード 'interpose.so' をコンパイルします。
make random MAX_DELAY=x: 'interpose.so' に挿入される遅延を
インターセプトごとの最大遅延 MAX_DELAY でランダム化します。
- bug.sh: Libsafe をプリロードする環境で PoC エクスプロイト 'thread' を実行します。
- repeatbug.py: bug.sh を1000回実行し、Libsafe が正常に動作した回数を報告します。
- bug-interpose.sh: Libsafe とライブラリインターセプトコード 'interpose.so' の両方を
プリロードする環境で PoC エクスプロイトを実行します。
- repeatbug-interpose.py: bug-interpose.sh を1000回実行し、Libsafe が
正常に動作した回数を報告します。
- gen_interpose.py: 'func_names.txt' にリストされている関数プロトタイプに基づいて
interpose.c を生成します。