Ollydbg的入门使用

修改完一个文件之后,点击保存到可执行文件就可以保存。

 1.各窗口简单介绍

B: 即Breakpoints window,断点窗口,用来管理和查看用户的断点。

L:log window,日志窗口,用来显示程序的输入输出和一些断点之类的日志信息

E:Executable modules window,也就是可执行模块窗口,列出当前进程的所有可执行模块及其信息。

M窗口,Memory window,也就是内存窗口。可以查看内存信息,查看其中存储的数据之类。

R窗口,Registers window,寄存器窗口,显示有关寄存器的一些信息。

C窗口是最重要的窗口,记录的有汇编代码之类,可以在这里进行单步调试。ctrl+g会跳转到指定地址。双击C窗口会来到观赏性比较强的窗口

目前暂且记录这么多窗口,等待以后继续补充。

2.快捷键介绍

F2:设置断点

F4:运行到选定位置。作用就是直接运行到光标所在位置处暂停。

F7:单步步入。功能同单步步过(F8)类似,区别是遇到 CALL 等子程序时会进入其中,进入后首先会停留在子程序的第一条指令上

F8:单步步过。每按一次这个键执行一条反汇编窗口中的一条指令,遇到 CALL 等子程序不进入其代码。

F9:运行。按下这个键如果没有设置相应断点的话,被调试的程序将直接开始运行。

CTRL+F9:执行到返回。此命令在执行到一个 ret (返回指令)指令时暂停。好处就是当你不想具体看这个子程序的每一句代码执行的情况了,你就可以按键盘上的CTRL+F9直接运行到子程序的结尾的位置停下来

ALT+F9:当程序暂停在系统领空的时候,你按一下ALT+F9,程序就一下子就执行完当前系统领空的代码回到了程序领空。系统领空也就是代码属于系统方面的函数,比如弹窗什么的,特点是一般地址都很大。

3.实战

查壳发现是UPX,所以直接使用脱壳机脱壳。

这里发现已经没有壳了。因为只学习了od,这里采取OD进行逆向分析。

下一步,打开OD。 

点击F9让程序运行起来,随便输入一个数字看看错误提示是什么。

进入OD,搜再试一次看看。

 我认为关键代码在这里了。je的意思是相等则跳转,如果它跳转走了,那不可能执行破解成功这个函数。我们需要不让他跳转,除了jmp强制跳转的思路,我们还可以改为jne,让判断的条件反着来就行了。保存后执行,见下图,破解成功。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值