当前位置: 首页 > 图文教程 > 网络编程 > ASP > eWebEditor:网站中的隐形炸弹

ASP
ASP实例代码:搞个长文章分页代码
说说对象的复制
多个函数验证同一表单
查询某个字段没有值的所有记录的SQL语句怎么写?
ASP实例:一个简单的ASP无组件上传类
ASP实例讲解:用分页符实现长文章分页显示
ASP实例:动态网页中常用的6个ASP程序
ASP实例:词语搭配游戏的制作
ASP实例学习:随机生成文件名的函数
asp实例:测试WEB服务器
ASP实例:计数器程序详解
预防ASP网站被黑 彻底了解ASP木马
分享:XML HTTP Request的属性和方法简介
ASP架设:给每个IIS站点建立一个用户
ASP技巧:判断远程图片是否存在
故障解决:解决ASP脚本运行超时的方法
再说ASP输出N行N列表格
怎么判断一个对象是否已被释放
ASP实现网页打开任何类型文件都保存的方法
ASP技巧:利用函数InstrRev()获取当前文件名

ASP 中的 eWebEditor:网站中的隐形炸弹


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 46 ::
收藏到网摘: n/a

站长在使用eWebEditor的时候是否发现,eWebEditor配置不当会使其成为网站中的隐形炸弹呢?第一次发现这漏洞源于去年的一次入侵,在山穷水尽的时候发现了eWebEditor,于是很简单就获得了WebShell。后来又有好几次利用eWebEditor进行入侵的成功经历,这才想起应该写一篇文章和大家共享一下,同时也请广大已经使用了eWebEditor的站长赶紧检查一下自己的站点。要不然,下一个被黑的就是你哦!
漏洞利用
利用eWebEditor获得WebShell的步骤大致如下:
1.确定网站使用了eWebEditor。一般来说,我们只要注意发表帖子(文章)的页面是否有类似做了记号的图标,就可以大致做出判断了。
2.查看源代码,找到eWebEditor的路径。点击“查看源代码”,看看源码中是否存在类似“<iframe ID='eWebEditor1' src='/edit/ewebeditor.asp?id=content&style=web' frameborder=0 scrolling=no width='550' HEIGHT='350'></iframe>”的语句。其实只有发现了存在这样的语句了,才可以真正确定这个网站使用了eWebEditor。然后记下src='***'中的“***”,这就是eWebEditor路径。
3.访问eWebEditor的管理登录页面。eWebEditor的默认管理页面为admin_login.asp,和ewebeditor.asp在同一目录下。以上面的路径为例,我们访问的地址为:http://www.***.net/edit/admin_login.asp,看看是否出现了登录页面。
如果没有看到这样的页面,说明管理员已经删除了管理登录页面,呵呵,还等什么,走人啊,换个地方试试。不过一般来说,我很少看到有哪个管理员删了这个页面,试试默认的用户名:admin,密码:admin888。怎么样?成功了吧(不是默认账户请看后文)!
4.增加上传文件类型。点击“样式管理”,随便选择列表中底下的某一个样式的“设置,为什么要选择列表中底下的样式?因为eWebEditor自带的样式是不允许修改的,当然你也可以拷贝一个新的样式来设置。
然后在上传的文件类型中增加“asa”类型。
5.上传ASP木马,获得WebShell。接下来将ASP木马的扩展名修改为asa,就可以简单上传你的ASP木马了。不要问我怎么上传啊,看到 “预览” 了吗?点击“预览”,然后选择“插入其它文件”的按钮就可以了。
漏洞原理
漏洞的利用原理很简单,请看Upload.asp文件:
任何情况下都不允许上传asp脚本文件
sAllowExt = Replace(UCase(sAllowExt), "ASP", "")
因为eWebEditor仅仅过滤了ASP文件。记得我第一次使用eWebEditor时就在纳闷:既然作者已经知道asp文件需要过滤,为什么不同时过滤asa、cer等文件呢?也许这就是对免费用户不负责任的表现吧!
高级应用
eWebEditor的漏洞利用还有一些技巧:
1.使用默认用户名和密码无法登录。
请试试直接下载db目录下的ewebeditor.mdb文件,用户名和密码在eWebEditor_System表中,经过了md5加密,如果无法下载或者无法破解,那就当自己的运气不好了。
2.加了asa类型后发现还是无法上传。
应该是站长懂点代码,自己修改了Upload.asp文件,但是没有关系,按照常人的思维习惯,往往会直接在sAllowExt = Replace(UCase(sAllowExt), "ASP", "")一句上修改,我就看见过一个站长是这样修改的:
sAllowExt = Replace(Replace(Replace(Replace(Replace(UCase(sAllowExt), "ASP", ""), "CER", ""), "ASA", ""), "CDX", ""), "HTR", "")
猛一看什么都过滤了,但是我们只要在上传类型中增加“aaspsp”,就可以直接上传asp文件了。呵呵,是不是天才的想法?“aaspsp”过滤了“asp”字符后,反而变成了“asp”!顺便告诉大家一个秘密,其实动网论坛7.0 sp2中也可以利用类似的方法绕过对扩展名的过滤。
3.上传了asp文件后,却发现该目录没有运行脚本的权限。
呵呵,真是好笨啊,上传类型可以改,上传路径不是也可以修改的吗?仔细看看图四。
4.已经使用了第2点中的方法,但是asp类型还是无法上传。
看来站长肯定是一个写asp的高手,但是我们还有最后一招来对付他:看到图三中的“远程类型”了吗?eWebEditor能够设定自动保存远程文件的类型,我们可以加入asp类型。但是如何才能让远程访问的asp文件能够以源码形式保存呢?方法是很多的,最简单的方法是将IIS中的“应用文件映射”中的“asp”删除。
后记
根据自己的经验,几乎只要能进入eWebEditor的后台管理,基本上都可以获得WebShell。在Google上搜索“ewebeditor.asp?id=”能够看到长达十多页的相关信息,我大致抽查了其中几个,发现成功率约为50%。还不错吧?oblg 2.52版以前的版本也是使用eWebEditor,可以去搜索几个来练练手。要命的是eWebEditor的官方网站和帮助文件中根本没有这方面的安全提示。还有,我发现官方提供的测试系统并不存在类似的漏洞,看来不是他们不知道,而是没有把免费用户的网络安危放在心上!