能力值:
( LV9,RANK:3410 )
|
-
-
2 楼
可以修改EP处为死循环
|
能力值:
(RANK:350 )
|
-
-
3 楼
最初由 fly 发布 可以修改EP处为死循环
死循环、插入CC 这些技巧在SoftICE下都好使,但在OD下,我没成功过。你成功过吗?
|
能力值:
( LV9,RANK:3410 )
|
-
-
4 楼
可以
用LordPE直接修改偏移2099处为EBFE
保存后用OllyDBG载入
F12 暂停在EP处
1000CE99 EB FE jmp short 1000CE99 ; <ModuleEntryPoint>
修改为原来的代码就可以继续调试了
|
能力值:
(RANK:350 )
|
-
-
5 楼
最初由 fly 发布 可以 用LordPE直接修改偏移2099处为EBFE
保存后用OllyDBG载入 F12 暂停在EP处 ........
谢谢,成了,原来要按F12 ;)
|
能力值:
( LV6,RANK:90 )
|
-
-
6 楼
入口改为int3,不忽略int3异常,载入一般就断下,然后恢复入口即可
我脱别人给的upack加壳的qq挂机系统的一个dll的时候,不能中断在入口.但是楼主给的这个却能停在入口,真是晕了
|
能力值:
(RANK:350 )
|
-
-
7 楼
最初由 aki 发布 入口改为int3,不忽略int3异常,载入一般就断下,然后恢复入口即可 我脱别人给的upack加壳的qq挂机系统的一个dll的时候,不能中断在入口.但是楼主给的这个却能停在入口,真是晕了
谢谢,开始用这方法没成功。这次再试一次,竞然又成功了。;)
如不插入CC、jmp eip等技巧,此时看似中断在入口,其实外壳代码己执行了一遍。
|
能力值:
( LV9,RANK:3410 )
|
-
-
8 楼
老大可以看一下新版UPack加壳的EP处理
http://dwing.go.nease.net/
手法不错
|
能力值:
( LV9,RANK:290 )
|
-
-
9 楼
完全明白了,以前装SofiICE只是用来脱DLL的壳,
看来现在也没必要了,
谢谢
|
能力值:
( LV9,RANK:970 )
|
-
-
10 楼
不修改 CC 也可以, 设置 OD break on new module(DLL), F9, 导入第一个系统 DLL 就会被断下.
然后在 77F88069 下个断点, 可以看到 DLL 的加载过程
77F88058 55 PUSH EBP
77F88059 8BEC MOV EBP,ESP
77F8805B 56 PUSH ESI
77F8805C 57 PUSH EDI
77F8805D 53 PUSH EBX
77F8805E 8BF4 MOV ESI,ESP
77F88060 FF75 14 PUSH DWORD PTR SS:[EBP+14]
77F88063 FF75 10 PUSH DWORD PTR SS:[EBP+10]
77F88066 FF75 0C PUSH DWORD PTR SS:[EBP+C]
77F88069 FF55 08 CALL DWORD PTR SS:[EBP+8] ; 这里将进入 DllMain (保证是第一次)
77F8806C 8BE6 MOV ESP,ESI
77F8806E 5B POP EBX
77F8806F 5F POP EDI
77F88070 5E POP ESI
77F88071 5D POP EBP
77F88072 C2 1000 RETN 10
我的系统是 2K, 其他系统也差不多.
|
能力值:
( LV4,RANK:50 )
|
-
-
11 楼
hying的壳都是先走一个地方执行一段代码,再执行oep处的代码
下断点ntdll!LdrpCallInitRoutine就可以看到需要执行的东西
在我的机器是这个地址
77F830D3 55 PUSH EBP
77F830D4 8BEC MOV EBP,ESP
77F830D6 56 PUSH ESI
77F830D7 57 PUSH EDI
77F830D8 53 PUSH EBX
77F830D9 8BF4 MOV ESI,ESP
77F830DB FF75 14 PUSH DWORD PTR [EBP+14]
77F830DE FF75 10 PUSH DWORD PTR [EBP+10]
77F830E1 FF75 0C PUSH DWORD PTR [EBP+C]
77F830E4 FF55 08 CALL [EBP+8] ; main_dat.007D5A42
77F830E7 8BE6 MOV ESP,ESI
77F830E9 5B POP EBX
77F830EA 5F POP EDI
77F830EB 5E POP ESI
77F830EC 5D POP EBP
77F830ED C2 1000 RETN 10
传神外挂的hying壳是先执行需要初始化的代码
77F830E4 FF55 08 CALL [EBP+8] ; main_dat.007D5A42
007D5A42 55 PUSH EBP
007D5A43 8BEC MOV EBP,ESP
007D5A45 60 PUSHAD
007D5A46 E8 04000000 CALL 007D5A4F
007D5A4B 0050 3D ADD [EAX+3D],DL
007D5A4E 005B 8B ADD [EBX-75],BL
007D5A51 1B03 SBB EAX,[EBX]
007D5A53 5D POP EBP
007D5A54 0881 EB081D40 OR [ECX+401D08EB],AL
007D5A5A 00E8 ADD AL,CH
007D5A5C 0A00 OR AL,[EAX]
007D5A5E 0000 ADD [EAX],AL
再执行ep代码
<ModuleEntryPoint> 007ED543 /E9 00000000 JMP 007ED548
007ED548 \60 PUSHAD
007ED549 E8 14000000 CALL 007ED562
007ED54E 5D POP EBP
007ED54F 81ED 00000000 SUB EBP,0
007ED555 6A 45 PUSH 45
007ED557 E8 A3000000 CALL 007ED5FF
007ED55C 68 00000000 PUSH 0
007ED561 E8 5861E97D CALL 7E6836BE
007ED566 7B FE JPO SHORT 007ED566
2个地址不一样,所以下断点在ep处是拦不住的,
可是qqlib 2次都是执行ep代码,所以下断点在ep处可以停下
77F830E4 FF55 08 CALL [EBP+8] ;1000CE99
<ModuleEntryPoint> 1000CE99 60 PUSHAD
exe文件的情况
用peditor,在directory里的tls table
CALL RtlImageDirectoryEntryToData
MOV ESI,[EAX+C]
MOV EAX,[ESI]
EAX就是初始化代码地址
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
谁能写一个QQLIB.DLL的脱壳教程?小弟我学一下
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
真的是基础太弱啊。。。郁闷
|
能力值:
( LV9,RANK:3410 )
|
-
-
14 楼
先从其他压缩壳开始学吧
跟着教程练习
UPack不难,等你练习好其他壳,这个自然就能脱了
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
版主那有菜鸟学脱壳的文章呀.
|
|
|