OllyDbg 使用笔记 (一)

参考

书:《加密与解密》

视频:小甲鱼 解密系列 视频

ollydbg下载地址:http://tools.pediy.com/debuggers.htm

hello.exe下载地址:http://pan.baidu.com/s/1c0iYQOC

一、OllyDbg基本界面

图片1

如果按窗口切换按钮出现下面的情况,乱了,只需要双击一个窗口让它全屏就行了。

图片2

二、部分快捷键介绍

F3 : 打开目标文件

F2 : 设置断点

F7:单步步进,遇到CALL跟进

F8:单步步过,遇到CALL路过,不跟进

F9:运行调试程序,直到运行到断点处

F4:运行调试程序,直到运行到光标处

Ctrl+F7/F8 相当于一直按F7/F8

Ctrl+F9 快速跳出函数

Alt+F9 快速跳出系统函数

Ctrl+F2 重新载入程序

在反汇编面板中

;键:写注解

空格键:改变当前的指令

数据面板中

Ctrl+G:打开地址窗口

空格:编辑数据

三、修改hello.exe 中MessageBox的内容

此程序下载地址见 blog开头。

更改下面这个程序的标题和内容

图片3

在OllyDbg中按F3打开hello.exe

按住F8 直到弹出hello窗口

单步运行到004010E9时会停下来,弹出一个MessageBox窗口。

图片4

在这里下一个断点。

再按Ctrl+F2重新载入,再按F9运行到断点处。在F7步进,进入函数中。

我们可以看到

图片5

可以看到4个PUSH和一个CALL

四个PUSH就相当于参数。可以看到右边的注解(OllDbg会根据dll自动注解),这其实是MessageBox的4个参数,由于VC++默认函数是__stdcall 所以参数进栈的顺序是从右往左的。

我们可以看到MessageBox显示的窗口和内容的字符串的地址。同过修改相应地址的内容就可以改变窗口的内容。

在数据面板 按下Ctrl+G s 输入 00406030

鼠标选中要改的地方,按下空格键输入要改动字符。

图片6

由于是调用MessageBoxA(A代表ASCII),所以在ASCII中输入想要字符,记得要以00结尾。例如输入 “哈哈!!”

图片7

再F8 运行程序,运行到call messagebox处,就可以看到MessageBox中的hello被改成了“哈哈!!”

这样修改在重新载入后就会失效。如果想保存到应用程序

选中改过的部分,右键选择复制到可执行程序

图片8

在弹出的窗口中右键选择  备份-->保存数据到文件即可

图片9

OllyDbg 使用笔记 (一),布布扣,bubuko.com

时间: 2024-08-06 09:50:33

OllyDbg 使用笔记 (一)的相关文章

OllyDbg 使用笔记 (二)

参考 书:<加密与解密> 视频:小甲鱼 解密系列 视频 TraceMe.exe下载地址:http://pan.baidu.com/s/1c0s2twO TraceMe.exe 程序破解 程序见下图,破解目标:使我们能够验证成功. 图片1 由于输入肯定会用到获取对话框文本的API,所以在反汇编面板 按Ctrl+G搜索GetDlgItemTextA,试试看. 图片2 也可以按Ctrl+N 打开程序的导入表.查看程序导入了那些函数,选中GetDlgItemTextA,右键 选择在反汇编窗口中跟随输入

OllyDbg 使用笔记 (八)

参考 书:<加密与解密> 视频:小甲鱼 解密系列 视频 示例程序下载:http://pan.baidu.com/s/1jG5NKBs 分析 这个程序,未注册版本限制了一些功能. 尝试在register界面写入email和密钥 会弹出注册未成功的窗口.可以利用窗口中的文字作为突破口.在OD中 查找 所有参考文本字串 图片1 暴力破解 查看 未注册成功后弹出窗口中的字符串的代码: 004299AB . 57 push edi 004299AC . 50 push eax 004299AD . E8

ollydbg使用笔记(五)

OllyDbg 使用笔记 (五) 参考 书:<加密与解密> 视频:小甲鱼 解密系列 视频 pixtopainbook安装包 下载地址  http://pan.baidu.com/s/191ArG pixtopainbook 破解 pixtopainbook是一个电话簿软件,未注册版本,最多只能添加3个组,每个组最多添加4个人. 去除添加人数跟组数限制 ollydbg 加载 ,按F9运行. 如果OD暂停,在下面出现"异常 E06D7363 - 使用Shift+F7/F8/F9来忽略程序

OllyDbg 使用笔记 (四)

参考 书:<加密与解密> 视频:小甲鱼 解密系列 视频 RegisterMe程序下载地址:http://pan.baidu.com/s/1gd3l4XH 这个RegisterMe程序,运行前和运行后都会有neg窗口.破解目标,去除这个两个窗口. 用OD直接打开这个程序,我们会发现出错.也可能OD会卡死. 因为这个程序的PE文件被故意修改了. 我们先到 选项---> 调试设置 --> 事件 --> 选择系统断点. 图片1 这样用OD打开就不会卡死. 按 alt + M 来到 m

OllyDbg 使用笔记 (六)

参考 书:<加密与解密> 视频:小甲鱼 解密系列 视频 VisualSite Designer下载地址:http://pan.baidu.com/s/1ntyVLsH VisualSite Designer 运行前有个NAG,关闭程序后有个广告窗口,并且有运行次数限制. 去除NAG以及运行次数限制 方法1: 去除NAG窗口的方法是:F8运行程序,碰到出现NAG的CALL就下断点,重新运行按F7进入此CALL,直到找到用户领空"真正"CALL出NAG窗口的CALL.观察此CA

OllyDbg 使用笔记 (三)

参考 书:<加密与解密> 视频:小甲鱼 解密系列 视频 reverseME.exe 下载地址:http://pan.baidu.com/s/1c0fBgi8 reverseMe.exe 破解 这个reverseMe会读取密钥文件来注册. 加载,观察注解,我们可以发现几个关键的地方 0040105C . 6A 00 push 0 ; /hTemplateFile = NULL 0040105E . 68 6F214000 push 0040216F ; |Attributes = READONL

OllyDbg 使用笔记 (十九)

参考 书:<加密与解密> 视频:小甲鱼 解密系列 视频 反调试 先看看这四个程序.(下载地址:http://pan.baidu.com/s/1pJCzABp) 它们自己运行时都没有问题,都显示被注册信息 "You really did it! Congratz it",但是一到OD中运行就会出现未注册或者报错. 这四个程序都对OD进行了反调试. 它们都用了IsDebuggerPresent这个API函数来判断是否程序被调试器调用. 可以先看看ReverseMe.A程序,正常

OllyDbg 使用笔记 (十四)

参考 书:<加密与解密> 视频:小甲鱼 解密系列 视频 示例程序下载地址:http://pan.baidu.com/s/1hqqYZ6c 此程序运行前会有一个nag窗口,运行结束后也有一个nag窗口.破解目的要去除这两个nag窗口. 用OD加载这个程序,按F9运行,当第一个nag窗口出现时,按下暂停.查看 堆栈调用 图片1 观察这些调用,查找产生这个nag窗口的调用,此程序是用VC6.0++写的,使用MFC,可以发现此次dialog非常关键 图片2 点击它的"调用来自" 

OllyDbg 使用笔记 (十七)

参考 书:<加密与解密> 视频:小甲鱼 解密系列 视频 示例程序现在地址:http://pan.baidu.com/s/1pJ1AguZ 破解这个程序的注册机(keygen) 这个程序主界面就是两个输入框,跟check,about按钮. 可以从两个输入栏入手,用OD加载程序,右键-->查找-->所以摸快间的调用,搜索跟输入框的API,可以搜索GetDlgItemTextA (也可以在Commod中输入 bp GetDlgItemTextA 即可直接对指定API下断点) 图片1 可以