少校
- 注册时间
- 2009-5-17
- 金币
- 1544 个
- 威望
- 29 个
- 荣誉
- 5 个
尚未签到
|
由于时间有限,我在这里就给大家演示两种方法吧,当然还有其他的方法的!4 m# n6 q' V. P4 I, }
' M# e7 _3 d1 o. u4 D3 Q
首先查壳,PECompact 1.68 - 1.84 -> Jeremy Collake
/ U8 k2 ` i. ]. B+ h0 T- m1 J
0 ?; U/ A0 k4 l$ ^& c( D1 h( L) |0 lOD载入2 ^. U, f0 y- a
. ^7 q2 l' o- t6 C+ R
方法一:单步法(忽略所有异常)
+ [. K/ [8 U, m" a7 J" t! n" h% h" K) k$ ~
大家先看一下我的操作,先做一个错误的示范。。。。/ D: s/ h2 r3 P9 V$ h; M0 h
) p a! v: v: Y U t$ ^好的,继续看操作,这次是对的~~呵呵~6 X" ~* G# i+ h% M1 ?
7 h9 _' z. j7 T9 m% [2 E0040C000 P> /EB 06 jmp short PECompac.0040C008 //停在这,继续F88 D! L) v( }+ z4 T O* r
0040C002 |68 CC100000 push 10CC
8 c6 C2 {) M9 {( q9 W. Y Z0040C007 |C3 retn7 a$ f% p6 X7 B' i: h
0040C008 \9C pushfd
. C9 o. ^, }, H/ \0040C009 60 pushad2 K1 W% U$ \& ]& V8 f
0040C00A E8 02000000 call PECompac.0040C011 //F7过
0 k& Q# ^5 E, L。。。。。。。。。。, b9 y( _; T& A3 K' [. ?$ @
0040D251 /0F84 9B000000 je PECompac.0040D2F2 //enter+ S8 r2 E: n* W r4 `
。。。。。。。。。。
2 z8 k, Z2 j x$ k, d3 o5 N( d' \
呵呵~2无法运行,那我们就修复吧~看操作,,,,,可以啦~~~接下来我们有必要用LD做优化~减肥~OK~~~
" A& R. x/ T6 M1 G$ C7 q, I) a* Q8 j) h
, H2 V4 v z" t: E
方法二:ESP定律(忽略所有异常)
2 k% d" G2 ?) A. \( y, B+ r0 q+ L! W
0040C000 P> /EB 06 jmp short PECompac.0040C008 //停在这,继续F8) D4 q5 Y3 X1 w6 X
0040C002 |68 CC100000 push 10CC
: l5 B0 N, J8 [+ a; O6 I) ]& o0040C007 |C3 retn$ ^7 I6 V5 T" ^9 C3 t q E) A
0040C008 \9C pushfd
9 G3 m4 E+ I y$ T1 \7 S" K; u0040C009 60 pushad //ESP,突现,0012ffc0
/ V7 ^# D3 v2 D; P& P0040C00A E8 02000000 call PECompac.0040C011; L' p! W7 o; i4 A) X
下命令行 hr 0012ffc0 回车,F9运行
* Q6 t4 `9 D, {6 y5 a0040D550 50 push eax //到这里了,继续F8(记得取消硬件断点^_^)
. f8 G$ O! e; C+ b" v7 x8 J0 u& |0040D551 68 CC104000 push PECompac.004010CC6 R* P% k1 V1 u7 ~# f1 s
0040D556 C2 0400 retn 4 //返回来到OEP. _( m ]& S: G4 ?
。。。。。。。。。。。。。。。
! d/ R; F5 x! x004010CC 55 push ebp 在这里dump就可以了
' p9 u) s ` C6 Y2 W- X( \/ z004010CD 8BEC mov ebp,esp- F% V# y# G# j' ]4 A
004010CF 83EC 44 sub esp,44
5 B0 Q' i+ B4 \ y% c5 D
& i7 y: D8 H, [6 Q2 R; I" p很容易就到了OEP了~~2 h& M9 |. ^0 Z4 {4 ^; Z' l m
% @5 O6 x$ ?/ a) a" p3 Z( o, n( e- C4 ]8 x
方法三:内存镜像法
0 q/ Y0 H$ Q) g5 p! C" s, r7 p0 P, C3 X/ a- c1 i
大家可以做为课后作业去完成 y1 B; K7 M6 V: E+ x8 g/ ]! H/ n- S; Y
' } x8 A+ }7 G/ l {还有就是应该可以用模拟跟踪法的~大家也可以试一下~~现在不早了~呵呵~ |
|