Squn 发表于 2008-3-28 19:49

【【【 QQ第六感V3.7的破解详解】】】

[]///// 本来准备做成动画的,后来就变成文章了。。。

///// 大家好 我是Squn

///// 今天给大家做的教程是 QQ第六感V3.7的破解教程

(包括去掉弹网页)

///// 首先 我们PEID查壳后发现是

UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo

///// 这一种壳的脱壳方法我早就做过动画了

///// 而且上网一搜一大堆 :)

///// 我们OD载入Unpack.exe(已脱壳的程序) 查找字符串↓ 这是关键

超级字串参考, 项目 121
地址=00406C98
反汇编=PUSH Unpack.0043DEA8
文本字串=您好,谢谢您使用“QQ第六感”,本软件为共享软件,您现在使用的是未注册版本。\n\n未注册版本监听只能得到QQ前五位,注册后可无限制使用所有功能,并可终身免费使用后续版本。\n\n为了您能更好的使用和对作者后续开发的支持,请您注册!\n\n注册用户可通过老版本的注册码向作者换p弓

///// 双击进去

00406C88E8 7FACFFFF CALL Unpack.0040190C         ; ///// 传说中的关键CALL 回车进去
00406C8D84C0      TEST AL,AL
00406C8F75 13    JNZ SHORT Unpack.00406CA4      ; ///// 关键跳转,但是单纯修改这个跳转是无效的、
00406C916A 40    PUSH 40
00406C9368 BCDF4300 PUSH Unpack.0043DFBC         ; 欢迎注册!
00406C9868 A8DE4300 PUSH Unpack.0043DEA8         ; 您好,谢谢您使用“QQ第六感”,本软件为共享软件,您现在使用的是未注册版本。\n\n未注册版本监听只能得到QQ前五位,注册后可无限制使用所有功能,并可终身免费使用后续版本。\n\n为了您能更好的使用和对作者后续开发的支持,请您注册!\n\n注册用户可通过老版本的注册码向作

///// 进去后代码是

0040190C51       PUSH ECX
0040190D56       PUSH ESI
0040190E8BF1      MOV ESI,ECX
00401910FF76 28   PUSH DWORD PTR
004019138D46 04   LEA EAX,
00401916FF76 24   PUSH DWORD PTR
0040191983EC 1C   SUB ESP,1C
0040191C8BCC      MOV ECX,ESP

///// 我们在 0040190C 处下 //硬件执行断点//

///// 《《 重新来

///// F9运行

///// 就断在

0040190C51       PUSH ECX
0040190D56       PUSH ESI               ; Unpack.0044E64C
0040190E8BF1      MOV ESI,ECX

///// F8单步往下跟

0040190C51       PUSH ECX
0040190D56       PUSH ESI
0040190E8BF1      MOV ESI,ECX
00401910FF76 28   PUSH DWORD PTR
004019138D46 04   LEA EAX,
00401916FF76 24   PUSH DWORD PTR
0040191983EC 1C   SUB ESP,1C
0040191C8BCC      MOV ECX,ESP
0040191E896424 28MOV ,ESP
0040192250       PUSH EAX
00401923E8 C2FFFFFF CALL Unpack.004018EA
004019288BCE      MOV ECX,ESI
0040192AE8 59FFFFFF CALL Unpack.00401888
0040192F5E       POP ESI               ; Unpack.00401844
0040193059       POP ECX               ; Unpack.00401844
00401931C3       RETN


///// ↑ 看如上代码 会发现

0040192AE8 59FFFFFF CALL Unpack.00401888

///// 这一个CALL要进去看看有什么东西了。。。

///// 我们回车进去 代码如下 ↓

004018886A 08    PUSH 8
0040188AB8 DF814300 MOV EAX,Unpack.004381DF
0040188FE8 6D470200 CALL Unpack.00426001
004018948BF1      MOV ESI,ECX
004018968365 FC 00   AND DWORD PTR ,0
0040189A8D45 F0   LEA EAX,
0040189D50       PUSH EAX
0040189E8D45 EC   LEA EAX,
004018A150       PUSH EAX
004018A283EC 1C   SUB ESP,1C
004018A58D45 08   LEA EAX,
004018A88BCC      MOV ECX,ESP
004018AA8965 F0   MOV ,ESP
004018AD50       PUSH EAX
004018AEE8 92FFFFFF CALL Unpack.00401845
004018B38BCE      MOV ECX,ESI
004018B5E8 8AFCFFFF CALL Unpack.00401544
004018BA8B45 EC   MOV EAX,         ; Unpack.0040F616
004018BD3306      XOR EAX,
004018BF8B4D F0   MOV ECX,
004018C233C8      XOR ECX,EAX
004018C43B45 24   CMP EAX,
004018C7/75 09    JNZ SHORT Unpack.004018D2      ; ///// 这个跳到清零那里 我们NOP
004018C9|3B4D 28   CMP ECX,
004018CC|75 04    JNZ SHORT Unpack.004018D2      ; ///// 这个也跳到清零那里 NOP
004018CE|B3 01    MOV BL,1
004018D0|EB 02    JMP SHORT Unpack.004018D4
004018D2\32DB      XOR BL,BL                ; ///// 这里清零了
004018D46A 00    PUSH 0
004018D66A 01    PUSH 1
004018D88D4D 08   LEA ECX,
004018DBE8 C3F8FFFF CALL Unpack.004011A3
004018E08AC3      MOV AL,BL
004018E2E8 B9470200 CALL Unpack.004260A0
004018E7C2 2400   RETN 24


///// 修改后 代码如下 ↓

004018C790       NOP                   ; ///// 这个跳到清零那里 我们NOP
004018C890       NOP
004018C93B4D 28   CMP ECX,
004018CC90       NOP                   ; ///// 这个也跳到清零那里 NOP
004018CD90       NOP
004018CEB3 01    MOV BL,1
004018D0EB 02    JMP SHORT Unpack.004018D4
004018D232DB      XOR BL,BL                ; ///// 这里清零了

///// 右键复制所有修改 保存文件为1.exe

///// 现在呢,已经算是爆破完毕了 但是还有一个问题!!

///// 它弹网页。。。

///// 那么 下面就来搞定这里

///// 右键载入1.exe

///// 下Command:bp ShellExecuteA F9运行程序

///// 断在

7D611138 > 8BFF      MOV EDI,EDI               ; USER32.SendMessageA
7D61113A55       PUSH EBP
7D61113B8BEC      MOV EBP,ESP
7D61113D83EC 3C   SUB ESP,3C
7D6111408B45 08   MOV EAX,
7D6111438365 E4 00   AND DWORD PTR ,0


///// 堆栈窗口信息为:

0012F8AC00406E6B /CALL 到 ShellExecuteA 来自 Unpack1.00406E65
0012F8B000E00D38 |hWnd = 00E00D38 ('QQ第六感V3.7(已注册)',class='#32770',parent=00C90C3E)
0012F8B40043DE80 |Operation = "open"
0012F8B80043DE88 |FileName = "http://www.v2233.com/?399"
0012F8BC0043B769 |Parameters = ""
0012F8C00043B769 |DefDir = ""
0012F8C400000006 \IsShown = 6

///// 我们反汇编跟随→00406E6B

///// 到了这里 ↓

00406E4F6A 06    PUSH 6
00406E51B8 69B74300 MOV EAX,Unpack1.0043B769
00406E5650       PUSH EAX               ; Unpack1.0043B769
00406E5750       PUSH EAX               ; Unpack1.0043B769
00406E5868 88DE4300 PUSH Unpack1.0043DE88          ; ASCII "http://www.v2233.com/?399"
00406E5D68 80DE4300 PUSH Unpack1.0043DE80          ; ASCII "open"
00406E62FF76 20   PUSH DWORD PTR
00406E65FF15 14F34700CALL [<&shell32.ShellExecuteA>]   ; shell32.ShellExecuteA
00406E6B33C0      XOR EAX,EAX               ; Unpack1.0043B769

///// 我们把这几行 给NOP掉 ↓

00406E4F6A 06    PUSH 6
00406E51B8 69B74300 MOV EAX,Unpack1.0043B769
00406E5650       PUSH EAX               ; Unpack1.0043B769
00406E5750       PUSH EAX               ; Unpack1.0043B769
00406E5868 88DE4300 PUSH Unpack1.0043DE88          ; ASCII "http://www.v2233.com/?399"
00406E5D68 80DE4300 PUSH Unpack1.0043DE80          ; ASCII "open"
00406E62FF76 20   PUSH DWORD PTR
00406E65FF15 14F34700CALL [<&shell32.ShellExecuteA>]   ; shell32.ShellExecuteA


///// 就到这里 谢谢。。

cckeyv 发表于 2008-3-28 20:04

我愿意花一元钱.........

刺痛 发表于 2008-3-28 20:13

我花钱看看了。嘿嘿!

luzechao 发表于 2008-3-28 20:28

回复一个帖子,偶把这一元钱再赚会来.....

mycsy 发表于 2008-3-28 21:27

暴力的姐姐



哈哈

姐姐最近老是发新东西 偶要努力了

要不追不上了哦

mycsy 发表于 2008-3-28 21:53



我爆了

没爆出来了啊

rongjiee 发表于 2008-3-28 23:13

哈哈厉害啊

heiye88 发表于 2008-3-29 00:01

还要买呀。买了买了。买完就看 看了再买

heiye88 发表于 2008-3-29 00:08

还要买呀。买了买了。买完就看 看了再买

nishizhu 发表于 2008-3-29 00:16

还要买呀。买了买了。买完就看 看了再买
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 【【【 QQ第六感V3.7的破解详解】】】