◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
KINGCMS 关于 FCKeditor 编辑器上传漏洞解决方案
Post by LiangSai, 2009-12-6, Views:1.打开引用页或嵌入调用页。例:http://127.0.0.1/FCKeditor/_samples/default.html
2.点击“插入/编辑图像”图标,打开“图像属性-网页对话框”,点击浏览服务器。
3.按F11键把FCKeditor窗口嘬大化,得到该窗口隐藏在地址栏中的URL:"http://127.0.0.1/FCKeditor/editor/filemanager/browser/default/browse ... ctor=connectors/asp/connector.asp".
4.把Type=Image中的Image更改为"/",回车执行。结果显示为Userfiles中的所有文件夹及文件。
5.上传任意一个Asp文件,成功上传!
漏洞描述:
可以上传任意格式的文件。
v1.6之前的版本不仅"/"可用,还可用"../"直至站点根目录。
对于采用FCKeditor编辑器v1.6之后版的网站,只要短短几分钟,一个小马就可能跑入了服务器!
解决方案:
1.覆盖\editor\filemanager\browser\default\connectors\asp中的commands.asp文件。
点击下载此文件
2.如需手动修改则-->
修改\editor\filemanager\browser\default\connectors\asp中的commands.asp文件,如下:
在代码:
' Get the uploaded file name.
sFileName = oUploader.File( "NewFile" ).Name
sExtension = oUploader.File( "NewFile" ).Ext
后加入如下语句:
'添加开始 限制上传类型代码
sFileName = Mid(sFileName,1,Instr(sFileName,".")-1)
Dim FilterArray
Dim fix
Dim fixstar
fixstar=false
FilterArray=Split("BMP|JPG|JPEG|GIF|PNG|RAR|ZIP|SWF|WAV|MID|WMA","|") '允许上传类型
For fix=0 to UBound(FilterArray)
if UCase(sExtension)=FilterArray(fix) Then
fixstar=true
Exit For
Else
fixstar=false
End if
Next
if fixstar=false Then '如果不在上传类型中,则弹出窗口
sErrorNumber = "202"
Else
sFileName=sFileName&"."&sExtension
'添加结束
'下面的为文件原语句
sOriginalFileName = sFileName
Dim iCounter
.......... '省略部分代码
if oUploader.ErrNum > 0 Then sErrorNumber = "202"
Exit Do
End if
Loop
End if '在此加入IF结束语句
End if
Set oUploader = Nothing 'End
或许你还对下面的文章感兴趣
Comments
- 1.毛衣
- http://www.lexuomo.cn
- fckeditor 有这样的漏洞么? 我一直用它没发现
- 2010-5-14 18:32:34 回复

