“新浪微博”爆发了XSS蠕虫攻击,是怎么回事?
Posted 全栈程序员
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了“新浪微博”爆发了XSS蠕虫攻击,是怎么回事?相关的知识,希望对你有一定的参考价值。
2011年6月,国内最火的信息发布平台“新浪微博”爆发了XSS蠕虫攻击,大量用户自动发送诸如:
"郭美美事件的一些未注意到的细节"
"建党大业中穿帮的地方"
"让女人心动的100句诗歌"
"3D肉蒲团高清普通话版种子"
"这是传说中的神仙眷侣啊"
"惊爆!范冰冰艳照真流出了"
根据网友分析,该病毒来自2kt.cn,由一个新浪微博ID2201270010(用户名为hellosamy)所发布,只要是关注了该账号的新浪微博用户,就会收到带病毒链接的私信,粉丝一旦点击这些链接,就会感染微博病毒,并自动发布病毒微博和私信。而该账号的粉丝数为32961个,超过3万用户关注,所以才引起大面积病毒传播。
首先,黑客通过对新浪微博的分析测试,发现在新浪微博广场页面中,生成短连接的时候未严格过滤JS标签。黑客在真正的链接中嵌入了一段JS代码,该JS脚本是黑客可以控制的文件,且通过AJAX技术完全实现异步提交数据的功能,然后由这段代码发动了攻击。而由于该链接使用的是新浪本地的url,所以JS是在本域执行的,可以直接模拟用户的各种请求。
然后,黑客为了使该XSS蠕虫代码可以大范围的感染传播,会通过发私信或发微博的方式诱惑用户去点击存在跨站代码的链接,尤其是针对V标认证的用户,因为此类用户拥有大量的关注者,所以如果此类用户中毒,必然可以实现蠕虫的大范围、快速的传播。
不难看出黑客是利用了XSS攻击中的存储型跨站攻击。
黑客利用网站程序对用户输入过滤不足的缺陷,将恶意Script代码存到了数据库中,当用到这条数据的时候,其中包含的脚本就会执行,并且只要数据库没有删除,那么这种攻击将一直存在,这种攻击具有很强的稳定性。我们称这种XSS攻击叫XSS存储型跨站攻击。
常出现XSS存储型跨站攻击的功能有以下两种:
1、评论功能:黑客输入评论(攻击代码)->服务器接收评论并保存(数据入库)->前台显示评论内容->任何人查看评论(攻击代码被启动)->攻击成功。
2、私信功能:黑客发送私信(带攻击代码)->服务器接收私信并保存(数据入库)->用户打开私信(攻击代码被启动)->成功攻击。
XSS黑客要完成攻击,首先要将攻击脚本存储在服务器端,并且保证攻击脚本在读取后可以顺利执行。当这些条件都满足时,才能保证漏洞被成功利用。所以要预防XSS攻击,需要防止攻击脚本被存储到数据库中(入库时需做过滤处理);或者对网站输出的数据进行转义,避免攻击脚本在页面上顺利执行。
XSS攻击总结:用户访问网站的基本方式就是浏览页面,并且与网站产生交互行为。XSS漏洞的核心问题就在于当前页面没有明确区别用户参数与代码,导致由客户端提交的恶意代码能在客户端执行。
以上是关于“新浪微博”爆发了XSS蠕虫攻击,是怎么回事?的主要内容,如果未能解决你的问题,请参考以下文章