能力值:
( LV3,RANK:30 )
|
-
-
2 楼
先去掉吧~估计是软件自身问题~
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
去掉什么?怎么去掉?
我很菜的
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
转个文件给你看看
脱yoda's Protector 1.3 - Ashkbiz Danehkar
【文章作者】: 未秋叶已落
【作者邮箱】: [email]33445621@163.com[/email]
【作者QQ号】: 307727654
【软件名称】: QQ空间人气精灵
【加壳方式】: yoda's Protector 1.3 - Ashkbiz Danehkar
【编写语言】: Microsoft Visual Basic 5.0 / 6.0
【使用工具】: OD PEID
【操作平台】: WinXP
【作者声明】: 首先感谢:完美!这个软件是他给我练习用的,但本人真的很菜,几天尝试均未成功。是他让我一直没有放弃,今晚尝试了30多次终于成功脱壳。告诉同我一样菜的鸟:只要不放弃就会有希望!
--------------------------------------------------------------------------------
【详细过程】
首先用PEid查壳,yoda's Protector 1.3 - Ashkbiz Danehkar。
用OD载入,忽略除非法访问内存以外的所有异常,然后按CTRL+F2重新载入,
F9运行停了下来,这里看一下堆栈窗口,如下:
0012FFAC 0012FFE0 指向下一个 SEH 记录的指针
0012FFB0 0050890B SE处理程序
0012FFB4 7C930738 ntdll.7C930738
0012FFB8 FFFFFFFF
0012FFBC 7FFDE000
0012FFC0 0012FFF0
0012FFC4 7C816FD7 返回到 kernel32.7C816FD7
0012FFC8 7C930738 ntdll.7C930738
0012FFCC FFFFFFFF
我们在主窗口Ctrl+F输入0050890B(为什么要输入0050890B依据是:0012FFB0 0050890B SE处理程序 ),跟随来到
0050890B 55 PUSH EBP
在这里F2下断点,Shift+F9运行。取消断点,F8向下单步走来到
00508934 3E:89B8 B800000>MOV DWORD PTR DS:[EAX+B8],EDI ; QQ空间人.00507017
到这里时可以看到注释窗口里提示如下:
EDI=00507017 (QQ空间人.00507017)
堆栈 DS:[0012FD98]=00508982 (QQ空间人.00508982)
在这里我们Ctrl+F输入00507017跟随到
00507017 90 NOP
在这里我们要向上看,可以看到有一个JMP EAX如下:
00507010 B8 48475000 MOV EAX,QQ空间人.00504748
00507015 FFE0 JMP EAX
00507017 90 NOP
00507018 90 NOP
我们选中JMP EAX行,F2下断点,F9运行,再F2取消断点,F8来到:
00504748 94 XCHG EAX,ESP
00504749 BC 31475000 MOV ESP,QQ空间人.00504731
0050474E B9 17000000 MOV ECX,17
00504753 80340C DB XOR BYTE PTR SS:[ESP+ECX],0DB
00504757 ^ E2 FA LOOPD SHORT QQ空间人.00504753
00504759 94 XCHG EAX,ESP
0050475A 90 NOP
0050475B 90 NOP
0050475C 90 NOP
0050475D FFE0 JMP EAX
0050475F FFE8 JMP FAR EAX ; 非法使用寄存器
00504761 0000 ADD BYTE PTR DS:[EAX],AL
在这里我们依旧选中
0050475D FFE0 JMP EAX
F2下断点,F9运行到这里,F2取消断点,F8单步来到:
00504731 B8 C0455000 MOV EAX,QQ空间人.005045C0
00504736 B9 71010000 MOV ECX,171
0050473B 803408 08 XOR BYTE PTR DS:[EAX+ECX],8
0050473F ^ E2 FA LOOPD SHORT QQ空间人.0050473B
00504741 FFE0 JMP EAX
00504743 B9 8B508F83 MOV ECX,838F508B
在这里我们又看到JMP EAX,我们还是选中JMP EAX这一行。
00504741 FFE0 JMP EAX
F2下断点,F9运行,F2取消断点,F8单步来到:
005045C0 60 PUSHAD
005045C1 BE 00C04B00 MOV ESI,QQ空间人.004BC000
005045C6 8DBE 0050F4FF LEA EDI,DWORD PTR DS:[ESI+FFF45000]
到这里后我们就可以F8一路不回头向下跟了,最终来到:
00504720 83C3 04 ADD EBX,4
00504723 ^ EB D8 JMP SHORT QQ空间人.005046FD
00504725 FF96 E45D1000 CALL DWORD PTR DS:[ESI+105DE4]
0050472B 61 POPAD
0050472C - E9 43CBEFFF JMP QQ空间人.00401274
00504731 B0 C0 MOV AL,0C0
当走到
0050472C - E9 43CBEFFF JMP QQ空间人.00401274
这个远跳就会把我们带到OEP
00401274 68 D0174000 PUSH QQ空间人.004017D0 ; ASCII "VB5!6&vb6chs.dll" //OEP,在这里脱壳
00401279 E8 F0FFFFFF CALL QQ空间人.0040126E ; JMP 到 MSVBVM60.ThunRTMain
0040127E 0000 ADD BYTE PTR DS:[EAX],AL
到这里这个壳就脱完了。
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
学海无涯,但我永不止步
|
|
|