某模块未对上传文件类型进行验证。可上传任意文件
+ {& \& D! ?5 w& U
6 z. ^, ?# f1 `) z y2 K# z/ O6 p* o3 Z. T$ E5 K
1 D! D+ u* n5 B- F7 H) z0 E
代码产生位置
' \* U9 t% G0 p) h6 Z0 Papps\wap\Lib\Action\IndexAction.class.php
% d. S1 e: u$ g$ ?263行4 K! R$ s+ u) l. ?
if(!empty($_FILES['pic']['name'])) { // 自动发一条图片微博8 {9 _8 {1 |' \. `$ d
$data['pic'] = $_FILES['pic'];
8 v& j6 t) @* [; m$data['content'] = '图片分享';
7 z# u8 X6 N. G0 s/ s5 ?$data['from'] = $this->_type_wap;0 n/ @" _! Y& d1 M- `8 g
$res = api('Statuses')->data($data)->upload();/ t4 c4 S+ P! ]9 z+ S% l6 y. P7 }
}
* p$ b6 }7 l7 [9 J+ b/ r' [' k' y ! I" Z# q& G1 t K$ t6 @: D, p# K
未对文件类型过滤- q( b% q7 I: V
) Q4 `9 U1 o% v7 c5 K9 i: m- K* ?0 y
访问wap 模块
' D3 o s- I# H' o3 b/ p " O$ k, u" K j1 A7 d
) j. s2 V5 T) u! N6 w+ |2 C发一条微博并传图
. M* v7 O, g/ P7 Y- p% G, M
5 d! I3 A7 H+ o3 d* bfirebug 地址
# _' ]8 A* Q- d# R: r$ O1 c 2 [. Z, v9 L) P
1 j3 E3 e7 X) P6 h7 e6 |! F1 }' j( O
. ^1 @9 e$ a, @# c- C) a" O+ c3 i8 a6 j# }
去掉small_然后访问1 i1 p4 `3 B3 L
# {) I7 J+ ], G. e
http://www.myhack58.com/data/upl ... 7/50865d481c217.php: i( `. ^7 a2 H$ v0 r) L8 L7 f
. [( \1 \7 G5 @* u/ I
6 }/ F2 J' k( x+ P) d$ i5 Z3 [
9 s* ^- s/ U6 Y- G修复方案:' S: L, ]; o2 b1 ^9 ?: Q& X
' H1 z% [7 V& ]8 g2 q对上传类型要进行检查
' ?! p8 C0 |$ q# k6 k0 e! s- O1 Y
8 u0 A: p" u' B3 F4 f" B: v, @5 ^" a0 F% p, E
|