硬件断点之四-豪迪QQ群发器
本帖最后由 mm475 于 2014-12-25 15:20 编辑今天看到论坛里的格盘、雨季,冷丝等等大牛各种玩豪迪,决定也搞一把!好吧!还是硬件断点搞定!硬件断点简单,不用去找别的,就认死理!适合我这等懒人玩玩,而且一个断点走天下,各种尾巴、暗桩全搞定……不过这也是我最后一次发硬件断点教程了,以后我也要改变下思路,要保持思维的跳跃性……好了OD载入前面的就简单带过,教程很多我就不多说了!0053E428|.803D 144F5700>cmp byte ptr ds:,0x0 byte ptr ds:必须=10053E42F|.74 10 je Xqqqf.0053E441 je跳了就是未注册版本0053E431|.BA ACE45300 mov edx,qqqf.0053E4AC ;已注册版本下硬件断点下好断点,重新载入,第一次断下老规矩,硬件断点跟随0053E1FB . /74 09 je Xqqqf.0053E2060053E1FD . |83F8 0C cmp eax,0xC 比较长度我们不管0053E200 . |74 04 je Xqqqf.0053E2060053E202 |33D2 xor edx,edx 在这里bl清零了0053E204 . |EB 02 jmp Xqqqf.0053E2080053E206 > \B2 01 mov dl,0x1 注册版bl=10053E208 >8815 144F5700 mov byte ptr ds:,dl 断点位置由bl赋值0053E20E .83F8 0C cmp eax,0xC修改方案:0053E202 33D2 xor edx,edx0053E202 B2 01 mov dl,0x1由于断点位置是在修改之后赋值!所以我们改了代码后要给断点位置也修改成1,这样我们就可以按着注册版的路线继续!第二次断下是个比较,不用管,只要byte ptr ds:=1
第三次变0了!
0053DF12|.83F8 0C cmp eax,0xC0053DF15|.74 07 je Xqqqf.0053DF1E0053DF17 C605 144F5700>mov byte ptr ds:,0x0 这里赋值00053DF1E|>803D 144F5700>cmp byte ptr ds:,0x0修改方案C605 144F5700>mov byte ptr ds:,0x1记住要改断点位置的值好了软件启动了出现验证失败!查找字符串0053D6DF|. /75 68 jnz Xqqqf.0053D749 很明显这里是要跳的0053D6E1|. |B8 98DA5300 mov eax,qqqf.0053DA98 ;验证失败!0053D6E6|. |E8 91CE0100 call qqqf.0055A57C有个网络验证什么的不用管他!直接跳过修改方案:0053D6DF|.eb 68 jmp qqqf.0053D749保存重新载入,继续005622D7|.0F9403 sete byte ptr ds:这里会让我们的断点数值变为0修改方案005622D7 C603 01 mov byte ptr ds:,0x1这可不是自慰,哈哈!!!!继续!有个暗桩点发送的时候会触发!用回溯的办法找到
00561208 55 push ebp00561209 8BEC mov ebp,esp0056120B|.51 push ecx0056120C|.53 push ebx00561266|.5A pop edx00561267|.59 pop ecx00561268|.59 pop ecx………………0056127F .^ EB F0 jmp Xqqqf_cra.0056127100561281 .8BC3 mov eax,ebx00561283 .5B pop ebx00561284 .59 pop ecx00561285 .5D pop ebp00561286 .C3 retn这个call就一处调用,而且跳转太多,懒得去分析了直接赋值Mov al,1Retn
ok
非常给力的图文教程。
475的教程,一如既往的细致,赞!
{:6_205:}讲的如此细致! 完全能让小白找到逆向的乐趣呀!
感谢作者分享,纯小白路过,虽然现在还不看懂这些东西,但顶贴是必须的。
豪迪已经被你们这帮人玩坏了。。。还玩。。
讲的非常细致,楼主大爱!谢谢了!
mm师傅就是屌、各种羡慕
哈哈,看了大大的教程 我也要去试试豪迪了
感谢楼主分享,简单易懂