某模块未对上传文件类型进行验证。可上传任意文件) |* K$ {" k" {7 _7 T8 @2 A
/ ]; e8 |: j8 B
! n! d+ z' o# v( r' C
, J% {; [% {# ^$ A; I5 v R代码产生位置2 k5 Y) I4 L1 C+ w% D/ @
apps\wap\Lib\Action\IndexAction.class.php
% h; q3 X. U1 T/ F$ e9 `263行& h4 C+ e8 ~4 V$ N' a/ H
if(!empty($_FILES['pic']['name'])) { // 自动发一条图片微博5 K3 o! p% U* h
$data['pic'] = $_FILES['pic'];
8 Y" c: g9 ^: d% e0 g+ k$data['content'] = '图片分享';+ V% h' t( |5 h+ M/ w: a q# _' v
$data['from'] = $this->_type_wap;, G5 v% J9 y0 G. Y6 Q
$res = api('Statuses')->data($data)->upload();* }* U& F1 w! H3 q& J
}
$ q/ L( V; x, @$ Q9 U9 ]2 u6 S/ H 9 ^2 m ]% `) y3 I* {8 _
未对文件类型过滤
; q2 B5 W; h7 l# y" `- e& D5 W ; {. i, B& V% B& t% I' }- o
访问wap 模块8 k; a% ~+ h- R4 j* e* u6 r8 V
, T9 O# @0 | n
9 d: Q0 N8 j0 @0 s; S9 S( r( h! a& r( |
发一条微博并传图
7 K9 @/ y. J' S+ Y " w4 l5 @3 l7 |' F0 y+ C* g
firebug 地址6 V2 F2 C5 N% b4 G
( q8 t, \( j& ^
9 u9 \2 z$ G, t8 ?" j
0 w* O, {* U* H/ e! m) v' A. K
/ t6 }1 L) I: [9 A: a. ? ^去掉small_然后访问
7 [6 x- D) U; `+ j' `+ A% f4 E# i$ I3 P0 d
http://www.myhack58.com/data/upl ... 7/50865d481c217.php: z. H8 h# W0 d. W/ u P$ w
# i* c* o, t" }# H
5 O' S6 l! i8 f& \8 a2 {
' G- q3 }8 l, x9 I) j# f- z( m. I) h修复方案:
& e* d& m, o/ K: T+ o* a+ s i' S' i" B9 z4 s% Z/ j' `# v) T
对上传类型要进行检查/ r, y ~" j1 e% Q* U
`. w. z- N6 w3 _
4 {( l' l+ B- w( }- c |