2008年11月1日土曜日

もきゅ~。

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク

:0040110C 8B5D10 mov ebx, dword[ebp+10]
:0040110F 0303 add eax, dword[ebx]
:00401111 8B5D10 mov ebx, dword[ebp+10]
:00401114 8903 mov dword[ebx], eax
---------
:00401116 66FF4580 inc word[ebp-80]

のようなもの(disassemの出力)を食って

<Element procedure at 12aa4170> 00407BD9
<Element procedure at 12aa4680> 00407BEC
<Element fragment at 12614dd0> 00404A20
<Element op at 12614ea8> 00404A20 E806000000 call 00404A2B
<Element op at 12614f38> 00404A25 E87D000000 call 00404AA7
<Element op at 12614fc8> 00404A2A C3 ret None

を吐くものを作った。もう眠いです。
あす以降、このtreeをレンダリングするプログラムを書きます。
まあ、手でwikiに貼り付けるより、効率的だし、楽しいのだが。コードもそのうち公開します。

disassembleの結果でどこが大事かを追跡するのはフローグラフっぽいものを生成できないとつらいので。graphvizで絵でもだすか。ウィルスの解析結果出力みたいだな。

結局、コンピュータウイルスのコード静的解析による特徴抽出と分類とかとやろうとすることかわらないよな~。

0 件のコメント: