动网论坛(DVBBS)showerr.asp页面过滤不严跨站脚本攻击(CSS/XSS)漏洞
2005-09-07
系统编号:
WAVDB-00655
影响版本:
DVBBS 6.0-7.1.0
程序介绍:
动网论坛做为动网主要服务产品之一,自2001年投入推广并运营以来,得到了国内外广大互联网用户的广泛好评和支持。做为国内第一的互联网论坛服务品牌,占据了国内论坛服务市场的70%以上的用户,动网论坛服务在一些如电影、下载、网游等热门网站的占有率甚至高达80%以上,是中国论坛服务领域事实上的标准。
漏洞分析:
当我们查看showerr.asp页面代码的时候,就可以发现.
Case OtherErr
Dvbbs.Stats=action& - &Template.Strings(0)
Dvbbs.head()
Dvbbs.showtoptable()
Dvbbs.Head_var 0, ,Template.Strings(0),
template.html(0)=Replace(template.html(0), {$color} ,Dvbbs.mainsetting(1))
template.html(0)=Replace(template.html(0), {$errtitle} ,Dvbbs.Forum_Info(0)& - &Dvbbs.Stats)
template.html(0)=Replace(template.html(0), {$action} , 访问论坛 )
template.html(0)=Replace(template.html(0), {$ErrCount} ,1)
template.html(0)=Replace(template.html(0), {$ErrString} ,Request( ErrCodes ))
If Request( autoreload )=1 Then
Response.Write <metahttp-equiv=refresh content= 2;URL= &Request.ServerVariables( HTTP_REFERER )& >
End If
Response.Write Template.html(0)
If dvbbs.userid=0 Then
Response.Write Template.html(1)
End If
Dvbbs.ActiveOnline()
Dvbbs.footer()
在错误消息未定义的时候。程序通过get动作从URL取得变量!然后进行加载,而且不过滤特殊字符.导致跨站脚本攻击的发生.而这个页面之所以不被过滤是因为在入侵的时候我们很难进行调用,首先这个页面是属于被动修改方式,只有利用页面Iframe或者欺骗性质从而使管理员访问,盗取其登录后的Cookies资料.我们所修改的部分是基于Action之后的语句,
漏洞利用:
输入测试地址
http://www.target.com/showerr.asp?BoardID=135&ErrCodes=24&action=[XSS]
解决方案:
厂商补丁:
动网论坛
--------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://www.dvbbs.net/