某模块未对上传文件类型进行验证。可上传任意文件
' y- j g! l E8 O
- h. T; d1 H) g" o+ Q/ G' k
4 ?; I6 \9 t8 F5 ~ 9 L) N: [* d, Q3 U4 P Q, J g
代码产生位置, j' F4 B$ p O, i2 ^
apps\wap\Lib\Action\IndexAction.class.php
" i" Z4 G! \3 J0 u1 j263行6 V% S* q4 m! B
if(!empty($_FILES['pic']['name'])) { // 自动发一条图片微博
# R8 q/ R4 ^6 d$data['pic'] = $_FILES['pic'];; @4 v% R7 ~( C/ G/ j0 H v
$data['content'] = '图片分享';
. |0 ]' [7 @, c! j* U5 P$data['from'] = $this->_type_wap; \- t- I N/ X% A k: N' P
$res = api('Statuses')->data($data)->upload();
, o) w& }3 Z* C& P! ]. i$ r, v}% K# R% x* u. a8 a+ `% i& f1 l1 {
" b4 M6 n% {! _4 d( h& a
未对文件类型过滤/ T4 v- y0 R+ b ^: ]# D ~9 W
+ \3 i8 |4 Y6 x/ [
访问wap 模块+ N: u8 M+ }5 R: b: ?4 n
: m3 y9 m4 `; h# x7 N
8 v7 L2 K) W. b# b# N发一条微博并传图) {/ ]" L# Y( e! q1 p
3 j- V2 r- z$ U' u5 L9 l7 f' d
firebug 地址
1 {& H! W' q H6 y# Y- C9 L2 u: t
+ |: Y' r. J8 H9 l% ~8 N
: L- Y+ Z( k) p0 r& d8 B4 f$ y: B; h# W# N" `1 i
/ q4 v( D! l& V; j4 D/ h3 L去掉small_然后访问9 F' W0 s4 o- B! q
3 c* w) s' \* g# v7 K$ t. k$ C2 vhttp://www.myhack58.com/data/upl ... 7/50865d481c217.php
4 M# j' m9 y, d! h" E5 _# c
9 b# p6 Q+ S/ z: H0 y 0 t% o6 O) P9 I, w7 [4 }
X/ W0 G8 n" B% b6 P- I+ k) S修复方案:" v- \* k# B% C4 J- z- G7 M1 Q
7 [, K; I6 Y) M
对上传类型要进行检查, { ]- U; l5 F
" s+ U' D7 v. Y: ^* M/ q8 v: W9 t, C G. {) A0 K4 @: n
|