OllyDbg——基础1

本文介绍了如何使用OllyDbg这款强大的调试工具,包括其界面操作、常用快捷键、破解注册机制的思路和步骤,以及总结的调试技巧。读者将学习到如何追踪API调用、定位输入处理函数和利用F7/F8键进行高效调试。
摘要由CSDN通过智能技术生成


OllyDbg是一个新的动态追踪工具,将IDA与SoftICE结合起来的思想,Ring 3级调试器,支持插件扩展功能,是目前最强大的调试工具之一。建议下载汉化版的

界面

在这里插入图片描述
反汇编窗口:显示被调试程序的反汇编代码,包括地址、HEX数据、反汇编、注释
寄存器窗口:显示当前所选线程的CPU寄存器内容,点击标签可切换显示寄存器的方式
信息窗口:显示反汇编窗口中选中的第一个命令的参数及跳转目标地址、字符等
数据窗口:显示内存或文件的内容,右键菜单可切换显示方式
堆栈窗口:显示当前线程的堆栈

在反汇编窗口中有三个板块和一个注释区
在这里插入图片描述

常用的快捷键调试方式

在这里插入图片描述
F7:单步步入,功能通单步步过(F8)类似,区别是遇到CALL等子程序时会进入其中,进入后首先停留在子程序的第一条指令上。
F8:单步步过,每按一次这个按键,将执行反汇编窗口中的一条指令,遇到CALL等子程序不进入其代码。
Ctrl+G:一般用于跟踪字符串和跳转到指定位置

删除或禁止断点
1、查看所设置的全部断点——点击显示页工具栏的B
2、选择要操作的断点右键进行操作或者快捷键空格
在这里插入图片描述

破解注册机制思路

所有应用程序要实现各种各样的功能都是要通过调用API函数!

文本框读取字符串的函数有2种

GetDlgItemTextA GetDlgItemTextW
GetWindowTextA GetWindowTextW
A表示ASCII的方式 ,W表示Unicode的方式

因为破解的注册机制需要输入用户名密码,使得成功登入
1、获取输入,查找文本框读取字符串的函数:ctrl+G——输入可能的字符串的函数名
2、在找到的字符串函数位置设置断点,运行到断点位置(F9)
3、即会弹出破解的程序的输入用户名和密码框,随意输入,注意输入的字符串最好在5位以上
4、此时OD里的代码会停在某个位置,按F7进入call里,发现无可用信息
5、按ctrl+F9回到4、的“OD里的代码会停在某个位置”处
6、之后继续往下走(F8)(这里不用F7是因为4、中进入函数没有看见有用信息),注意观察信息窗口的提示,会有有用信息,比如我们输入的用户名什么的
7、跳到信息窗口提示有用信息的位置,然后根据上下的机器码分析其操作

!注意:出现cal函数 之后出现test eax,eax时要注意 (因为任何函数在汇编里面返回值都存放在eax里),这里明显是测试函数返回值是否为0,之后跟着的通常为验证判断

8.可以将eax值改变使得返回非0或者直接把验证判断的代码去掉(双击用NOP填充)。

第二种操作如图:
在这里插入图片描述
在这里插入图片描述

把改过的地方保存起来:选上改过的地方——右键——复制到可执行文件——选择——在弹出窗口右键备份——保存数据到文件——新写一个文件名——保存
!注意:如果该程序加壳了,改过后可能无法正常执行。

其他种破解注册机制案例可看我之前写的博客https://blog.csdn.net/Woolemon/article/details/124232863

调试技巧总结

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这是看小甲鱼OD调试篇的笔记,记录一下~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值