ollydbg

官网:http://www.ollydbg.de/
跟踪寄存器,识别进程,API调用,表,常量和字符串,以及从目标文件和库中查找例程.
Ollydbg_运维

界面布局

Ollydbg_运维_02

汇编窗口

注释信息

Options -> Automatical module analysis -> Main module.选中后会自动分析,然后限制在注释信息窗口中.
Ollydbg_运维_03

OllyDbg有时会错误的将可执行代码解释为数据,可以在反汇编窗口中右击选择Analysis -> Remove analysis from module 手动删除分析结果

高亮指令

右键汇编窗口,选择Appearance -> Highlighting --> Jumps and Calls。这是汇编窗口的指令会高亮显示jmp和call指令。
Ollydbg_运维_04

寄存器

查看寄存器和标志寄存器。
Ollydbg_运维_05

堆栈窗⼝

涉及到ESP和EBP寄存器指向地址的信息显示。
右键堆栈窗口 -> Go to -> ESP/EBP。
Ollydbg_运维_06

数据窗口(dump)

默认模式为Hex/ASCII(8-byte),还可以改变它以显示反汇编代码(Disassemble),文本(Text)和其它格式(Short,Long,Float)。
Ollydbg_运维_07

控制面板图标按钮

Ollydbg_运维_08
L图标View -> Log,显示日志窗口。
E按钮View -> Executables,显示程序运行使用的模块:exe,dll,ocx和其它。
M按钮View->Memory,显示程序映射到内存的信息。
T按钮View->Threads,显示程序的线程窗口。
W按钮View-> Windows,显示程序窗口
H按钮View-> Handles,句柄窗口
C按钮View->CPU,返回到OllyDbg的主窗口,CPU窗口。
/按钮View->Patches,如果程序经过了修改,显示修改的信息
K按钮View->Call stack,显示调用堆栈的窗口信息
B按钮View->Breakpoints,显示程序普通断点的列表窗口
R按钮View->Reference,参考窗口,显示OllyDbg中搜索的结果
... 按钮View->Run trace,显示RUN TRACE(RUN跟踪)命令的结果。可以通过Log to file保存输出结果到文件。

安装插件

为插件建立文件夹PLUGINS,将插件复制到其中,设置Options->Appearance,选中刚才新建的文件夹,重启OD。

快捷键

F7 CALL时Step Into
F8 CALL时Step Over
F2 添加/删除断点
F9 Debug-> Run,调试程序,直到遇到断点停止
F12 Debug-> Pause,临时暂停程序
Alt+F2 DEBUG-> CLOSE,关闭调试程序

其他辅助工具

PEID 查看exe文件由什么语言编写
dnSpy 破解.net用
de4dot .net脱壳

查找注释

进入CPU窗口
Ollydbg_运维_09
右击 -> 中文搜索引擎 -> 智能搜索
Ollydbg_运维_10
点击只能搜索后自动跳转到注释列表界面,Ctrl + F搜索
Ollydbg_运维_11