某模块未对上传文件类型进行验证。可上传任意文件, o8 [) M1 c' }) a! i
" h1 E- _ Y+ x' f1 l9 i
6 B( l4 p# n6 \7 f, y2 D/ _ $ v8 }; B7 d( g6 ~1 c
代码产生位置 n" v+ _1 \- t1 ^& V& U
apps\wap\Lib\Action\IndexAction.class.php+ `5 k. J0 U$ o( F/ \6 o
263行
8 J& H- I" D" vif(!empty($_FILES['pic']['name'])) { // 自动发一条图片微博
+ T; L$ E1 @1 P4 O L% d$data['pic'] = $_FILES['pic'];
$ [- c; X* ~8 M+ y$data['content'] = '图片分享';
/ @% d `1 V/ ]5 t! i5 l9 m5 G$data['from'] = $this->_type_wap;* ~0 v, Y6 [6 y# r
$res = api('Statuses')->data($data)->upload();4 z6 |" j2 Z) y5 K
}
! D% x% A% X9 y' u0 ]# Y0 \. h4 e
% O" X" r! L6 \% K0 U) c+ p未对文件类型过滤
% z' M& S: `) E& J. V$ s+ g f* t ; K% D Q$ y# ^& E; x. N+ [
访问wap 模块/ \* `/ I0 _# u, _* G
% \. l6 y. ?5 g. Q; G! W i
# V( N5 p" [1 Q5 u发一条微博并传图
8 X" W5 M6 a* ~/ z 4 Y; ^9 G4 ^$ |; j ]& D
firebug 地址
6 {! Y5 u& K4 D8 g$ y! i / B/ a, `* D& l/ T4 ]1 S+ ~
9 \, v. u1 T8 q1 h/ j. m! G! L. R8 U3 l3 s/ s* A8 k
# x8 m7 n( q! W x去掉small_然后访问+ s. J; F5 }3 @
" t5 @9 K$ q8 v2 ]3 L; y1 S+ u
http://www.myhack58.com/data/upl ... 7/50865d481c217.php
; n3 |/ K+ g8 L+ J- ~- f
. n9 [4 B8 f: e- @ 1 u' V! @5 B! t2 j+ _8 K' p
, e5 @ I. v: H3 ]+ P6 m& D
修复方案:
' Q! Z+ S8 x; ]0 z# z: h$ |! p9 a$ t/ l: N' Q- ]
对上传类型要进行检查
- L$ v u# ~3 e0 K1 R2 c! _8 ?' q4 \- V9 x2 ]( j* X+ L
M( X: g- K5 g" n* s; u, y; i |