OllyDbg メモ

OllyDbgの使い方に関するメモ
随時更新予定
今後はx32dbg (x64dbg)を使っていく予定。

特定のアドレスやAPI関数にジャンプする

1. disassemble画面にてCrtl + g を押す
2. ポップアップしたウィンドウにアドレス番号またはAPI関数名を入力してOKを押す。API関数名は大文字小文字を正確に入力しなければならない。

レジスタの内容をダンプする

1. 解析したい箇所にブレークポイントをセットし、F9、 F8、 F7キー等でデバッグを行う。
2. ブレークポイントに到達したら、画面右上あたりの"Registers (FPU)"ウィンドウからダンプしたいレジスタを選択する。例えば現在のスタックの内容を確認したい場合はESPを選択し右クリック、"Follow in Dump"を選ぶ
3. 画面左下のメモリ・ダンプ画面にダンプ内容が表示される。

アセンブリ命令を書き換える

ジャンプ命令の書き換えなどをしたい場合は以下のようにする
1. disassemble画面にて、書き換えたい命令箇所を選択し右クリック
2. Binary -> Edit ( ほかに"Fill with 00's"、"Fill with NOPs"も選べる)
3. オペコードを書き換える

書き換え後のバイナリを保存したい場合は以下のようにする
1. disassemble画面を右クリック
2. Copy to Executable -> All Modifications (すべての変更を保存したい場合)
3. 新しいウィンドウが立ち上がるので、右クリック -> Save File

メモリの内容を書き換える

1. レジスタ画面にて、レジスタを選択し右クリック、"Follow in Dump"を選ぶ
2. 左下のメモリ・ダンプ画面にて書き換えたい箇所を選択し右クリック Binary -> Edit
3. 編集ウィンドウが立ち上がる。ASCIIまたはHEXで内容を書き換えられる。

Leave a Reply

Your email address will not be published.