XSS蠕虫是指一种具有自我传播能力的XSS攻击,杀伤力很大。引发XSS蠕虫的条件比较高,需要在用户之间发生交互行为的页面,这样才能形成有效的传播。一般要同时结合反射型XSS和存储型XSS。1
简述XSS蠕虫是一种借助Ajax技术实现对Web应用程序中存在的XSS漏洞进行自动化利用传播的蠕虫病毒,它可以将一些用户数据信息发送给Web应用程序然后再将自身代码传递进入Web应用程序,等到被感染用户访问Web应用程序时,蠕虫自身将又开始进行数据发送感染。XSS蠕虫的感染速度是随Web应用程序的用户访问量几何数递增的,感染效果非常可怕。最有名的XSS蠕虫病毒就属MySpace XSS Worm了。
MySpace是全球互联网上最大的个人空间,在它上面可以建立属于自己的展示空间,上传自己的照片,写下自己的日记,还可以与别人一起分享这些信息,MySpace也支持交友,属于你的好友会显示在你的空间好友列表中,但是如果想让MySpace上的其他人加你为好友,需要得到对方的同意才可以。在2005年10月,一个名叫Samy的人在网上发布了一篇文章,在文章中他说自己找到了一种方法可以借助MySpace网站自身存在的问题来实现自动化添加自己到别人的空间中。在文章中他说到这种方法在运行后,3个小时添加了2429个好友,同时收到了6373个来自MySpace上其他人加自己为好友的请求。最后,他说由于这种自动化的速度实在太快了,导致他打开MySpace的时间竟然需要几分钟。一时间这篇文章让网络沸腾了,因为很多人都无法突破让别人加自己为好友,Samy为他们找到了一条无限制的捷径。Samy被誉为网络上所有人的“My hero!”。
后来,Samy的办法被很多人用代码实现,其实正是因为MySpace出现了一个XSS漏洞才导致出现了这种疯狂的蠕虫病毒爆发,历史上将这次蠕虫攻击称作MySpace Worm。继MySpace出现XSS蠕虫后,国外多个Web网站相继被人利用XSS Worm进行攻击,新浪、雅虎、百度也遭受过这种拥有可怕感染速度的蠕虫攻击,所幸的是这些攻击都被及时发现,没有发生像MySpace那样严重的结果。2
特点XSS蠕虫与传统蠕虫相比,有3个不同点:
(1)攻击载体不同。传统蠕虫的攻击与传播发生在用户节点之间,大规模的爆发极易引发网络阻塞。XSS蠕虫的攻击与传播从网络逻辑拓扑来看虽然是在用户节点之间,但从底层物理拓扑来看却是在用户节点与网站节点之间,资源消耗基本由功能强大的网站节点承担,蠕虫爆发不会引发网络阻塞和崩溃。
(2)攻击方式不同。传统蠕虫多采用漏洞攻击的方法,利用程序缓冲区溢出进行传播。XSS蠕虫则采用利用社会工程学诱惑用户及跨站点脚本缺陷等多种方式。
(3)攻击环境不同。传统蠕虫在指定的IPv4地址空间里寻找有漏洞的易感染节点。XSS蠕虫则专注于社交网络。3
传播过程XSS蠕虫基于社会工程学诱使用户点击访问其发出的恶意邀请链接。社交网络用户接收到好友发出的相关链接时,往往是不加分辨地直接点击访问。活跃节点会比非活跃节点收到更多的蠕虫邀请链接,一旦受到感染,也会发送更多的蠕虫邀请链接。XSS蠕虫传播过程可总结为以下步骤:
(1)攻击者在Web页面植入恶意HTML代码。
(2)发送伪装的邀请链接。
(3)用户点击链接被感染。
(4)向新感染用户的好友发送伪装的邀请链接。3
影响因素XSS蠕虫属于被动型蠕虫的一种,结合社交网络的特点,其传播会受到下列4种因素的影响:
(1)社会工程学使用成熟度
XSS蠕虫会使用社会工程学知识生成伪装的邀请链接,拙劣的伪装链接往往会使用户产生警觉而不会被点击。若蠕虫提高伪装技术,则用户会无法分辨链接的恶意与否,大大提高感染的成功率。
(2)用户安全意识程度
社交网络用户在面对好友时会降低安全防范意识。安全意识可使用户理性看待其好友发送的邀请链接是否合理,决定是否点击。安全意识高的用户可以降低XSS蠕虫的感染成功率,甚至在一定程度上起到阻塞蠕虫扩散的作用。
(3)活跃节点
与非活跃节点相比,大量的Web应用程序交互会使活跃节点面临大量的好友信息链接。若活跃节点被感染,则会发送大量的邀请链接,XSS蠕虫感染成功率将得到极大提高。
(4)访问偏向度
不同用户在进入社交网络进行活动时,会表现出不同的访问偏向。某些用户偏向于和固定的好友进行交互,与其他陌生用户交互很少。某些用户则在保持好友联系的同时,更偏向于在社交网站中随机地访问陌生用户的相关网页,而这就会带来一定的安全隐患。3
本词条内容贡献者为:
李航 - 副教授 - 西南大学