某模块未对上传文件类型进行验证。可上传任意文件% F' @* q6 R) w* ~& ]" J
o) d+ z9 b; [% |3 y1 X
9 ?3 K) Q4 W) p g . O! M6 Q0 A* I4 {8 ^
代码产生位置
! C) N" p/ w6 I7 r1 x* k" P5 d* Happs\wap\Lib\Action\IndexAction.class.php
# j3 {" d7 X H# m263行
) @# V3 O9 X. T6 }& F% _if(!empty($_FILES['pic']['name'])) { // 自动发一条图片微博
- H7 J$ Z# M, u* q$data['pic'] = $_FILES['pic'];8 H& j l: a1 v- Z
$data['content'] = '图片分享';
; Q1 s Q3 F$ F+ O; e2 T$data['from'] = $this->_type_wap;* D7 G7 T _+ L7 h8 X8 E4 y, m
$res = api('Statuses')->data($data)->upload();+ Z. {) i/ {. c3 ]) f/ @7 T, x k
}7 m0 H0 a6 `- f5 }" j
7 ]# z- R0 D0 h& s4 {
未对文件类型过滤
( ^* ` N' l: G6 C # [* @: \$ M+ q# O( n
访问wap 模块
3 i/ F d# A: H6 u8 w & n: Z9 {0 v) V6 H: h0 ]: z& P6 O
: S' o6 J) d% N$ _发一条微博并传图4 Z R9 \) @& i0 T; s
" [4 z& q% y+ z
firebug 地址
* {/ k; E2 V% @4 ?3 i - R% V( j3 F7 e
6 t$ D/ g( Y M& h
# ~* k/ W: Q! c) I8 a& O. n+ \6 a& A
去掉small_然后访问
6 \3 v# M. D" I3 `% A9 b! u8 p) k
http://www.myhack58.com/data/upl ... 7/50865d481c217.php
! c# D4 x; W4 ?6 d
" [6 N! q# Q8 x- q/ P) O9 m
3 [& A9 {; m3 }- Z7 L' M u' H; o7 b# l7 L% [+ b% e
修复方案:8 Y; v& ?; @( b Q
7 B% L& T5 d: B2 t) x7 N- ?对上传类型要进行检查5 s- m: e* ]; O8 [0 {
- E& w4 W- ?' K/ F; @8 K9 X0 ?
/ {0 P, g! ?. u7 }# i1 [3 ~ |