设置任何情况均不允许上传asp文件,但是我们可以突破,既然程序会把asp替换,那我们在上传文件设置里设置允许上传扩展名为aaspsp的文件,因为程序检查扩展名时把asp替换为Null,那么aaspsp就变成asp,就可以上传asp文件了

图11:上传文件扩展名设置

图12:经过设置后asp文件可以上传!
当然我们还可以设置允许上传asa、cer等也能被asp.dll解析的文件来达到目的。
缓解因素:首先需要取得ewebeditor的后台权限。
注:以上ewebeditor编辑器的漏洞在最新免费版本2.8修正版中也存在,商业版未做测试。
2、其他修改版本简单分析
其他修改版本中的玩乐吧版,直接把数据库改成了#$%mmpic%$#.asp(j111版改为j111mm.asp),初衷是为了防止下载,虽然通过http://target/data/#$%mmpic%$#.asp 不能下载,但是用flashget下载如下url则可以下载:
http://target/data/#$%mmpic%$#.asp
这里涉及url编码的问题,因为#$%是非数字和字母,字母不需要编码,如果编码也是可以识别的,编码的规则是%加ascii码的16进制,#$%的ascii码为35、36和37,16进制则是23、24和25。因此#$%mmpic%$#的url编码是#$%mmpic%$#。url编码经常被攻击者用于Phishing钓鱼攻击,这里不再展开。
Ce-Admin的密码是明文的,所以下载数据库后用access打开可以得到管理员密码直接登陆管理页面,然后添加新闻,或者构造表单添加新闻,在标题内输入一句话asp木马:发布后,http://target/data/#$%mmpic%$#.asp成了webshell,可以上传其他asp木马进行其他非授权的活动,甚至提升权限得到系统管理权限。
3、漏洞防范
? * del.asp和save.asp
针对del.asp和save.asp的来源未检查以及web路径暴露漏洞,我们可以在这两个文件中加上头文件:处理 SSI 文件时出错
check.asp内容如下:

* session欺骗漏洞
对于session欺骗,相关的是cookie欺骗,相对来说session比cookie更安全一些,因此我们不建议你改用cookie验证。建议选择设置比较安全的虚拟主机,并加强对服务器的安全管理。
? * 目录遍历漏洞
在admin_upload.asp中找到sDir = Trim(Request("dir")这行,修改为:
sDir = Replace(Trim(Request("dir")),"..", "/")
? * ewebeditor上传漏洞
可以把upload.asp文件中的sAllowExt = Replace(UCase(sAllowExt), "ASP", "")改为:

因为很多虚拟主机是全能主机,可以同时支持asp、aspx、jsp、cgi、php,因此也需要把这些过滤掉,上述语句是把asp等替换为”error”。
? * 另外,建议你把程序默认的管理员账户以及数据库文件名进行修改,不建议你把数据库改成asp来防止下载,如果一定要改成asp,那么安全的方法如下:
首先新建1个txt文件,内容为<%或者%>,然后在需要改为asp的数据库文件中新建1个表,名字任意,字段任意,数据类型为ole对象,如图:

添加数据库记录,ALT+T选择对象—>由文件创建-->选择刚才新建的文本,插入后显示如下:
![]()
这样设置的原因是:asp会对<%或%>进行解析,因为符号未闭合发生错误,可有效防下载。
| PPPOE验证缺陷所带来的危害 | 03-21 | |
| Ce-Admin新闻发布系统漏洞分析 | 02-07 | |
| Discuz漏洞分析 | 11-28 | |
| 入侵检测PHP程序中的目录遍历漏洞 | 10-12 | |
| 主流入侵检测产品大比较 | 10-03 | |
| 一种新的带宽攻击方式(图) | 06-16 | |
| Javascript实现评估用户输入密码 | 05-30 | |
| 针锋相对:主要的反NIDS技术应用 | 05-22 | |
| dvbbs7.1sp1最新漏洞的研究和利用 | 05-13 | |
| IE mhtml redirection漏洞利用方 | 05-12 | |
| Php后门的隐藏技巧测试报告 | 05-11 | |
| McAfee IntruShield 2600入侵防护 | 05-09 | |