最近和一位木马免杀牛人交流,感觉新增进不少, $ B1 f! x5 x2 o6 x& a. O $ Y- A9 L% c- D! {特拿来分享给大家。- c9 i: h1 r5 U) d
) h6 A" S' o ?' A+ \4 y
今天我们不提我们国产的那些杀软,真的垃圾的要死,, R! f9 `5 b- V s' J
7 C3 B5 L4 y% f1 t! e
上次有位朋友叫我帮忙做上兴免杀过瑞星,说内存特征码定位在输入表3 s. ], f8 O4 n, L/ H- r9 e
. }( e j& m, |; \
我简单的重建了输入表就把瑞星搞定了, ! @* Z2 ]4 @3 F. j 6 c& l4 _5 b6 O6 {5 c) g失去信心了。我曰 ! r+ o+ u% \: m1 O4 _ e5 _) m) l. a& g2 {今天我们说的是免杀输入表,以下是我的经验,也有牛人传授的免杀方法。' ] C6 C$ f7 S/ q
8 F& O, W, c: z# a0 _* ~$ z
首先,大家要知道一点,国产的都没有高启发式扫描,瑞星,金山等都没有。! U" Z9 `! Q; I
( t, N+ Q: [/ S" V% L外国的,如nod32,卡巴,小红伞都有启发式扫描,尤其以卡巴的高启发式和他的2009主动防御难过。 5 R1 p2 d: f! h # c1 O4 {+ K7 Z: u/ L( S1 K% B高启发式扫描必然导致特殊的特征码,我建议新手朋友做卡巴等免杀的时候,先把启发式调到最低 ! k M* T i* S, u+ B e x8 ?4 ~/ ?& [( {" A过了以后再调到最高,再做免杀。 3 x1 f* W3 p4 b+ ?2 D% f % J; M0 x m0 z. \% {( i% j以上是废话, 0 u- v# j! h, ^$ o, V; W, V' ?' F: I) e9 L
好了,下面我们来说下常见的免杀输入表方法。% {# t Y/ i1 v5 q Z
& R$ S5 G+ q4 G* u" }( ^ Q, r$ `
一。移位法 ) v/ C' g: o+ F* Y+ H* G# b9 X! U# D# u9 ?* U) T
这个已经过时了,我们的国产杀软及时的跟上了时代,; g5 W( |# ]! c& G& w& y7 Y5 C5 J4 _
/ A* X* e4 Z( Y, s& O移位法在去年过金山和瑞星,还有江民都是可以过的, " T% r5 A# {% Z0 G! `* D& y: Y& M ' L& p0 \9 Q p" J. q现在的杀软智能化了,移位么?呵呵 ,追杀你。* G' A6 m$ w& f& X* u
/ j% T, T! r; t7 h4 z6 }9 s
如果你想了解怎么个移位法,去百度搜吧,大堆的老教程等你看。% e" s9 U$ i! {
- f+ o9 a4 V- F; b' F4 y5 \
二,重建输入表 9 h: ]- c) H0 [2 m$ D0 b& N+ L. n4 @
效果不错,这里说下,简单的重建输入表,还是可以过我们的国产杀软的,外国的就不行啦。哈哈2 b) J8 G; q3 m, c% y. c4 |
9 V8 H! ~4 c4 X* N
这里我介绍下,7 F2 ~" x+ }# q, A* `
, k( C0 g# q0 Q
用到工具: " U: \- Q, S+ E* S- _importrec1.6: F/ J) }' r+ s8 E. N W
od 2 X X, n4 S; B* ?1 N6 Wc32asm & z/ O8 S- n4 T& T4 zloaderpe . q4 f0 U% X8 k t, V这里我们简单的介绍下,如何重建输入表 # R2 P3 |: N, {- ~9 t* \8 A/ T( Q3 c2 a# ~5 W1 r6 u6 x
首先吧文件拖入od,打开inportrec1.6, o3 }# ]! Y- N c
) j% f V+ t9 v/ M
如图 选择拖入od的程序,& d. ^% j& X: f) H1 Z8 \
4 d# d0 t1 _+ g: r D& `2 ?; x+ v# P9 `0 u: ~, x+ @
这个时候,我们打开loaderpe,% q/ Y# @3 @. |6 Z
/ a" `0 R' x& S: T* G
拖入我们的木马 2 a# h r3 ]2 J 6 Y: M# }/ y6 }- B6 p% J6 V选择目录, ! Z$ U0 }* O/ s* ^3 r0 d " J B& u5 Q9 \: O) C& V我们看到导入表这里。。。 , U% T _2 y/ u4 Z6 r8 S% S* ]& | ' x& b) C7 y( ?如图:; b" t; Y. o. l, a- \
: I: U V" a" d' `; L3 u: D( v5 t
1 M2 x5 A2 i) v' y9 O' z
RVA地址是0001D000 大小是0000154C+ T% f; r# J/ W, Z7 d% i1 }
1 t+ d4 l+ P5 L/ O
好的,我们把这两个输入到import1.6里去 + T( r; s4 }/ ]( T; H/ `5 }9 l9 b1 P1 u2 d- z6 ~4 c; ]
就是在“加载树文件”那上面一点 2 j$ K# A! i) }/ T 0 m* ^2 t; y3 l0 h4 g Y: L! _1 ]输入RVA的地址和大小。 ' F: L. a# Q( L4 d& A& v& q: K T3 y9 _& c( H# A" F+ i4 a5 j点击“获得输入表” 4 F* k" F9 y% m8 i* S" L/ @5 S) n4 n; w
然后点击“显示无效的” 6 ?' a% c4 ?2 ^% V6 @ 3 B- S/ O$ m! {8 u; Y# j接着importrec会自动列出) t/ `6 Z* K' x/ U1 E3 P
' L. X% Q, y6 |2 f5 _
我们把深蓝色的字体 右键 剪切无效的指针! l: Z. h5 _* Q/ \- m
9 ]4 ] W3 A# [1 K! m
0 P' w& M( w. a3 X* c) [9 K& V最后,我们点“修理dump”* T6 W8 ~4 R/ _ h
/ B5 N. B+ a% Q; \2 i4 h7 ?9 x
选中我们的木马就可以了 3 n' L/ T% y: \$ ]) z6 G& x7 v2 ~4 o. p
最后我们要用到c32asm$ i+ D3 O6 z Y
1 i/ h( Z; c. a# h+ |; y: E1 z我们会看到两个输入表,我们只要把原先的输入表全部填充为00就可以了。6 b* h( J) |1 V3 t, v& d Z6 k
" p, g; L: W6 O9 i3 y这样做,只能过国产的杀软,外国的 如卡巴就免杀不了(如果他的特征码在输入表的话) 6 l% \; O* F/ Z 3 K/ t4 X; ?4 P! k. ?0 l5 I+ V这里,我教大家一个方法,也是重建输入表,可以过卡巴,不过加了个小步骤,, M7 k& R2 M+ M! Y9 A" m
+ x3 u$ u( z: i0 h6 U
我们把马子拖入od的以后,打开了importrec1.6 ; T* Q" u# \3 s( I0 m, P- o, J+ f6 s/ P( J( [, g/ G, @
在选项那里,选择根据序数建造输入表和创建新的IAT 4 m! U. j- ^, T1 R9 o# q7 d, W. B& m4 \0 ?- f3 w- e5 c
如图; o& E2 F8 [) R4 K; t7 V+ h
. W6 I" D4 Z4 W# Q* s
3 J, R: H* C+ T F以后的步骤照上面的方法继续就可以了6 \+ Z) O7 N" z2 i, ?
l! S; F2 \" g* @- w
不过此方法有个弊端就是,如果你在sp3下作的免杀 生成的服务端会在sp2的系统下运行不了! i& o: l+ u+ V' v& S5 `. D