少校
- 注册时间
- 2009-5-17
- 金币
- 1544 个
- 威望
- 29 个
- 荣誉
- 5 个
尚未签到
|
由于时间有限,我在这里就给大家演示两种方法吧,当然还有其他的方法的!
4 e/ F- L0 V% x% D Z {5 q
7 L, R7 t# o3 z3 i5 s6 ]: M1 R( ~首先查壳,PECompact 1.68 - 1.84 -> Jeremy Collake
* r6 K. t F: x+ q) l9 F- f2 p" k
4 J+ ?/ T8 k& VOD载入
, ~7 P7 R4 z9 i) q- c# l' g6 g
6 r- Q9 F# ^- }3 a1 \方法一:单步法(忽略所有异常)
* }# L3 K% y3 `+ }
9 V7 B5 E8 s9 i7 X大家先看一下我的操作,先做一个错误的示范。。。。: t* k9 o5 e( ~0 H- J2 c# d7 ]+ m
! Z3 _( B8 _# k+ I* x好的,继续看操作,这次是对的~~呵呵~
4 {0 P0 r& {# U. s% ?6 s0 y( e7 m7 \
0040C000 P> /EB 06 jmp short PECompac.0040C008 //停在这,继续F8
$ _" f, a6 I+ T! J! g$ K0040C002 |68 CC100000 push 10CC
. I$ c3 x: u. Q7 v0040C007 |C3 retn
0 A9 c" Z4 N7 r1 b% e0040C008 \9C pushfd
5 J8 p( ^# o2 ]/ z ~* s0040C009 60 pushad
2 ]: r* ~, P; o7 n0040C00A E8 02000000 call PECompac.0040C011 //F7过
( k) K8 t9 S% J& Y) f& R$ _+ z# j。。。。。。。。。。6 \5 l; A0 [4 {% w
0040D251 /0F84 9B000000 je PECompac.0040D2F2 //enter
& Q$ ?( x7 E2 r# g0 d- }4 W。。。。。。。。。。, O; p% H# Y3 R7 n2 J) S
5 g' S$ a6 I7 ]7 n呵呵~2无法运行,那我们就修复吧~看操作,,,,,可以啦~~~接下来我们有必要用LD做优化~减肥~OK~~~
; C$ ]) s0 j$ f% Y( \
& I/ U6 m' G+ {9 z, h0 ~9 R/ c2 r) {+ I% C5 v/ s7 M& @
方法二:ESP定律(忽略所有异常)
: z: ^0 g) L0 f" L
! I1 s* U, e/ q3 }2 R8 N0040C000 P> /EB 06 jmp short PECompac.0040C008 //停在这,继续F8
; a8 {+ Y3 {6 } V$ B0040C002 |68 CC100000 push 10CC
1 W9 X( c2 R' A9 M( s- O0040C007 |C3 retn) D) Z; }/ R O$ X( Y6 M
0040C008 \9C pushfd* Q, y$ }8 j( G# ?" b; [ E
0040C009 60 pushad //ESP,突现,0012ffc0
: ]) `; k' X8 {0040C00A E8 02000000 call PECompac.0040C0112 H2 {2 f" c! h2 ]7 t c
下命令行 hr 0012ffc0 回车,F9运行5 T% g3 Q9 x# o# }, P
0040D550 50 push eax //到这里了,继续F8(记得取消硬件断点^_^)2 L: C9 R% ]; Q5 {9 h
0040D551 68 CC104000 push PECompac.004010CC
$ ?- @; q6 h. F5 g* }8 m8 A0040D556 C2 0400 retn 4 //返回来到OEP o) i1 X5 `5 m
。。。。。。。。。。。。。。。, x) @9 t& d; l6 k
004010CC 55 push ebp 在这里dump就可以了
7 b4 O' T5 C/ B9 R0 k004010CD 8BEC mov ebp,esp
: I2 X2 t4 t# @8 L% B. {004010CF 83EC 44 sub esp,443 j6 V% T1 T( A: _" o) Y9 ^8 e
3 c. Y) @# k: H" r
很容易就到了OEP了~~
: T5 ]) R i$ @4 d1 K. X" m/ F7 P7 g2 p( p
) R( A7 p2 ~' e. {0 R- S4 ~0 K- `方法三:内存镜像法+ ^( t& ]; H4 Q" g3 t2 v
9 f2 t$ ~ _; y. S }% \+ b
大家可以做为课后作业去完成
0 n) r/ n; q0 {, r. i
: ^2 Y8 c m5 }+ @3 r/ Z+ c' E3 R还有就是应该可以用模拟跟踪法的~大家也可以试一下~~现在不早了~呵呵~ |
|