PE勉強会#3参加メモ その2
このエントリの和訳です。http://d.hatena.ne.jp/takahirox/20110503/1304411632
はじめに
このエントリは「PE勉強会#3参加メモ」の続きです。http://d.hatena.ne.jp/takahirox/20110420/1303307111
参考リンク
- 主催者のblogです。配布資料やtogetterまとめなど。
- ATND
やったこと
PEファイルのヘッダ詳細を表示するツールを作りました。きっとバイナリファイルの編集や解析の役に立つでしょう。
このツール自体は勉強会の内容とはあまり関係ないのですが。次に繋がると思うので。
実行例
% ./analysis.exe ./homu.exe *IMAGE_DOS_HEADER e_magic : 5A4D [MZ] e_cblp : 0090 e_cp : 0003 e_cparhdr : 0004 e_minalloc : 0000 e_maxalloc : FFFF e_ss : 0000 e_sp : 00B8 e_csum : 0000 e_ip : 0000 e_cs : 0000 e_lfarlc : 0040 e_ovno : 0000 e_res[4] : 0000 0000 0000 0000 e_oemid : 0000 e_oeminfo : 0000 e_res2[10] : 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 e_lfanew : 00000080 *IMAGE_NT_HEADERS32 Signature : 00004550 [PE] ... omit ...
特徴
- 入力ファイルがPEファイルかどうかチェックする
- PEファイルでなければヘッダの表示は行わない
- PEファイルヘッダの詳細を表示する
"objdump -x"でも同じようなことができるので、あまりこのツールのメリットはないのですが、今後機能を拡張していくことで何か面白いことができたらなぁと思っています。
終わりに
ヘッダ情報を目視で確認するのが億劫だったので、こんなツールを作成してみました。
愚直に実装してみたのですが、もっとうまい書き方はなかっただろうかというのが心残りです。
次回のメモでは.idataに関するまとめを書いてみようと思っています。