首页
社区
课程
招聘
[旧帖] [邀请码已发][原创]爆破某QQ游戏玩挂(求邀请码) 0.00雪花
发表于: 2009-9-9 18:14 2034

[旧帖] [邀请码已发][原创]爆破某QQ游戏玩挂(求邀请码) 0.00雪花

2009-9-9 18:14
2034
我破解的第一个软件,没有壳,需要注册,否则只能使用30次。
原程序下载地址:http://net.wg999.com/qqyx/qqyx_wg_6676.shtml
以下正文:
1.首先用PEID看了没壳,VC++6.0编写的。
2.用OD载入,执行F9,出现注册画面,选择查找,所有参考文本字串,发现有个“RegMod",跟踪看到以下源码:
004035A0  /$  56            push    esi
004035A1  |.  68 E8B24200   push    0042B2E8                         ; /FileName = "RegisterMod.dll"
004035A6  |.  FF15 6C224200 call    dword ptr [<&KERNEL32.LoadLibrar>; \LoadLibraryA
004035AC  |.  85C0          test    eax, eax
004035AE  |.  75 13         jnz     short 004035C3
004035B0  |.  50            push    eax
004035B1  |.  50            push    eax
004035B2  |.  68 B4B24200   push    0042B2B4
004035B7  |.  E8 37880100   call    0041BDF3
004035BC  |.  6A 00         push    0
004035BE  |.  E8 CD820000   call    0040B890
004035C3  |>  68 ACB24200   push    0042B2AC                         ; /ProcNameOrOrdinal = "RegMod"
004035C8  |.  50            push    eax                              ; |hModule
004035C9  |.  FF15 70224200 call    dword ptr [<&KERNEL32.GetProcAdd>; \GetProcAddress
004035CF  |.  8BF0          mov     esi, eax
004035D1  |.  85F6          test    esi, esi
004035D3  |.  75 12         jnz     short 004035E7
004035D5  |.  50            push    eax
004035D6  |.  50            push    eax
004035D7  |.  68 70B24200   push    0042B270
004035DC  |.  E8 12880100   call    0041BDF3
004035E1  |.  56            push    esi
004035E2  |.  E8 A9820000   call    0040B890
004035E7  |>  E8 2E9E0100   call    0041D41A
004035EC  |.  8B4C24 08     mov     ecx, dword ptr [esp+8]
004035F0  |.  8B40 04       mov     eax, dword ptr [eax+4]
004035F3  |.  51            push    ecx
004035F4  |.  68 38B24200   push    0042B238                         ;  ASCII "http://afeworld.512j.com/register/reg_qq_wuziqi.html"
004035F9  |.  68 30B24200   push    0042B230                         ;  ASCII "WZQ-"
004035FE  |.  50            push    eax
004035FF  |.  FFD6          call    esi
00403601  |.  83C4 10       add     esp, 10
00403604  |.  83E8 00       sub     eax, 0                           ;  Switch (cases 0..1)
00403607  |.  74 11         je      short 0040361A
00403609  |.  48            dec     eax
0040360A  |.  74 07         je      short 00403613
0040360C  |.  6A 00         push    0                                ;  Default case of switch 00403604
0040360E  |.  E8 7D820000   call    0040B890
00403613  |>  B8 01000000   mov     eax, 1                           ;  Case 1 of switch 00403604
00403618  |.  5E            pop     esi
00403619  |.  C3            retn
0040361A  |>  33C0          xor     eax, eax                         ;  Case 0 of switch 00403604
0040361C  |.  5E            pop     esi
0040361D  \.  C3            retn

分析发现这段代码就是注册界面的代码,选中 004035A0  /$  56            push    esi
发现调用“本地调用来自 00401B1B, 004028C5”,找到 00401B1B 和 004028C5 处,将两处的CALL直接NOP填充,然后选择"复制到可执行文件->所有修改"保存文件即可。
(以上注册界面这段也可以全部NOP填充,反正已经没有用了,另外RegisterMod.dll这个文件也没有用了,可以删除)
软件破解完成,经试用发现不再出现注册框,点注册,提示已注册,使用次数不再限制。

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 83
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
真爽。
会遇到个没有壳的 外挂。呵呵。
2009-9-10 08:44
0
游客
登录 | 注册 方可回帖
返回
//