ollydbg是一款反编译能力非常强的反汇编工具,编程工程师们通过ollydbg可以轻松的将应用程序成功的编译,应用程序反汇编后,工程师们可以更好的了解到应用程序的编程思路,在别人的编程中学到更多的东西,OllyDbg可以识别所有 Borland 和 Microsoft 格式的调试信息。这些信息包括源代码、函数名、标签、全局变量、静态变量,有限度的支持动态(栈)变量和结构,并在信息栏配置文件中保留字体、语法高亮、颜色这几个部分为中文,非常的符合国内编程工程师的要求,需要的朋友快来双鱼下载站下载吧。
ollydbg功能介绍
1、启动
您可以采用命令行的形式指定可执行文件、也可以从菜单中选择,或直接拖放到OllyDbg反汇编工具中,或者重新启动上一个被调试程序,或是挂接[Attach]一个正在运行的程序。OllyDbg支持即时调试,根本不需要安装,可直接在软盘中运行!
2、线程
OllyDbg反汇编工具可以调试多线程程序。因此您可以在多个线程之间转换,挂起、恢复、终止线程或是改变线程优先级。并且线程窗口将会显示每个线程的错误(就像调用 GETLASTERROR 返回一样)。
3、调试DLLs
您可以利用OllyDbg调试标准动态链接库(DLLs)。OllyDbg 会自动运行一个可执行程序。这个程序会加载链接库,并允许您调用链接库的输出函数。
4、源码级调试
OllyDbg反汇编工具可以识别所有 Borland 和 Microsoft 格式的调试信息。这些信息包括源代码、函数名、标签、全局变量、静态变量。有限度的支持动态(栈)变量和结构。
5、代码高亮
OllyDbg的反汇编器可以高亮不同类型的指令(如:跳转、条件跳转、入栈、出栈、调用、返回、特殊的或是无效的指令)和不同的操作数(常规[general]、FPU/SSE、段/系统寄存器、在栈或内存中的操作数,常量)。您可以定制个性化高亮方案。
6、名称
OllyDbg可以根据 Borland 和 Microsoft 格式的调试信息,显示输入/输出符号及名称。Object 扫描器可以识别库函数。其中的名称和注释您可任意添加。如果DLL中的某些函数是通过索引号输出的,则您可通过挂接输入库[import library]来恢复原来的函数名称。不仅如此,OllyDbg还能识别大量的常量符号名(如:窗口消息、错误代码、位域[bit fields]…)并能够解码为已知的函数调用。
7、已知函数
OllyDbg反汇编工具可以识别 2300 多个C 和Windows API 中的常用函数及其使用的参数。您可以添加描述信息、预定义解码。您还可以在已知函数设定 Log断点并可以对参数进行记录。
8、函数调用
OllyDbg反汇编工具可以在没有调试信息或函数过程使用非标准的开始部分[prolog]和结尾部分[epilog]的情况下,对递归调用进行回溯。
9、配置
有多达百余个选项用来设置OllyDbg 的外观和运行。
数据格式:OllyDbg 的数据窗口能够显示的所有数据格式:HEX、ASCⅡ、UNICODE、 16/32位有/无符号/HEX整数、32/64/80位浮点数、地址、反汇编(MASM、IDEAL或是HLA)、PE文件头或线程数据块。
ollydbg界面介绍
1、反汇编窗口
ollydbg(od反汇编工具)在这里显示反汇编代码,我们将要以OllyDbg的默认配置调试分析你打开的程序。 调试选项可以在Options->Debugging options里更改。
2、寄存器
第二个重要的窗口——寄存器窗口。看一下这个在OllyDbg最右边的窗口,它出现了很多信息。
3、堆栈窗口
默认情况下,它显示ESP寄存器指向的信息(也是最重要的),但是你可以改变它的显示模式来显示来自涉及EBP的信息。这需要在这个窗口上点击右键,选择GO to EBP。再次点击右键选择Go to ESP,回到先前窗口。
4、数据窗口(dump)
默认的模式是最常用的,我们还可以改变它以显示反汇编代码(Disassemble),文本(Text)和其它格式(Short,Long,Float)。现在我们了解了OllyDbg的最主要的四个窗口。还有一些窗口没有直接显示,可以通过菜单或控制面板上的图标按钮访问。
ollydbg使用教程:
一、修改字符串
1、打开ollydbg,载入目标程序,如下图。
2、在汇编窗口中点击鼠标右键,选中strfinder字符查找插件,选择搜索ascII字符串,如下图。
3、找到我们要修改的字符串,双击追踪到汇编窗口,如下图。
4、在汇编窗口中,点击鼠标右键,选择数据窗口中跟随,立即常数,如下图。
5、在数据窗口中,选择一段内存,不要超过了原来字符串的长度,点击鼠标右键,选择编辑--二进制编辑,如下图。
6、在编辑数据地址对话框中的mbcs栏输入我们的字符,如下图。
7、点击hex栏,在刚刚改过的字符后面输入00 00来截断字符串,点击确定,如下图。
8、点击鼠标右键,选择编辑--复制所有改变到可执行文件,如下图。
9、点击鼠标右键,点击保存文件,如下图 。
10、在弹出的文件已更改的提示中,选择是,如下图。
11、输入文件名,点击保存,如下图。
12、双击打开我们保存的程序,修改成功,结果如下图。
二、在ollydbg中设置断点
1、打开ollydbg,加载需要调试的程序,如下图。
2、找到我们需要下断点的地方,点击F2,这时在地址处就有红色表示,即为断点,如下图。
3、下完断点后,我们点击运行,工具栏上的三角符号,这时程序将运行到我们下断点的位置,这时我们可以看到内存数据和寄存器都有变化,如下图。
4、再次点击f2,可以取消断点,如下图。
5、如果我们想重新加载程序,我们可以点击工具栏的额后退按钮,如下图。
6、点击后,ollydbg会提示重新加载可执行文件,我们点击yes,如下图。
7、稍等片刻,将会加载完成,程序停在程序执行的入口,如下图。
∨ 展开