LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

ewebeditor漏洞修复【转】

admin
2010年8月13日 10:23 本文热度 4388

今天用了以下eWebEditor,根据网上一篇文章改了一下.因为怕被黑啊,网上都有eWebEditor漏洞的攻击方法,所以得改改,怕怕!

第一步:下载eWebEditor2.8 修正版

下载地址http://ewebeditor.webasp.net/download.asp
解压放到项目文件目录下. 为了方便使用我把文件改名为ewebeditor

第二步:修改相关调用到编辑器的ASP文件


第三步:修改eWebEditor编辑器

1,使之支持插入分页符
打开eWebEditor/db/ewebeditor.mdb =>
打开eWebEditor_Button表=>
在倒数的21行
B_Title 字段的值为”显示或隐藏指导方针”修改为”插入系统分页符”
B_Event 字段的值为” showBorders()”修改为” insert('SplitPage')”
打开 WebEditor/Include/Editor.js
在777行之前插入
case "SplitPage": // 插入分页符
insertHTML("


");
break;
2,修改编辑器上传文件的保存路径
打开eWebEditor_Style表
找到你使用的样式所在的行,我用的是s_newssystem 修改 S_UploadDir 字段的值
我是改成..../UpLoadFiles/
这样我用编辑器上传的图片等都会在根目录的UpLoadFiles文件夹下.

第四步:编辑器的安全性

1、先用admin登录到后台,修改密码,然后删除admin_login.asp文件,如果不需要上传的话,最好连upload.asp也一起删除掉。


2、删除Manage/ Library/ ewebeditor文件夹下所有以Admin_开头的文件.
删除Admin文件夹(里面是对我们无用的图片),删除Example 文件夹(eWebEditor示例).

以下是我的个人总结,只代表个人观点

1.修改eWebEditor的数据库名字.

2.删除eWebEditor后台管理文件

3.修改Upload.asp文件

在Upload.asp文件里面,找到这句话sAllowExt = Replace(UCase(sAllowExt), "ASP", "")

把这句话替换为
Do While InStr(sAllowExt, "ASP") or InStr(sAllowExt, "CER") or InStr(sAllowExt, "ASA") or InStr(sAllowExt, "CDX") or InStr(sAllowExt, "HTR")
sAllowExt = Replace(sAllowExt, "ASP", "")
sAllowExt = Replace(sAllowExt, "CER", "")
sAllowExt = Replace(sAllowExt, "ASA", "")
sAllowExt = Replace(sAllowExt, "CDX", "")
sAllowExt = Replace(sAllowExt, "HTR", "")
sAllowExt = Replace(sAllowExt, "CGI", "")
sAllowExt = Replace(sAllowExt, "ASPX", "")'
sAllowExt = Replace(sAllowExt, "ASP .JPG", "")
sAllowExt = Replace(sAllowExt, "CER .JPG", "")
sAllowExt = Replace(sAllowExt, "ASA .JPG", "")
sAllowExt = Replace(sAllowExt, "CDX .JPG", "")
sAllowExt = Replace(sAllowExt, "HTR .JPG", "")
sAllowExt = Replace(sAllowExt, "CGI .JPG", "")
sAllowExt = Replace(sAllowExt, "ASPX .JPG", "")
Loop

EWebEditor漏洞改进方法:

1.在EWebEditor中加入IP控制
<%
''建立连接
dim conn,connstr
connstr="driver={sql server};server=.;uid=yst06;pwd=yst06;database=yst06"
set conn=Server.Createobject("ADODB.Connection")
conn.open connstr
''***************************************************
''功能:实现字符长度的控制
''参数:cutstr
''***************************************************
function cutstr(tempstr,tempwid)
if len(tempstr)>tempwid then
cutstr=left(tempstr,tempwid)&"..."
else
cutstr=tempstr
end if
end function
userip = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
If userip = "" Then
userip = Request.ServerVariables("REMOTE_ADDR")
end if
userip=cstr(userip)
''Response.write userip&"
"
''Response.write Instr(userip,"*")-2
''Response.End()
''ip="210.29.168.123"
''Response.write Instr(ip,"*")
''Response.end()
set rs=server.createobject("adodb.recordset")
sql="select * from IP where state=1"
rs.open sql,conn,1,1
do while not rs.eof
TrustIp = Trim(Rs("IP"))
if Instr(TrustIp,"*")=0 then
if TrustIp = userip then
UserIpTrusted = True
exit do
else
rs.movenext
end if
else
Position=Instr(TrustIp,"*")-2
if left(TrustIp,Position) = left(userip,Position) then
UserIpTrusted = True
exit do
else
rs.movenext
end if
end if
loop
if UserIpTrusted = False then
Response.write ""
end if
%>
2.更改EWebEditor文件夹名称
比较麻烦,尚未实现
3.修改EWebEditor管理后台(用户名/密码/允许文件上传类型)
4.修改EWebEditor中文件过滤类型asp,cer,cdx,htr,stm,asa(Upload.asp)
'' 任何情况下都不允许上传asp,CER,ASA,CDX,HTR,stm脚本文件
sAllowExt = Replace(Replace(Replace(Replace(Replace(Replace(UCase(sAllowExt), "ASP", "**"), "CER", "**"), "ASA", "**"), "CDX", "**"), "HTR", "**"),"stm","**")(这个不建议,还是用上面其它人写的过滤代码吧)
5.修改EWebEditor的数据库路径,并在Include/Startup.asp中更改连接语句。


该文章在 2010/8/13 10:24:00 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2025 ClickSun All Rights Reserved