网站运营
位置:首页>> 网站运营>> 浅谈反射型XSS的利用

浅谈反射型XSS的利用

作者:ShadowHider 来源:ShadowHider博客 发布时间:2009-03-16 18:33:00 

标签:前端,漏洞,脚本攻击,xss

-[目录]
-0x01 前言
-0x02 什么是反射型XSS
-0x03 反射型XSS的常见利用方法
-0x04 浅析Anehta回旋镖模块工作原理
-0x05 小结

-0x01 [前言]

#sH:看过了那么多的paper,心血来潮,自己也来写个:)科普型paper,大牛略过。- -:

在Web 2.0技术的发展下越来越多的计算工作被放到客户端处理,由于程序员的疏忽,导致了许多的安全漏洞。XSS属于比较常见的一种,在前几年XSS还并不怎么被人重视,但如今,随着XSS漏洞的危害日益增大,如校内和baidu空间前阵子的XSS WORM等等,其危害之大也引起了大家的重视。

XSS的类型大体分为两种:反射型XSS和持久型XSS,相比之下,后者的利用要比前者方便许多。甚至许多人认为反射型的XSS是鸡肋,因为其利用起来很不方便,但在安全技术飞速发展的今天,鸡肋也有变鸡翅的一天。下面我们来看看什么是反射型XSS。

-0x02 [什么是反射型XSS]

XSS又叫CSS (Cross Site Script) ,跨站脚本攻击。它指的是恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意攻击用户的特殊目的。

那么什么是反射型XSS呢?黑哥对我讲的是形如"http://www.jpl.nasa.gov/about_JPL/maps.cfm?departure=lax%22%3Cimg%20src=k.png%20onerror=alert(%22XSSed%20by%20sH%22)%20/%3E"这样需要欺骗用户自己去点击链接才能触发XSS的是反射型XSS,如在论坛发贴处的XSS就是持久型的XSS。

非持久性XSS(Reflected cross-site scripting),是我们通常所说的反射型XSS,也是最常用,使用最广的一种方式。它通过给别人发送带有恶意脚本代码参数的URL,当URL地址被打开时,特有的恶意代码参数被HTML解析、执行。它的特点是非持久化,必须用户点击带有特定参数的链接才能引起。

持久性XSS(Persistent cross-site scripting),指的是恶意脚本代码被存储进被攻击的数据库,当其他用户正常浏览网页时,站点从数据库中读取了非法用户存入非法数据,恶意脚本代码被执行。这种攻击类型通常在留言板等地方出现。

很多人非常鄙视非持久性XSS(反射型XSS),认为这种XSS只能依靠欺骗的手段去骗人点击,才能让攻击正常实施起来。其实让反射型XSS变得持久的方法,已经出现过好多次了。比如利用applet、利用flash的AS脚本、利用IE的Ghost 页面,Cross Iframe Trick等等。

-0x03 [反射型XSS的常见利用方法]

既然是“需要欺骗用户自己去点击链接才能触发XSS”,那利用反射型XSS岂不是只有去忽悠用户这一种方法?放在几年前也许是这样的,现如今,就要上演鸡肋变鸡翅的好戏了!

[1]欺骗

不得不说这是最简单有效的利用方法了,但对忽悠的能力有严格的要求,不然用户不会那么容易上钩的。其次,现在的用户都有了一定的安全意识,也不是那么好骗了。以上面提到的链接为例,由于是NASA网站的跨站,大家完全可以在一些天文爱好者聚集的群里发类似这样的消息,如:“美国航空航天局公布最新UFO照片”然后加上我们的链接。由于是NASA的链接(现在连小学生都知道NASA是干什么的),我想应该会有一部分人相信而去点击从而达到了我们的目的,这个反射型的XSS被触发。但如果不是这么碰巧呢?请往下看。

[2]ClickJacking

在去年的OWASP会议上,ClickJacking这种攻击方式被提了出来。简单来说ClickJacking大致是这么回事:

1. 表现为点击某个链接或button时,实际上是点击到别的地方去了(劫持链接)

2. 不一定需要javascript,所以noscript也挡不住,但是如果有javascript会让事情更简单

3. 攻击是基于DHTML的

4. 需要攻击者一定程度上控制页面

所以,我们只要将用户的点击劫持到我们的链接上去就行了,而且ClickJacking是可以跨域的哦~具体应用示例大家去google下就有了。

[3]结合CSRF技术

CSRF是伪造客户端请求的一种攻击,CSRF的英文全称是Cross Site Request Forgery,字面上的意思是跨站点伪造请求。这种攻击方式是国外的安全人员于2000年提出,国内直到06年初才被关注。

结合CSRF技术来利用反射型XSS是种不错的方法,利用CSRF可以使得这些不好利用的XSS漏洞变得威力无穷。具体示例请参考余弦的《基于CSRF的XSS攻击》(http://huaidan.org/archives/2561.html),这里就不细说了,有机会专门写篇关于CSRF的paper。

[4]Cross Iframe Trick

先讲讲这种攻击能够达成什么效果:
1. 跨域执行脚本(IE、Firefox)
2. 把非持久性XSS变成持久性XSS -->!!!
3. 跨页面执行脚本

这种攻击方法比较绕,具体请参考《Cross Iframe Trick》(http://hi.baidu.com/aullik5/blog/item/07d68eb015d72652092302b1.html)

[5]反转雅典娜---配合Anehta的回旋镖模块

什么是Anehta? Anehta是一个跨站脚本攻击(XSS)的利用平台。功能模块化,开发者可以单独为anehta开发各种各样的模块,以满足独特的需求。Anehta中有许多的具有创意的设计,回旋镖模块(Boomerang),就是其中一个。回旋镖模块的作用,是为了跨域获取本地cookie,只是在站点上有一个XSS,种类不限,不管是反射型XSS,还是持久型XSS,都可以为我们工作。

这时,反射型XSS的余热就被充分的发挥了。

具体示例请参考axis牛的《Anehta -- Boomerang(回旋镖),如何将反射型XSS变成持久型XSS:论跨域获取cookie》(http://hi.baidu.com/aullik5/blog/item/02bccaeb018dc4d5d539c930.html),这里就不再做详细的介绍。

-0x04 [浅析Anehta回旋镖模块工作原理]

既然提到了Anehta的Boomerang模块,那就简单说说吧。

Boomerang的工作原理:我们知道,浏览器被XSS攻击后,攻击者可以用js或其他脚本控制浏览器的行为。这时候如果我们强制浏览器去访问站点B上一个存在XSS漏洞的页面,就可以继续用B站上的XSS_B控制用户的浏览器行为; 那么把整个过程结合起来,简单表示如下:
victim Browser --->site A,XSS_A ---- redirect to ---->Site B,XSS_B ----- redirect somewhere --->.....

在IE中,iframe、img等标签都是拦截本地cookie的。需要使用不拦截cookie的比如 window.open等方法,但是window.open会被IE拦截弹出窗口,所以axis牛在Boomerang中使用了表单提交,构造一个form,向site B提交,然后再从Site B导入一个XSS B,获取了cookie后,再通过表单提交,跳转回原来的Site A.如果在Site B上,使用XSS_B再将页面重新定向回 Site A,那么对于用户来说,就是简单的闪了一下,非常具有欺骗性,整个过程就像用回旋镖扔出去打了一下B一样。

但其实这并没有把反射型XSS真正的变成持久型的XSS,只是反射型XSS的一种攻击方式而已,也没有跨域,而是URL重定向转了一圈,跳了一圈又回来了。但这确实是让反射型XSS得到了充分的利用,达到了我们的目的。axis牛的这种思路非常值得我们学习!

-0x05 [小结]

本文只总结了常见的反射型XSS利用的方法,但都是简单的提了下,起到了个抛砖引玉的作用,让大家见到反射型XSS时能想到这些(貌似要都详细写出来就太多了- -:),如有不足之处还请各位见谅。为了写这个查了很多资料,另外还要感谢黑哥耐心解答我的问题(黑哥对我的第一句话总是“?”) - -:。第一次写paper,好与不好的大家就凑和看吧。有错误的地方还请各位大牛指出,谢谢。

希望本文对您有帮助,同时也欢迎各位同我交流:MSN:ShadowHider[at]msn.com
Bye~

0
投稿

猜你喜欢

  • 长尾关键词这个概念现在大家都已经有所了解。在做英文网站优化时,因为受到各种因素的限制(如资源,时间等),我们不应该去追求那些高搜索但是同样高
  • 自从7、8月份以来,对于新上线的网站来说,可能把百度恨得咬牙切齿——因为百度的算法有所调整,尤其是对新站,由以前的对新站宠爱有加变为隔离审查
  • 广告商愿意为了能够准确定位目标用户的广告增加投入,帮广告商将广告定位到准确的目标用户,您的网站就可以获得更高的广告收入。为了实现这一目标,这
  • 很多网站,一开始做的时候就想要利用网站怎么样快速赚钱,怎么样让网站获利,不可否认的是互联网的发展的确给我们带来了许多便利,也造就了很多百万富
  • 华西都市报推出的榜样中国·2009年3C传媒大奖评选是一个非常有意义的活动。百度“有啊&r
  • 到底什么是搜索引擎优化写作?搜索引擎优化文案指的是战略性地利用和部署的搜索关键词或有利可图的关键字的网站的浏览文字和其他内容。这包括标题,描
  • Dedecms一直是很火的建站cms,主要得益于两大站长网的鼎力支持;不过,人火是非多,cms太火了同样会被别有用心的人盯上。我的网站一直在
  • 国际金融危机下,企业依靠电子商务走出困境,创造了一个又一个的奇迹,掀起了一场电子商务热潮,在电子商务风靡国内企业时,电子商务的格局也发生着巨
  • 7字开头的公交车在重庆可谓家喻户晓,私家车速度快、乱停乱靠的特点在其身上发扬的无比光大。由于其安全系数是所有公交车中最低的,所以我很少坐&a
  • 重复的内容已成为搜索引擎优化的一个巨大话题近来,由于新的过滤器,搜索引擎已经实施。我们也会告诉您如何您可以判断如果您的网页中有重复的内容,以
  • 可以在首页调用,显示任意指定栏目 标题、列表,搜索了半天,没看到什么好用的,自己瞎摸索整了个,分享一下。其中:typeid='栏目I
  • 为了更好的实现用户在社区论坛的互动功能,官方开发团队在Discuz! 7.1版本引入了漫游应用插件机制,丰富了社区论坛系统互动应用效果。伴随
  • 非常高兴鞭牛士邀请我和大家分享自己的经验,也感谢大家在周五晚上来听我讲一些网络编辑方面的东西。我简单介绍一下我的情况吧,我是93年毕业,毕业
  • Exchange 2007是家族里的新成员,并且提供了又新又酷的功能,比如统一信息,改进了的垃圾信过滤,以及智能行程安排等。但是,和其他升级
  • 当前虚拟主机主要分为三类限制:一、流量限制:就是直接限制网络流量,这种限制通常是最严厉的一种限制,10个G的流量大体支持50人在线以内。当月
  • 两年前,我曾经写过一篇文章《Google和百度收录网站页面的比较》(发布于2006年4月17日《计算机世界》),分析当时情况下百度和Goog
  • 提到采集,有些站长抛出鄙夷的眼神,而似乎大部分站长都会觉得是CMS的标配。在落叶看来采集只是一个功能,一个工具,关键看是采什么,采来后做什么
  • 美国《财富》杂志网络版周四评出了2009年全球最具影响力商界女强人50强,百事可乐董事长兼CEO卢英德(Indra Nooyi)居首,雅虎C
  • 做一个中国站长,如果以下50个问题,你不知道,你会很吃亏的,也有可能你是一个倒霉的站长。五十个问题,有四十个你能做到,那你才是及格的站长,这
  • 首先我说明的我的主题很细,这里只以IT类的个人博客为例推广来说,如果您不属于这个范畴就权当做个参考吧。博客的推广显然不能和大型网站的推广相提
手机版 网站运营 asp之家 www.aspxhome.com