Board logo

标题: [讨论]eWebEditor session欺骗漏洞到底如何利用? [打印本页]

作者: faye    时间: 2008-7-23 08:36     标题: [讨论]eWebEditor session欺骗漏洞到底如何利用?

[讨论]eWebEditor session欺骗漏洞到底如何利用?
议题作者:寂寞宝贝
信息来源:邪恶八进制信息安全团队(www.eviloctal.com

今天对一个站进行检测的时候,太无言,那个整站程序没得说,一个字,强!!无意间发现了他后台竟然有eWebEditor这个东西,呵呵,然后进入了eWebEditor 的登陆那,输入默认的 admin,不成功,看来管理员安全意识还不错,然后下了他eWebEditor 的数据库,帐号密码都是MD5加密过的,帐号查出来是admin,密码换了N种方式都查不出来,没办法,突然看到了eWebEditor 有个session欺骗漏洞,不过看半天没看明白,到底是什么意思!大家帮帮我看下!以下为漏洞的原文!

eWebEditor在线编辑器
漏洞文件:Admin_Private.asp
漏洞语句:<%

If Session("eWebEditor_User") = "" Then
Response.Redirect "admin_login.asp"
Response.End
End If


只判断了session,没有判断cookies和路径的验证问题。
漏洞利用:
新建一个h4x0r.asp内容如下:
<%Session("eWebEditor_User") = "11111111"%>
访问h4x0r.asp,再访问后台任何文件,for example:Admin_Default.asp

漏洞影响:虚拟主机的克星.

我不明白的是这一句<%Session("eWebEditor_User") = "11111111"%>
那个111111到底是什么?帐号?但是看他的代码,难道没密码也能欺骗进入??????????还有就是他说新建一个h4x0r.asp到底新建到哪???如果能在上面建asp的话我还利用他做什么,如果是随便别的地方都行?那又是什么原理?有哪个兄弟知道或者利用成功过这个漏洞的,麻烦出来探讨下!谢谢了!成功的男人白天瞎JB忙,晚上JB瞎忙;失败的男人白天没啥鸟事,晚上鸟没啥事。

帖子428 精华12 积分4620 阅读权限100 性别男 来自云南 在线时间172 小时 注册时间2006-2-7 最后登录2008-7-16 查看个人网站
查看详细资料TOP 软件项目外包

xindong
晶莹剔透§烈日灼然
作者: 车虫    时间: 2008-7-23 08:36

用session判断eWebEditor_User的值是不是空,如果是空就转向登陆界面,如果不为空则进入后台管理页面,这里只要是不为空就可以了,所以在虚拟机上运行<%Session("eWebEditor_User") = "11111111"%>
的文件就可以使eWebEditor_User的值不为空了,就可以直接进入后台了,这里的11111111也可以换成其它字符,没什么实际意义。

那么新建的文件放到哪?比如说有一个虚拟机上放了两个网站A和B,你拿到了A站的webshell,但是还是不能进入B站的网站目录,而B站里有一个ewebeditor的系统你无法获得密码进入,那么你可以在A站的网站目录里建一个这样的session欺骗的asp文件,并在你的本地浏览器上访问它,然后就可以直接进入B站的ewebeditor的管理页面了。

好像就是这些了,高手见笑,有错误请指出,谢谢。
帖子25 精华0 积分84 阅读权限40 在线时间9 小时 注册时间2005-8-8 最后登录2006-10-3 查看个人网站
查看详细资料TOP 赚更多的钱

神無月
晶莹剔透§烈日灼然
作者: katia2004    时间: 2008-7-23 08:36

ewebeditor 好象较新的版本已经没有这个洞了吧.
帖子124 精华0 积分313 阅读权限40 性别男 在线时间37 小时 注册时间2006-4-22 最后登录2008-6-9 查看详细资料TOP 良辰择日,预测咨询,公司改名,权威易经

ttfct
荣誉会员

作者: superkingliu    时间: 2008-7-23 08:36

引用:
这里是引用第[1 楼]的xindong于2006-10-01 01:39发表的:
用session判断eWebEditor_User的值是不是空,如果是空就转向登陆界面,如果不为空则进入后台管理页面,这里只要是不为空就可以了,所以在虚拟机上运行<%Session("eWebEditor_User") = "11111111"%>
的文件就可以使eWebEditor_User的值不为空了,就可以直接进入后台了,这里的11111111也可以换成其它字符,没什么实际意义。

那么新建的文件放到哪?比如说有一个虚拟机上放了两个网站A和B,你拿到了A站的webshell,但是还是不能进入B站的网站目录,而B站里有一个ewebeditor的系统你无法获得密码进入,那么你可以在A站的网站目录里建一个这样的session欺骗的asp文件,并在你的本地浏览器上访问它,然后就可以直接进入B站的ewebeditor的管理页面了。

.......
错! SESSION不能跨站  你要欺骗的站是A,那么你只有在A上运行那个SESSION赋值的才能登陆后台TTFCT http://WWW.TTFCT.COM

帖子279 精华4 积分4349 阅读权限100 性别男 在线时间111 小时 注册时间2006-2-13 最后登录2008-7-20 查看详细资料TOP

流转
风中...流转

晶莹剔透§烈日灼然
作者: 剑花江南    时间: 2008-7-23 08:36

Session欺骗比较有局限性~~必须在目标主机给你分配一个Session~~~曾经用Session欺骗搞过洞网~~写过一个工具~本来是要发出来的~但是应用的局限性实在是太大了~
可能有CC不知道session和Cookies有什么区别,这么解释吧~(在某期黑客杂志上看见的)Cookies就像是成绩单,要你自己拿回家的,而Session就是学校的备案,你可以本地改你的成绩单但是改不了学校的备案。
Session是保存在服务器上的,如果你搞到了服务器上一个别的网站的shell,那么给你分配一个Session就很简单了,就好比你有教导处的钥匙,改成绩的话偷着进去改(打个比方,别学阿)
这个ewebeditor没有对session的内容进行检查,只是简单的判断了是否为空~当然就可以欺骗了,其实如果有服务器上的某站的shell的话,session欺骗就和cookies欺骗一样简单

帖子389 精华0 积分597 阅读权限50 性别男 来自大连 在线时间171 小时 注册时间2006-7-15 最后登录2008-4-15 查看个人网站
查看详细资料TOP 少女暴富的隐秘(图)

remax
晶莹剔透§烈日灼然
作者: ivg    时间: 2008-7-23 08:36

看看数据库里的其他东西,找找是不是有别人提前搞过了,说不定有收获哦[找asa]20字节够写什么?

帖子325 精华2 积分911 阅读权限50 在线时间79 小时 注册时间2005-10-25 最后登录2008-7-13 查看个人网站
查看详细资料TOP 良辰择日,预测咨询,公司改名,权威易经

eocol
晶莹剔透§烈日灼然
作者: chc2203    时间: 2008-7-23 08:36

如能新建了,还需要欺骗吗?
靠靠MD5了
帖子23 精华0 积分35 阅读权限40 在线时间39 小时 注册时间2006-9-21 最后登录2008-6-13 查看详细资料TOP 让女孩一夜变的更有女人味

charley
晶莹剔透§烈日灼然
作者: SPZLH    时间: 2008-7-23 08:36

漏洞利用:
新建一个h4x0r.asp内容如下:
<%Session("eWebEditor_User") = "11111111"%>
访问h4x0r.asp,再访问后台任何文件,for example:Admin_Default.asp

漏洞影响:虚拟主机的克星.


有意思。呵呵。能建h4x0r.asp的话欺骗还有什么意义?留后门还勉强可以。
帖子35 精华0 积分136 阅读权限40 在线时间105 小时 注册时间2005-5-16 最后登录2007-3-16 查看详细资料TOP

pivot
晶莹剔透§烈日灼然
作者: 彬彬    时间: 2008-7-23 08:36

引用:
不知道是我没理解楼主的意思还是楼上几位不理解楼主的意思,他应该问的是怎样绕过admin_login.asp,而不是怎样绕过后台admin目录到达admin_login.asp页面?
楼下同学麻烦帮忙纠正一下,继续持观望态度INGH.U.C For Ever
帖子65 精华0 积分225 阅读权限40 来自%D6%D0%B9%FA 在线时间172 小时 注册时间2006-5-17 最后登录2008-7-4 查看个人网站
查看详细资料TOP

dingking
荣誉会员

作者: dgsouxin.com    时间: 2008-7-23 08:36

漏洞影响:虚拟主机的克星.

也就是说那个文件只要放在服务器上任意一个站上就可以了。

纯属瞎猜。 [s:58]昨天是明天的前天今天是昨天的明天明天是昨天的后天    ╰o╯╰o╯
帖子741 精华2 积分4784 阅读权限100 性别男 在线时间756 小时 注册时间2005-6-17 最后登录2008-7-18 查看详细资料TOP

寂寞宝贝
荣誉会员

作者: 7月11日    时间: 2008-7-23 08:36

引用:
这里是引用第[11 楼]的dingking于2006-10-02 00:59发表的:
漏洞影响:虚拟主机的克星.

也就是说那个文件只要放在服务器上任意一个站上就可以了。
汗!这样来理解也行。。。。。晕!还是那句话,如果我能在上面建asp文件。。。我还需要欺骗他么?没有意义!成功的男人白天瞎JB忙,晚上JB瞎忙;失败的男人白天没啥鸟事,晚上鸟没啥事。

帖子428 精华12 积分4620 阅读权限100 性别男 来自云南 在线时间172 小时 注册时间2006-2-7 最后登录2008-7-16 查看个人网站
查看详细资料TOP

xindong
晶莹剔透§烈日灼然
作者: 车亲仁    时间: 2008-7-23 08:36

引用:
这里是引用第[3 楼]的zxzgcn于2006-10-01 08:24发表的:



错! SESSION不能跨站  你要欺骗的站是A,那么你只有在A上运行那个SESSION赋值的才能登陆后台
谢谢指教,没想到第一次就错了,呵呵,大家继续讨论,本来还好像有点头绪的,被你们这样一弄,我倒真不知道他们的区别了,我曾经看过关于session欺骗的文章,难道那篇文章写错了,期待着更精妙的回答!

另外我说下,我都已经有A站的shell,还用得着去建一个这样的文章去欺骗么,能不能将这个漏洞的利用环境说得详细一点啊。
帖子25 精华0 积分84 阅读权限40 在线时间9 小时 注册时间2005-8-8 最后登录2006-10-3 查看个人网站
查看详细资料TOP

nowthk
晶莹剔透§烈日灼然
作者: 达哥    时间: 2008-7-23 08:36

不好意思,这个东西的原作者是我的,具体某个人把文件名做成貌似h4x0r.asp这种的可能是想侵权吧..
不过很遗憾的告诉你,这个东西是错的,根本不是虚拟主机的克星,因为session还进行了主机头的判断,所以虚拟主机根本没有影响。

这个session漏洞是想告诉你,是你得到了shell后,可以用这个漏洞做一个小后门,比如访问了如上代码的111.asp,不要关闭浏览器,直接访问此程序的admin_default.asp就可以直接进行后台。。。oveR~ [s:75]\';update heart set love=\'nothing\' where name=yaner;--

帖子104 精华4 积分510 阅读权限50 在线时间124 小时 注册时间2005-3-14 最后登录2007-4-12 查看个人网站
查看详细资料TOP

xiao2004
荣誉会员

作者: userchm    时间: 2008-7-23 08:36

完全是扯谈,什么虚拟主机的克星,根本不行的。

http://forum.eviloctal.com/read-htm-tid-20613-keyword-.html
帖子452 精华16 积分1740 阅读权限100 性别男 在线时间222 小时 注册时间2005-3-19 最后登录2008-7-22 查看详细资料TOP

xiaocool
晶莹剔透§烈日灼然
作者: jacky6636    时间: 2008-7-23 08:36

写个工具出来就好了。。。。
帖子162 精华2 积分431 阅读权限40 在线时间75 小时 注册时间2005-8-4 最后登录2008-6-9 查看详细资料TOP

流转
风中...流转

晶莹剔透§烈日灼然
作者: 啸傲江湖    时间: 2008-7-23 08:36

适用范围太窄了
下面给一中使用情况:
主机上有A站和B站,目标是A站,旁注得到了一个B站的Shell,但是主机权限很严格,无法提权,而且A站上面有Ewebeditor,可以用Session欺骗得到A站的Ewebeditor管理权限,然后上传木马以达到入侵A站的目的

帖子389 精华0 积分597 阅读权限50 性别男 来自大连 在线时间171 小时 注册时间2006-7-15 最后登录2008-4-15 查看个人网站
查看详细资料TOP

混世魔王
荣誉会员

作者: 小明    时间: 2008-7-23 08:36

没有实践.....不参加讨论.
If Session("eWebEditor_User") = "" Then  //如果session为空
Response.Redirect "admin_login.asp"    // 就跳到登陆窗口
Response.End
End If

代码是这个意思.......没有验证session的内容。
没有实践,觉得理论应该也可以。取保候审中........

帖子181 精华10 积分3720 阅读权限100 性别男 在线时间88 小时 注册时间2005-3-12 最后登录2008-6-19 查看详细资料TOP

whytt
晶莹剔透§烈日灼然
作者: forever4525    时间: 2008-7-23 08:36

和楼上一样,没实践



说说想法,以前看过书上有说是虚拟机的克星,是这样理解的

一台服务器上有N个站,为了拿其中一个站,比如A站,而入侵了服务器上的B站,那么由于服务器的权限设置,

导致我们还是不可以拿到A站,那么这个时候,我们就在B站下建立一个S.asp

内容为:

<%
Session("eWebEditor_User") = "123" Then  //如果session不为空,随便写
Response.Redirect "http://www.xx.com/admin_index.asp" // 就跳到同服务器要搞的那个站的管理页面
%>


这样,就可以进入目标A站的管理页面,饶过登陆。

==========

以上全是个人理解,没有实践。
帖子15 精华0 积分52 阅读权限40 性别男 在线时间47 小时 注册时间2005-7-2 最后登录2007-11-30 查看详细资料TOP

whytt
晶莹剔透§烈日灼然
作者: 智能手机    时间: 2008-7-23 08:36

写完,才看了到帖子,原来都说的很清楚了,我还在这里说什么呢,找了半天编辑帖子也木有找到,哎。。。失败
帖子15 精华0 积分52 阅读权限40 性别男 在线时间47 小时 注册时间2005-7-2 最后登录2007-11-30 查看详细资料TOP

剑客留香
晶莹剔透§烈日灼然
作者: lisir    时间: 2008-7-23 08:36

这个根本就理论上成立,却不可能实现的事实!
帖子17 精华0 积分62 阅读权限40 在线时间13 小时 注册时间2006-10-5 最后登录2007-5-7 查看详细资料TOP

寂寞宝贝
荣誉会员

作者: 大胃仔    时间: 2008-7-23 08:36

引用:
这里是引用第[12 楼]的nowthk于2006-10-04 10:43发表的:
不好意思,这个东西的原作者是我的,具体某个人把文件名做成貌似h4x0r.asp这种的可能是想侵权吧..
不过很遗憾的告诉你,这个东西是错的,根本不是虚拟主机的克星,因为session还进行了主机头的判断,所以虚拟主机根本没有影响。

这个session漏洞是想告诉你,是你得到了shell后,可以用这个漏洞做一个小后门,比如访问了如上代码的111.asp,不要关闭浏览器,直接访问此程序的admin_default.asp就可以直接进行后台。。。oveR~ [s:75]
晕!原来如此,不过大哥............不关浏览器........我留那个后门是不是一直要开着自己的电脑....晕!成功的男人白天瞎JB忙,晚上JB瞎忙;失败的男人白天没啥鸟事,晚上鸟没啥事。

帖子428 精华12 积分4620 阅读权限100 性别男 来自云南 在线时间172 小时 注册时间2006-2-7 最后登录2008-7-16 查看个人网站
查看详细资料TOP

寂寞宝贝
荣誉会员

作者: 小希    时间: 2008-7-23 08:36

哈哈!我实验成功了,只要验证那,先建立一个asp文件使Session值为空(同一虚拟主机的A站),然后访问B站的admin_index.asp就能直接进入,嘎嘎!嘿嘿,.不过郁闷的是,好像新版本已经解决了这个问题,新版本未测试!成功的男人白天瞎JB忙,晚上JB瞎忙;失败的男人白天没啥鸟事,晚上鸟没啥事。

帖子428 精华12 积分4620 阅读权限100 性别男 来自云南 在线时间172 小时 注册时间2006-2-7 最后登录2008-7-16 查看个人网站
查看详细资料TOP

某牛人
晶莹剔透§烈日灼然
作者: qwerqwer    时间: 2008-7-23 08:36

Session确实是可以跨站的。
不过楼上说的方法是不能成功的。
帖子28 精华0 积分82 阅读权限40 在线时间55 小时 注册时间2006-3-2 最后登录2007-11-11 查看详细资料TOP

cnqing
晶莹剔透§烈日灼然
作者: 泰兴行    时间: 2008-7-23 08:36

下面的情况是不行的:WIN2003 SP1 +IIS6.0 不是虚拟主机,iis建的两个网站A、B。
A -->s.asp : <%session("test")="ok"%>

A -->e.asp :<%if session("test")<>"" then response.write("good!")%>
B -->e.asp :<%if session("test")<>"" then response.write("good!")%>

1.访问http://A/e.asp 显示为空
2.访问http://B/e.asp  显示为空

3.访问http://A/s.asp
4.访问http://A/e.asp 显示"good!"
5.访问http://B/e.asp 显示为空

6.访问http://B/s.asp
7.访问http://B/e.asp 显示"good!"

不知道什么情况下能跨呢?虚拟主机可以?没环境测试呢。。。

论坛自动分析URL ,去掉了~~www.cncert.net

帖子21 精华0 积分73 阅读权限40 性别男 来自WWW.HEUT.EDU.C 在线时间13 小时 注册时间2005-4-2 最后登录2008-7-2 查看个人网站
查看详细资料TOP

我就是sb
晶莹剔透§烈日灼然




欢迎光临 【3.A.S.T】网络安全爱好者 (http://3ast.com/) Powered by Discuz! 7.2