ymduu+2

初心を忘れないのでツンデレとPSPが今でも好き、技術メモとか制作物とかそういうの

angr入門コード(Beginner Exploitation example: strcpy_find)のコメントを和訳した

SECCON大阪大会の準備として、angrの使い方の勉強がてら和訳した。(結局使わなかった)
angrの日本語資料はびっくりするほど無いので、これからangrを使う人の助けになれば、ということ(と備忘録のため)で上げておこうと思う。
英語は苦手なので誤訳等あると思いますが、まさかりはtwitter(@ymduu)かコメント欄まで。

なにこれ

Examples · Angr Documentation
の、Beginner Exploitation example: strcpy_find。
バイナリの内容を簡単に解説すると、コマンドライン引数としてパスワードと表示したい文字列を取り、パスワードが合っている時だけstrcpyでバッファにその文字列をコピーし表示してくれる、というもの。
strcpyのソースを自由に指定できればBOFを引き起こせてexploit可能なので、そこにたどり着くためのパスワードを求めたい。
これをangrで求めるスクリプトは以下。(詳細に書いてあったコメントを和訳してある。)

今年のSECCONオンライン予選は自明なBOFのexploitを(手ではつらい回数)回連続で成功させろ、みたいな問題が出ると思う(適当)(的中したら誰か肉をおごってくれ)