吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 9234|回复: 27
收起左侧

[原创] 一个易语言无壳个人验证辅助破解分析和思路

  [复制链接]
Only1Studio 发表于 2022-1-2 21:38
环境:吾爱破解XP虚拟机,Win11主机
工具:OllyDbg
程序:某车游戏定时秒杀道具辅助
此程序是我的朋友写的,经他同意后发布,不带原程序和成品。
验证成功登录之后是这个样子
8M6EG$@@T}2$Y60[BWLCFMO.png
由于作者是我朋友,我提前得知有暗桩,验证非法后触发蓝屏,结束自身和删除自身。
那接下来我们就一一解决吧!
首先拖进OD,易语言程序我有个习惯,就是首先尝试push窗体。使用插件EWND枚举出8个窗口ID,挨个载入试试
屏幕截图 2022-01-02 185932.png
通过窗口push得知一下有效信息
1 52010001--------无响应
2 52012F9F--------编辑账号窗口
3 52012FA5--------编辑账号窗口
4 52019FBB--------无响应
5 52019FBC--------系统消息窗口
6 52019FBD--------无响应
7 5201B1C6--------超级文本整理窗口
8 5201B1C8--------发现新版本窗口
屏幕截图 2022-01-02 190617.png
看来EWND插件也不能push出主功能窗口,但是我不死心,我要到易语言体,找到启动程序载入的第一个窗口ID,再push一下试试。
Ctrl+B,输入FF25
屏幕截图 2022-01-02 191230.png
都知道啥意思吧?
在这里再测试一下我们用EWND获取的窗体ID,由于已经知道了2,3,5,7,8对应的窗体了,而且1是程序启动后载入的第一个窗体,也就是登录页面
那只要试试4和6也就是52019FBB和52019FBD
(ZMZ_{)UDAUT)RAFLQ@U3$V.png LP@SQZHM5SM@XHCD_R2M)8F.png
4是登录界面,6也是系统消息界面
那么我们得知有效消息
1 52010001--------程序启动后载入的第一个窗口(登录界面)
2 52012F9F--------编辑账号窗口
3 52012FA5--------编辑账号窗口
4 52019FBB--------登录界面
5 52019FBC--------系统消息窗口
6 52019FBD--------系统消息
7 5201B1C6--------超级文本整理窗口
8 5201B1C8--------发现新版本窗口
从中得知1和4都是登录界面,其他也都不是主功能窗口,那主功能窗口去哪里了呢?另外4也就是52019FBB这个窗口ID很可疑,先留意一下。
我自己写了一个程序,想验证是否可以点击帮助按钮后,直接载入功能窗口呢?
YSFY[843H~DDS)V9`URR~L9.png
将此测试程序载入OD后分析
自己写的测试程序太简单了,都不用下按钮断点,就知道哪里是按钮事件了,我将帮助按钮的按钮事件全部nop掉,然后直接jmp到载入窗口的函数,结果为我按下帮助按钮后载入功能窗口
%5G(${NK[%IO_O@9JW%C(`3.png
同理,我也可以直接把登录按钮的按钮事件全部nop掉,直接jmp到载入窗口的函数。
回到主题,我可不可以把登录按钮的按钮事件nop掉,直接jmp到载入主功能窗口的函数呢?
通过下按钮断点(Ctrl+B搜索易语言按钮事件特征码FF 55 FC 5F 5E),一步一步跟踪到登录按钮的按钮事件头部,细心的我观察到了下面出现了很多4的窗口ID----52019FBB
]%DLUV[K}}DM)H5VKCYQDJT.png
本来就觉得可疑,又在登录按钮事件里看到了,我感肯定这个窗口ID就是主功能窗口的ID了,那我该怎么定位载入窗口的函数呢?
我的土方法是一个一个试,Ctrl+B搜索push 0x52019FBB,将所有搜索到的函数头部地址记录下来
00499B74  /.  55            push ebp
屏幕截图 2022-01-02 202102.png
00499BAE  /.  55            push ebp
屏幕截图 2022-01-02 202208.png
有点多就不截图了,全部搜索并复制完共计36个
00499B74  /.  55            push ebp
00499BAE  /.  55            push ebp
00499ECE  /.  55            push ebp
0049A004  /.  55            push ebp
0049A02E  /.  55            push ebp
0049A058  /.  55            push ebp
0049A088  /.  55            push ebp
004C48F2  /.  55            push ebp
004C5311  /.  55            push ebp
004C579B   $  55            push ebp
004C5988  /.  55            push ebp
004C617D  /.  55            push ebp
004C6342  /.  55            push ebp
004C63F3  /.  55            push ebp
004C64CD  /.  55            push ebp
004C8312  /.  55            push ebp
004C836B  /.  55            push ebp
004C8399  /.  55            push ebp
004C83F2  /.  55            push ebp
004C844B  /.  55            push ebp
004C84A4  /.  55            push ebp
004C84FD  /.  55            push ebp
004C8556  /.  55            push ebp
004C85AF  /.  55            push ebp
004C8608  /.  55            push ebp
004C8661  /.  55            push ebp
004C86BA  /.  55            push ebp
004C8713  /.  55            push ebp
004C8CAC  /.  55            push ebp
004C8D92  /.  55            push ebp
004C8DFC  /.  55            push ebp
004C8E55  /.  55            push ebp
004C93A2  /.  55            push ebp
004C9528  /$  55            push ebp
004C975F  /.  55            push ebp
004C9983  /.  55            push ebp
这些地址就是包含了push 0x52019FBB的函数头部,不知道能不能理解为每一个地址都是一个子程序的开始?
接下来就是大工程了,先将登录按钮的按钮事件全部nop掉
屏幕截图 2022-01-02 203709.png
然后jmp到上面这36个地址,一个个地试,因为按照我的想法,总有一个是载入主功能窗口的。
屏幕截图 2022-01-02 203809.png
本以为是个大工程,没想到第二个就是呢?
哎呀,稀里糊涂的,怎么就给我进来了呢?以前也玩过撞库,没想到这也能撞对?
至此我们已经进入到主功能窗口了,点击启动,一个措不及防的蓝屏。
哈哈,原来启动还有个二次验证非法呢,蓝屏还是不好的,我们先将修改保存,然后转战到虚拟机吧。
防止我们调试的时候不小心触发暗桩了呢,先把蓝屏都去除吧,通过蓝屏探寻插件找到3处,我们定位过去把段首retn了,注意我这个retn后面的跟的参数是到段尾找到的,一定要首位对应
尾部是retn,那头部的push ebp也改成retn,如果跟参,那我们也把参数带上。比如此处就是retn 0x20
屏幕截图 2022-01-02 205158.png
三处都处理好之后,再点击启动就不会再触发蓝屏了,但是结束自身和删除自身还在呢?这个我没有处理,而是采用最简单原始的办法,备份原程序。
下按钮事件断点,断下之后F7进入CALL,就到了这个位置,这里就是启动按钮的按钮事件了,地址是0045EC7E先记录下来
屏幕截图 2022-01-02 205932.png
然后F8一步一步往下走,走到这里有一个很长的已经实现的跳转0045ECB4
屏幕截图 2022-01-02 210143.png
再一次F8,就跳转到这个CALL,
屏幕截图 2022-01-02 210804.png
本来想F7进这个CALL,结果手快按了一下F8单步跟踪,程序就终止了,而且释放了一个tem.vbs
哟呵,删除自身!
屏幕截图 2022-01-02 211654.png
那好办了,把那个已经实现的跳转0045ECB4给nop掉再点击启动按钮试试
屏幕截图 2022-01-02 211950.png
启动按钮的处理好了,接下来就是立即秒杀按钮的非法验证了,同样,下按钮断点后跟踪到立即秒杀按钮的按钮事件
image.png
然后F8单步跟,
屏幕截图 2022-01-02 212529.png
一个很长的,未实现的跳转,再F8一次到下面的CALL,程序就结束了,而且同样释放了tem.vbs。
JNZ是啥,不知道没关系,咱去百度搜,
JNZ不等于则跳转
JE 等于则跳转 同JZ JNE
屏幕截图 2022-01-02 213448.png
修改JNZ为je后,点击启动秒杀,提示请刷新飞车。
至此破解成功!
屏幕截图 2022-01-02 211342.png
屏幕截图 2022-01-02 211211.png
屏幕截图 2022-01-02 190617.png

免费评分

参与人数 2威望 +1 吾爱币 +21 热心值 +2 收起 理由
Hmily + 1 + 20 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
523740194 + 1 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

shi992 发表于 2022-1-22 22:18
大神,可以帮分析一下我一个安卓APP软件之前一直正常使用现在用不了,没有任何注册界面,类似游戏蜂窝的软件,https://wwm.lanzouw.com/ipe98z3oi8d
密码:7gsw,感谢感谢!
 楼主| Only1Studio 发表于 2022-1-23 11:54
shi992 发表于 2022-1-22 22:18
大神,可以帮分析一下我一个安卓APP软件之前一直正常使用现在用不了,没有任何注册界面,类似游戏蜂窝的软 ...

同学我不会安卓逆向
 楼主| Only1Studio 发表于 2022-1-2 21:46
囚徒灬 发表于 2022-1-4 11:02
程序发出来玩玩
 楼主| Only1Studio 发表于 2022-1-4 12:33

作者未同意我发原程序,不好意思哈。
风入白袍 发表于 2022-1-4 14:06
卧槽   牛 666
kll545012 发表于 2022-1-4 16:22
程序UI界面很不错
一米七五 发表于 2022-1-4 19:04
Only1Studio 发表于 2022-1-2 21:46
最后面3张图请忽略,忘记删了

故意的  你懂
nuanyang001 发表于 2022-1-4 21:56
卧槽   牛 666
nishiwnagbaji1 发表于 2022-1-5 08:30
同上  登录界面不错
Sqfighting 发表于 2022-1-5 09:28
厉害厉害!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 09:09

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表