操作方法
OD界面 无论当前的OllyDbg窗口是什么,这些快捷键均有效: Ctrl+F2 - 重启程序,即重新启动被调试程序。如果当前没有调试的程序,OllyDbg会运行历史列表[history list]中的第一个程序。程序重启后,将会删除所有内存断点和硬件断点。 译者注:从实际使用效果看,硬件断点在程序重启后并没有移除。 F3 - 弹出“打开32位.EXE文件”对话框[Open 32-bit .EXE file],您可以选择可执行文件,并可以输入运行参数。
F7 - 单步步入到下一条命令,如果当前命令是一个函数[Call],则会停在这个函数体的第一条命令上。如果当前命令是是含有REP前缀,则只执行一次重复操作。 F8 - 单步步过到下一条命令。如果当前命令是一个函数,则一次执行完这个函数(除非这个函数内部包含断点,或发生了异常)。如果当前命令是含有REP前缀,则会执行完重复操作,并停在下一条命令上。 F9 - 让程序继续执行。
Ctrl+F11 -Run跟踪步入,一条一条执行命令,进入每个子函数调用,并把寄存器的信息加入到Run跟踪的存储数据中。Run跟踪不会同步更新CPU窗口。 F12 - 停止程序执行,同时暂停被调试程序的所有线程。请不要手动恢复线程运行,最好使用继续执行快捷键或菜单选项(像 F9)。 Alt+B - 显示断点窗口。在这个窗口中,您可以编辑、删除、或跟进到断点处。 Alt+C - 显示CPU窗口。 Alt+E - 显示模块列表[list of modules]。 Alt+K - 显示调用栈[Call stack]窗口。 Alt+L - 显示日志窗口。 Alt+M - 显示内存窗口。 Alt+O - 显示选项对话框[Options dialog] Ctrl+P - 显示补丁窗口。 Ctrl+T - 打开 暂停 Run跟踪 对话框 Alt+X - 关闭 OllyDbg。 大多数窗口都支持以下的键盘命令:
OD界面使用介绍
反汇编窗口 OllyDbg在这里显示反汇编代码,我们将要以OllyDbg的默认配置调试分析你打开的程序。 调试选项可以在Options->Debugging options里更改。
2)寄存器 第二个重要的窗口——寄存器窗口
3)堆栈窗口 默认情况下,它显示ESP寄存器指向的信息(也是最重要的),但是你可以改变它的显示模式来显示来自涉及EBP的信息。这需要在这个窗口上点击右键,选择GO to EBP。再次点击右键选择Go to ESP,回到先前窗口。
4)数据窗口(dump) 默认的模式是最常用的,我们还可以改变它以显示反汇编代码(Disassemble),文本(Text)和其它格式(Short,Long,Float)。 现在我们了解了OllyDbg的最主要的四个窗口。还有一些窗口没有直接显示,可以通过菜单或控制面板上的图标按钮访问。