实战破解000- 短信轰炸机的爆破


实战破解000- 短信轰炸机的爆破

软件截图

image


爆破

软件链接
X96Dbg附加上去 , 有壳子 ,转到0X401000
image
是易语言程序的特征 , 并且没有将代码VM , 搜索特征码FF55FC5F5E(易语言按钮事件)

image

E-Debug分析一下 , 单步跟踪进去

image

判断编辑框1是否有内容

image

将40B42F其改成jmp ,40B4C1是判断编辑框2是否有内容 , 也改成jmp

image

单步跟踪到40B59F,进入了第一个验证CALL(0040BF09) , 返回 “ 账号不能为空” ,在这下上断点,我们修改编辑框1内容

image

账号不为空的时候返回 eax:""签名错误""

image

因为我们没有正版卡密,所以无法知道这个验证CALL应该返回什么值,给验证CALL打上标签,并在验证CALL下上断点,防止第二次验证,让我们继续往下跟,发送token,我不知道token是啥,在未来的网络验证编写后,一定补上这个知识点

image

单步到这里 , 发现一个长跳转 , 按下G键 , 打开流程图

image

我们要跳转的地方,要执行的代码太少了 (我们优先让代码走更多的代码)将0040B66E NOP掉

image

往下单步 , 走到了 这个地方 , 0040B6A0 , 0040B6C0 , 应该是属于验证回调,EAX为回调ID
0040B691      | 8D45 FC                      | lea eax,dword ptr ss:[ebp-4]              | [ebp-4]:"\"签名错误\""
0040B694      | 50                           | push eax                                  |
0040B695      | 8D45 F8                      | lea eax,dword ptr ss:[ebp-8]              | [ebp-8]:&"{(K"
0040B698      | 50                           | push eax                                  |
0040B699      | 8B0424                       | mov eax,dword ptr ss:[esp]                |
0040B69C      | 8B00                         | mov eax,dword ptr ds:[eax]                |
0040B69E      | 8B00                         | mov eax,dword ptr ds:[eax]                |
0040B6A0      | FF50 0C                      | call dword ptr ds:[eax+C]                 |
0040B6A3      | B8 EFD15600                  | mov eax,短电炸死你.56D1EF                      | 56D1EF:"user"
0040B6A8      | 8945 F4                      | mov dword ptr ss:[ebp-C],eax              | [ebp-C]:"user"
0040B6AB      | 8D45 F4                      | lea eax,dword ptr ss:[ebp-C]              | [ebp-C]:"user"
0040B6AE      | 50                           | push eax                                  |
0040B6AF      | 8D45 F8                      | lea eax,dword ptr ss:[ebp-8]              | [ebp-8]:&"{(K"
0040B6B2      | 50                           | push eax                                  |
0040B6B3      | 8B0424                       | mov eax,dword ptr ss:[esp]                |
0040B6B6      | 8B00                         | mov eax,dword ptr ds:[eax]                |
0040B6B8      | 8B00                         | mov eax,dword ptr ds:[eax]                |
0040B6BA      | FF50 24                      | call dword ptr ds:[eax+24]                |
0040B6BD      | 8945 F0                      | mov dword ptr ss:[ebp-10],eax             |
0040B6C0      | 8B5D F4                      | mov ebx,dword ptr ss:[ebp-C]              | [ebp-C]:"user"

image

继续往下跟踪 , 还会有几个进 "回调"CALL的地址 不管他们
0040B787 ->0040B828 ,一段很多参数的CALL , 很多参数一般不管他,F8步过

image

EAX变为了0,没啥用,给这个CALL(00407CEE)打上未知CALL , F8下去
单步走下去遇到了第二个验证 0040C265 , 返回值eax:""签名错误""

image

往下单步,出现文本比较,5849E0:""验证成功"" - [ebp-10]:""签名错误""

image

看来 0040C265 验证2CALL是关键CALL 了 , 将其修改成这样

image

载入功能窗口了 , F9运行起来

image

弹出"验证成功",看来0040C265是判断是否是VIP ,00407CEE是判断用户操作是否合法

image

测试功能(正常) 保存补丁

image

效果图

image


请勿用于非法用途,后果自负!


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM