目录
一、OllyDbg基本知识
1.1简介
OllyDbg是一种具有可视化界面的汇编分析调试器,是一个支持插件扩展功能的动态追踪工具。
1.2窗口界面
1.2.1窗口组成
该窗口界面(CPU)由下图所示的5个子窗口组成:
1.2.2窗口功能
反汇编窗口:显示被调试程序的反汇编代码,包括地址栏、HEX数据栏(机器码)、汇编指令 栏、注释栏。
寄存器窗口:显示CPU各个寄存器的值。
信息窗口:显示与指令相关的各寄存器的值、API函数调用提示和跳转提示等信息。
数据窗口:显示内存数据,包括地址栏、十六进制数据栏、ASCII栏。
堆栈窗口:显示当前线程的堆栈。
1.3常用快捷键
F2:设置或取消设置断点
F3:加载一个可执行程序,进行分析调试
F4:程序执行到光标处
F7:单步步入,遇到call指令跟进
F8:单步步过,遇到call指令不跟进
F9:运行程序到断点处
Ctrl+F2:重新执行程序到起始处
Ctrl+F9:执行到函数返回
Ctrl+E:编辑内存内容
Ctrl+G:输入地址,进行定位
Alt+F9:执行到用户代码
二、测试修改实例
2.1测试内容
本测试完成对弹窗程序中MessageBox标题与内容的修改。
2.2测试环境
Windows 10、VS 2017(没有特定的版本,无论是win7还是vs 2015影响都不大)
2.3测试程序
测试程序为一个弹窗的exe程序,源码如下:
2.4测试步骤
2.4.1将程序载入OD
通过快捷键F3或者左上角“file->open”载入程序
2.4.2定位内存地址
1.找到“hello world”的位置,双击所在行的汇编指令栏(第三列),得到存储字符串的内存地址
2.在数据窗口按“ctrl+G”键搜索地址
3.同样的方法定位“test”的地址
2.4.3修改内容
按“ctrl+E”键对内容进行修改,修改过程中注意将keep size的“√”去掉、字符串最后用“00”填充。
2.5测试结果
修改前:
修改后:
三、小结
OllyDbg通常用于程序的逆向工程(比如游戏开挂,是一种流行的调试器,需要用户具备汇编语言的知识。
网上有很多版本的OD,以及五花八门的插件,大家注意识别,可能有些捆绑了恶意软件。推荐从吾爱破解或者看雪论坛上面下载。
大家有问题的可以评论区留言or私信博主,博主全天24小时在线!
出处:https://www.cnblogs.com/3-1415926535/p/15047038.html