吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4601|回复: 8
收起左侧

[原创] 小菜一枚,对论坛某个VM了的加强版CM分析

[复制链接]
我是小害虫 发表于 2013-9-20 19:29
原帖地址:http://www.52pojie.cn/thread-214365-2-1.html
小菜一枚 大牛绕过,问题很多,不喜勿喷。谢谢。。。
载入OD  发现首段是JMP  很明显的VM保护不管
作者加了反调试 那么我们先干掉他
004016A8    55              push ebp                                                此处RETN
004016A9    8BEC            mov ebp,esp
004016AB    EB 01           jmp Xa.004016AE
004016AD    0FEB01          por mm0,qword ptr ds:[ecx]
004016B0    0FE89E 000000EB psubsb mm3,qword ptr ds:[esi+0xEB000000]
004016B7    0182 F873010F   add dword ptr ds:[edx+0xF0173F8],eax
004016BD    E8 64320000     call a.00404926
004016C2    EB 01           jmp Xa.004016C5
004016C4    0FEB01          por mm0,qword ptr ds:[ecx]
004016C7    0FE87A 32       psubsb mm7,qword ptr ds:[edx+0x32]
004016CB    0000            add byte ptr ds:[eax],al
004016CD    EB 01           jmp Xa.004016D0
004016CF    BA F972018A     mov edx,0x8A0172F9
004016D4    E8 98320000     call a.00404971
004016D9    F8              clc
004016DA    73 01           jnb Xa.004016DD
004016DC  ^ 70 F8           jo Xa.004016D6
004016DE    73 01           jnb Xa.004016E1
调试中发现作者加入时钟 那么我们也把他干掉 下按钮事件
bp SetTimer 然后来到

0040FD13    8B46 40         mov eax,dword ptr ds:[esi+0x40]
0040FD16    85C0            test eax,eax
0040FD18    7E 20           jle Xa.0040FD3A                                                      此处改为JMP 让他跳过时钟
0040FD1A    8B4E 4C         mov ecx,dword ptr ds:[esi+0x4C]
0040FD1D    85C9            test ecx,ecx
0040FD1F    304E 69         xor byte ptr ds:[esi+0x69],cl
0040FD22    0050 8B         add byte ptr ds:[eax-0x75],dl
0040FD25    46              inc esi
0040FD26    1C 68           sbb al,0x68
0040FD28    E8 03000050     call 5040FD30
0040FD2D    FF15 58754700   call dword ptr ds:[<&USER32.SetTimer>]   ; USER32.SetTimer
0040FD33    C746 50 0100000>mov dword ptr ds:[esi+0x50],0x1
0040FD3A    33C0            xor eax,eax
0040FD3C    5E              pop esi
0040FD3D    C2 0400         retn 0x4

然后我们00401000   接着FF55FC5F5E来到按钮事件
然后我们随意输入55555555下好断 F7进入
00404A40    55              push ebp
00404A41    8BEC            mov ebp,esp
00404A43    81EC 0C000000   sub esp,0xC
00404A49    EB 01           jmp Xa.00404A4C
00404A4B    B8 E8000000     mov eax,0xE8
00404A50    0083 042406C3   add byte ptr ds:[ebx+0xC3062404],al
00404A56  ^ 78 E8           js Xa.00404A40
00404A58    8A01            mov al,byte ptr ds:[ecx]
00404A5A    0000            add byte ptr ds:[eax],al
00404A5C    F9              stc
00404A5D    72 01           jb Xa.00404A60
00404A5F    BD C745FC00     mov ebp,0xFC45C7
00404A64    0000            add byte ptr ds:[eax],al
00404A66    006A 00         add byte ptr ds:[edx],ch
00404A69    EB 01           jmp Xa.00404A6C
00404A6B  ^ 74 F8           je Xa.00404A65
00404A6D    73 01           jnb Xa.00404A70
00404A6F    B9 FF75FCE8     mov ecx,0xE8FC75FF
00404A74    0000            add byte ptr ds:[eax],al
00404A76    0000            add byte ptr ds:[eax],al
00404A78    830424 06       add dword ptr ss:[esp],0x6
00404A7C    C3              retn
看到这么一坨 不要紧我们F8跟进  一路各种眼花缭乱不要紧
当我们来到这个地方的时候要注意
00404AFC    83C4 08         add esp,0x8                                此处将EAX=0
00404AFF    83F8 00         cmp eax,0x0
00404B02    B8 00000000     mov eax,0x0
00404B07    0F94C0          sete al
00404B0A    8945 F4         mov dword ptr ss:[ebp-0xC],eax
00404B0D    8B5D F8         mov ebx,dword ptr ss:[ebp-0x8]
00404B10    85DB            test ebx,ebx
00404B12    74 09           je Xa.00404B1D
00404B14    53              push ebx
00404B15    E8 15160000     call a.0040612F
00404B1A    83C4 04         add esp,0x4
00404B1D    8B5D FC         mov ebx,dword ptr ss:[ebp-0x4]
00404B20    85DB            test ebx,ebx
00404B22    74 09           je Xa.00404B2D
00404B24    53              push ebx
00404B25    E8 05160000     call a.0040612F
00404B2A    83C4 04         add esp,0x4
00404B2D    837D F4 00      cmp dword ptr ss:[ebp-0xC],0x0
00404B31    0F84 46000000   je a.00404B7D
00404B37    EB 01           jmp Xa.00404B3A

作者把注册码设置成随机码所以追码就无效了那我们就通过修改返回值来实现爆破







QQ图片20130920192739.jpg

免费评分

参与人数 1热心值 +1 收起 理由
马斯维尔 + 1 欢迎分析讨论交流,[吾爱破解论坛]有你更精.

查看全部评分

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

LoongKing 发表于 2013-9-20 19:36
膜拜大牛!
 楼主| 我是小害虫 发表于 2013-9-20 19:44
E_eYYF 发表于 2013-9-20 19:36
膜拜大牛!

大牛不要逗小菜了
炫火 发表于 2013-9-20 19:50
表示我疑惑哪里VM了- -

点评

惊险大牛!  发表于 2013-9-20 19:51
马斯维尔 发表于 2013-9-20 19:52
楼主的教程非常啊。虽然我也搞定了这个CM,但是还是从楼主这里学到了很多。
 楼主| 我是小害虫 发表于 2013-9-20 19:56
炫火 发表于 2013-9-20 19:50
表示我疑惑哪里VM了- -

膜拜大牛
 楼主| 我是小害虫 发表于 2013-9-20 19:57
马斯维尔 发表于 2013-9-20 19:52
楼主的教程非常啊。虽然我也搞定了这个CM,但是还是从楼主这里学到了很多。

破解方法很多 大牛门都有自己秒破的方法 那才是膜拜之
wolaileo 发表于 2013-9-21 15:30
将  EAX=0,,,直接用MOV EAX,0 吗?
q493632284 发表于 2013-9-21 15:33
围观   学习中
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-25 15:25

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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