大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
目录
一、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程序,源码如下:
#include<Windows.h>
int main() {
MessageBox(0,"test","hello world",MB_OK);
return 0;
}
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小时在线!
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/193551.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...