OD全称Ollydbg,是反汇编常用的工具,经常用作动态调试。
我们打开OD:
首先,对于调试,我们有两种方式:
1.直接打开文件进行调试:
2.附加进程进行调试:
这里我们使用打开的方式,打开一个程序:
可以看到,这里有很多窗口,上面都对它们标注,下面我一个个介绍它们:
反汇编窗口:显示反汇编指令的区域
反汇编信息窗口:提供当前所选的反汇编指令的一些信息。
寄存器窗口:提供寄存器信息
数据窗口:显示一些程序的数据区的数据
堆栈窗口:显示堆栈信息。
对于反汇编窗口,如果我们要跳到某个地址,可以使用快捷键CTRL+G:
如果要对某个指令进行下断点调试,可以使用F2,然后再点击B这个按钮查看断点信息:
对于一些Windows系统的API调试,我们可以在Command框使用bp +API的方式进行调试:
除此之外,还有一些我们在调试中常使用的快捷键:
重新开始:Ctrl + F2
转到地址:Ctrl + G
断点切换: F2
断点窗口:Alt + B
运行: F9
暂停: F12
单步步过: F8遇到call跳过
单步步入: F7遇到call进入
运行到选定位置:F4
反汇编窗口中跟随: 回车键enter
跟随:回车键enter 进入某个地址
对于命令栏,我们也有一些常用的指令:
bp 下断点
bc 清除断点
dd 以双字方式显示数据
dw 以字方式显示数据
db 以字节方式显示数据
dc 以字符方式显示数据
? 计算表达式的值
对于查看反汇编代码,如果我们要返回上一步所看的代码,按-号即可,同理,下一步则是+号。