少校
- 注册时间
- 2009-5-17
- 金币
- 1544 个
- 威望
- 29 个
- 荣誉
- 5 个
尚未签到
|
由于时间有限,我在这里就给大家演示两种方法吧,当然还有其他的方法的!* |7 ?+ U& d, S& `/ A. z* b
1 u! K- u/ b1 E5 K s
首先查壳,PECompact 1.68 - 1.84 -> Jeremy Collake; m5 o1 ?: ^2 W Y, D2 W3 L$ ^
3 G- x$ h# D) K8 ^9 _) O( MOD载入6 B9 f% X- _6 H, M+ Q# P! R2 U
7 l" l- L. V& r: }& m6 q4 }方法一:单步法(忽略所有异常)
n! U: s% t: g7 M2 V! Q o) O% O
4 c1 W0 L8 a# Z; u, y1 f+ E大家先看一下我的操作,先做一个错误的示范。。。。
! F5 |2 h+ `3 u
. N- v8 Z. I1 B& @好的,继续看操作,这次是对的~~呵呵~
6 Z* f$ Q) l2 H- m/ {7 |- P
2 T8 Y2 A c4 n1 r, a0040C000 P> /EB 06 jmp short PECompac.0040C008 //停在这,继续F8: B6 q D( h; R' u
0040C002 |68 CC100000 push 10CC: X7 U n1 z* }* \
0040C007 |C3 retn, U2 P) _! w Z" |( i
0040C008 \9C pushfd$ |. V3 S6 G! M1 ]2 ^3 z, S* ]
0040C009 60 pushad
) B& ?4 ?- |7 R6 T, P0040C00A E8 02000000 call PECompac.0040C011 //F7过
; w& o" m8 r$ w5 C0 R。。。。。。。。。。2 S) H, `6 `* r2 h' Y5 `' M2 Z: x
0040D251 /0F84 9B000000 je PECompac.0040D2F2 //enter
. K e: v! v2 E。。。。。。。。。。% p$ [2 a$ _4 H1 t2 X6 C- O
. V4 s0 I' ]3 D1 J( ~" p呵呵~2无法运行,那我们就修复吧~看操作,,,,,可以啦~~~接下来我们有必要用LD做优化~减肥~OK~~~1 Y1 d) v+ _' R0 B% k* Q$ c _" U
7 b A3 y3 S6 L; J) z, Z. S
6 o$ w# V6 o! ? {' S+ F7 F方法二:ESP定律(忽略所有异常)
3 f2 ]: ^& ? J3 ^( ~2 C2 M: m! N% q, J/ B
0040C000 P> /EB 06 jmp short PECompac.0040C008 //停在这,继续F8
& {* u5 J4 \4 Y0 i+ a- U% M' L7 R% w0040C002 |68 CC100000 push 10CC
$ ~6 Q0 \, R$ I& r$ F5 W0040C007 |C3 retn
+ X# C6 m- X& B0040C008 \9C pushfd
: q7 m4 U6 `- i+ @" g* g+ y' O0040C009 60 pushad //ESP,突现,0012ffc0
6 \8 u: g: O0 [5 j. f; p0040C00A E8 02000000 call PECompac.0040C011 k' I6 P8 L4 ~0 a4 Z- S9 H0 x
下命令行 hr 0012ffc0 回车,F9运行
2 {/ a4 O" M$ D# I0040D550 50 push eax //到这里了,继续F8(记得取消硬件断点^_^)
1 G1 C; t' L, B0040D551 68 CC104000 push PECompac.004010CC! E2 b- w" [( W7 t1 b/ p- R" z
0040D556 C2 0400 retn 4 //返回来到OEP
& ]+ j3 v0 v+ U7 a/ _。。。。。。。。。。。。。。。% y0 L% S, F3 n
004010CC 55 push ebp 在这里dump就可以了
7 r) d. p& q" S' k& O004010CD 8BEC mov ebp,esp/ @. z8 |" i0 i) w4 J! \
004010CF 83EC 44 sub esp,44- Q* M" Y4 `4 F0 u
8 Q" ?2 b5 E0 K/ M' h' G- `" [
很容易就到了OEP了~~$ o5 g3 n/ b0 @. L% Z
: ^% o. \" u2 Y1 E) g
7 `5 }/ f% q! H/ B5 n方法三:内存镜像法& @( S8 j, A' y- q/ J" w3 k7 ~0 {, O
" `9 f1 \% W+ d8 r4 V9 W( \& q大家可以做为课后作业去完成
8 d9 M: ?3 @* _& w6 y! h/ w0 v6 `. J; I0 o1 y! G
还有就是应该可以用模拟跟踪法的~大家也可以试一下~~现在不早了~呵呵~ |
|