逆向破解初体验之突破限制

0x00 序章

​ 本文练手的程序是一款名叫pixtopianbook通讯录软件,使用的工具是OD。

0x01 软件分析

​ 安装之后运行pixtopianbook.exe。

在这里插入图片描述

​ 点击登录之后进入主界面。

在这里插入图片描述

​ 该软件需要注册,如果不注册软件的功能会受到限制,添加组的数量被限制在3个,每组添加的联系人数量限制在4人。

在这里插入图片描述

在这里插入图片描述

​ 明确目标:要解除软件的非注册用户限制。

0x02 结构分析

​ 使用Exeinfo PE查看程序结构

在这里插入图片描述

  • 程序的入口地址:0x000403E。
  • 程序无壳。
  • 可以直接上OD进行逆向破解。

0x03 逆向分析

​ 使用OD打开程序,根据之前的提示“limit of 3 groups”查找字符串试试。

在这里插入图片描述

​ 根据查询结果查找到字符串出现的内存地址,点击跟进查看反汇编代码。

在这里插入图片描述

​ 在向上阅读反汇编代码,发现在0x00408B05将eax寄存器的值与0x03进行了比较判断,如果大于0x03则继续执行,就会执行到程序异常的代码片段,如果不大于3则跳转到0x00408B34,继续查看异常代码片段跳转的0x004562ED函数。

在这里插入图片描述

​ 该函数调用了MessageBoxA函数,并在调用前将异常提示的字符串压入了栈中,与程序运行过程中的情况基本一致,那么限制的判断就是在0x408B05,只需要突破此处的限制即可突破添加组的数量限制,这里我选择将jl跳转修改为jmp无条件跳转。

在这里插入图片描述

​ 使用同样的方法修改每个组添加的联系人数量限制即可。

在这里插入图片描述

0x04 保存修改测试

​ 将修改后的程序保存运行测试。

在这里插入图片描述

​ 至此,软件的功能限制已全部突破。

0x05 结语

​ 该软件的逆向破解过程并不难,网上也有很多的破解教程,如果有描述不当的地方请大师傅们指正批评。

​ 最后,该软件对于新入手学习逆向的同学练手是非常友好的,如果有想要练手的朋友,可以搜索微信公众号“乌托邦安全团队”或者扫下方的二维码关注公众回复“逆向破解0x01”获得软件的下载地址。

在这里插入图片描述

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值