- A+
所属分类:Seay信息安全博客
显示不全请点击全屏阅读
1.小范围测试,眼看着涨了500多粉丝;
2.该站点对CSRF不设防,加关注、留言等直接为GET方式,可导致CSRF蠕虫;
3.分享一个各大互联网厂商防范CSRF的通病,我是如何秒杀的。
1.首先声明下哈:我只是简单测试给乌云刷了500多粉丝,没有继续了;确实可以搞CSRF蠕虫的,我木搞啊!我是好娃子!
2.开始吧,出问题的站点是:
tw.weibo.com这个站点对CSRF不设防,加关注、取消关注、发微博、留言不设置任何防范。我下面举两个例子:
3.加关注的接口是:
http://tw.weibo.com/api/addfriendship/?uid=一个GET请求,uid参数是所要关注的对象uid,乌云的uid为:1981622273,那么微博用户以任何方式访问了下面的链接即可关注乌云微博:
http://tw.weibo.com/api/addfriendship/?uid=1981622273
4.利用方式一:配合社会工程诱使微博用户点击上述链接,当然得有一个平台让微博用户去点击,你可以通过QQ等聊天软件发送上述链接诱使用户点击,但是不觉得小题大做了么,而且很费事!其实微博本身就是这么一个平台,我直接将链接插入:
点击【发布】,当然你可以配上其他的文艺型文字效果更好!生成短连接如下:
当一个没有关注乌云微博的用户点击之后,如下效果,成功加乌云关注:
5.利用方式二:方式一需要用户点击,现在的网友都不再是傻子了,成功率可能较低。如果有方式直接加载就好,受害者看了我的微博就关注了乌云多好啊!还记得@imlonghao引发的基于401基础认证钓鱼的恐慌么?直接通过<IMG>元素加载吧!但是微博本身是不能直接插入网络连接,一般都需要上传图片到新浪服务器。在那个夜黑风高的晚上,我以三把war3为代价,让我的一个好基友@th000找到了微博一个可以插入网络连接的子域:
http://game.weibo.com
看下图,虽然本地客户端有验证请求网络连接的是否为图片,但是对于白帽子而言这确实是小case,好吧,粉丝都是通过这里刷的:
6.好的,刷粉丝的问题说完了!下面是可能引发蠕虫的地方,发微博(我没有测试哈哈),我看了留言的地方,没有防范CSRF,恐怖的是居然也是个GET请求方式!请看下面请求:
http://tw.weibo.com/api/addcomment/?mid=3534023949539660&comment=so+nice&_=1358063650295
通过上面的两种利用方式,一经访问,立即生效!
当然,如果你勾选了【同时转发到微博】,那么weibo.com的首页也会遭受蠕虫的重创了!
7.我分享的这个各大互联网厂商防范CSRF通病,上面其实已经说的很清楚了,不知道各位看官是否注意到。就是利用微博这个平台,对于GET方式请求,只验证referer不加token的CSRF的防范是无效的!比如上面刷粉丝的链接防范了CSRF,验证了referer,通过利用方式一或二把它放在weibo.com域下面,受害者点了,请求的referer是不是仍然为weibo.com呢?
修复方案:
希望厂商的回复不是:
多谢提供,此问题已经内部发现并通知了相关负责人进行修复。
作者:风萧萧
Tags:
如果您喜欢我的博客,欢迎点击图片定订阅到邮箱 也可以点击链接【订阅到鲜果】
如果我的想法或工具帮助到了你,也可微信扫下方二维码打赏本人一杯咖啡