リバースエンジニアリング(Reverse engineering)とは、機械を分解したり、製品の動作を観察したり、ソフトウェアを解析するなどして、製品の構造を分析し、そこから製造方法や動作原理、設計図、ソースコードなどを調査する事である。
つまりソースコードが手に入らない状況でソフトウエアの振る舞いを解析すること。
Filemon | ファイルアクセス監視ツール |
Regmon | レジストリアクセス監視ツール |
PEiD | PEヘッダーを見てパックされてるかとかをチェック! |
PEditor | PEヘッダーを編集するツール |
Ollydbg | 高性能で使いやすいデバッガ。 |
Fire Flower | パッチを当てるツール。この形式が最もよく使われてるかな。 |
DeDe | Delphi専用デバッガ |
QuickBe | バイナリエディタ。FireFlower形式のパッチを当てる機能もある。 |
Reflector | .NET製アプリをデコンパイル |
IDA Pro Freeware Version | 静的解析に用いる逆アセンブラ。 |
スペシャルねこまんま57号 | プロセスメモリエディタ兼デバッガ |
うさみみハリケーン | 同じくプロセスメモリエディタ兼デバッガ |
リバースエンジニアリングのチュートリアル。
解析では主にOllydbgを用いる。 ここではそれを導入する手順を説明する。
これだけだ。