某模块未对上传文件类型进行验证。可上传任意文件
6 a2 [( w# h' C; S9 Z' G, E3 x' Q# l( Z8 o7 ~$ H9 ^' B; E
: } e+ s3 M" v% Z* E
# K8 f/ Y& }# G" K6 ]" k代码产生位置
7 d" x' H: N! M5 K- _apps\wap\Lib\Action\IndexAction.class.php
7 R, _7 V' h7 l% @263行6 Q0 S4 B F3 J" q, C
if(!empty($_FILES['pic']['name'])) { // 自动发一条图片微博
- q6 t. J7 I4 H# O0 ^$data['pic'] = $_FILES['pic'];
9 d2 }! d) O$ ~6 a, `& k$data['content'] = '图片分享';
1 f/ z8 ]& a3 P$data['from'] = $this->_type_wap;) y# H# `; R- g- z% `2 r
$res = api('Statuses')->data($data)->upload(); }0 g2 A, s+ C d7 P& H7 x' A
}
, Y8 ~3 X0 X# b" e7 `* k9 F ; }" t# r5 Z. W1 q$ {: d* M* B
未对文件类型过滤, J7 M! x6 i- K) a9 k
% h; y/ U) m3 @6 q, [$ F
访问wap 模块
1 W4 H, P. s$ V+ T2 z; [% o2 k * m9 B6 d4 ?" c# m4 G
% a$ R8 B$ @* M/ }* W
发一条微博并传图) |- D8 ]1 V K% l: i7 X+ ~$ f% v! J
1 t' \' |. \* s9 s4 j9 u9 \4 [9 S- h D' }firebug 地址
% |# q* R' C9 K* ~. J! o
1 _( J8 X# H+ g% |8 ?1 ?6 H) M3 T2 }) a" Y3 D2 j
* C4 ]: a, N: j3 h2 h8 e
$ U. |6 s! c+ y9 e去掉small_然后访问
9 ~& C2 M+ f1 Y& Z7 O- j: g, l R* b8 ^7 |" ?3 R* C4 O
http://www.myhack58.com/data/upl ... 7/50865d481c217.php
: G* I- e$ e3 S$ ]$ A# [
( d% u7 Z. g N
& Y$ N6 q2 f' p. l- Z s6 Z7 m0 E1 h
2 q; l; s$ U7 o6 y8 @" n修复方案:3 ^- y8 c( [5 @* P( v) B, j/ Z
4 T" M c- `& P0 ?( {$ t2 J. n对上传类型要进行检查
9 p/ M, U3 t6 [5 H7 W3 J( G! Y' R5 I) ~
: Q' w) W. Q3 _$ L) _( v: C |