OllyDbg 使用笔记 (一)

OllyDbg 使用笔记 (一)

參考

书:《加密与解密》

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

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

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

一、OllyDbg基本界面

图片1

OllyDbg 使用笔记 (一)

假设按窗体切换button出现以下的情况,乱了,仅仅须要双击一个窗体让它全屏即可了。

图片2

OllyDbg 使用笔记 (一)

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYmlsbHZzbWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

二、部分快捷键介绍

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 使用笔记 (一)

在OllyDbg中按F3打开hello.exe

按住F8 直到弹出hello窗体

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

图片4

OllyDbg 使用笔记 (一)

在这里下一个断点。

再按Ctrl+F2又一次加载。再按F9执行到断点处。

在F7步进,进入函数中。

我们能够看到

图片5

OllyDbg 使用笔记 (一)

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYmlsbHZzbWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

能够看到4个PUSH和一个CALL

四个PUSH就相当于參数。

能够看到右边的注解(OllDbg会依据dll自己主动注解),这事实上是MessageBox的4个參数。因为VC++默认函数是__stdcall 所以參数进栈的顺序是从右往左的。

我们能够看到MessageBox显示的窗体和内容的字符串的地址。

同过改动对应地址的内容就能够改变窗体的内容。

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

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

图片6

OllyDbg 使用笔记 (一)

因为是调用MessageBoxA(A代表ASCII),所以在ASCII中输入想要字符,记得要以00结尾。

比如输入 “哈哈!。”

图片7

OllyDbg 使用笔记 (一)

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYmlsbHZzbWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

再F8 执行程序,执行到call messagebox处。就能够看到MessageBox中的hello被改成了“哈哈!!

这样改动在又一次加载后就会失效。

假设想保存到应用程序

选中改过的部分,右键选择拷贝到可运行程序

图片8

OllyDbg 使用笔记 (一)

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYmlsbHZzbWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

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

图片9

OllyDbg 使用笔记 (一)

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYmlsbHZzbWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

上一篇:QTP校验数据库中数据前台项目


下一篇:路由器终端常用linux命令汇总(持续更新)