分析叽歪的 CSRF 漏洞
作者:mingcheng 来源:gracecode.com 时间:2009-02-09 14:26:00
声明,此漏洞已提交叽歪官方处理(2009-02-05),本案例仅作技术研究。由此漏洞造成的所有后果,本人不承担任何责任。
参加集团“精武门”安全峰会时,80sec 团队对于饭否的 CSRF 蠕虫攻击案例还记忆犹新。抱着对比的心态,逐个检测国内各微博客类站点的安全性能,最终“很不幸”的锁定到了叽歪上。
分析叽歪页面发布信息页面的表单,结果发现全部都是交给 updateStatus 方法处理,如图
那么我们来看下 updateStatus 的脚本是怎么写的(通过这个脚本,也可大体的了解叽歪的 API):
发现 updateStatus 的脚本非常简单,就是检测下 textarea 的值是否为空(其实那样敲几个空格就可以绕过),然后就提交给服务器处理。而且逻辑上似乎有问题,返回的都是 false (或许是为了防止事件冒泡)。
既然 Javascript 方面没有增加额外的提交参数,这说明在 Javascript 禁用的情况下提交表单服务器那边也是能处理的。那么,根据叽歪发布页面的表单,尝试本地构建个同样的表单发送叽歪信息
<form action="http://jiwai.de/wo/status/update" method="post">
<textarea name="jw_status" ></textarea>
<input type="submit" />
</form>
结果成功了。这表明有存在 CSRF 的可能 -- 用户可以自行表单,发送信息给叽歪服务器处理,并且没有任何验证信息。
然后,非常“ * ”地将 POST 方式改成 GET 尝试,结果发现又成功了。看来叽歪的接口没有区分 POST 和 GET,那么这样攻击的危害更扩大了层。
根据这个漏洞,简单的写了个本地 Javascript 脚本,尝试每隔一秒发送叽歪信息
setInterval(function() {
var img = new Image();
var message = '明城很帅';
var api = 'http://jiwai.de/wo/status/update';
img.src = api + '?jw_status=' + message + '&t=' + new Date().getTime();
}, 1000);
剩下就是社会学的范畴了。想到 沉鱼 小姑娘是叽歪的重度用户,于是让她打开这个页面(这时候,相貌是多么的重要)。
结果自然是预期所想的,顺便发现叽歪也没有限制发送信息的频率。就这样打住,通过这个漏洞进行蠕虫等进一步攻击等已是唾手可得。
最后,啰嗦下防范 CSRF 攻击的“军规”:
在请求中使用 Security token
正确使用 GET、POST 和 Cookie
使用 Referer 判断请求来源
后记
截止发文时(2009-02-07),叽歪已经修复了该漏洞,增加了个 Security token :
<input type="hidden" value="..." name="crumb" />
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
网站优化必修课 快速分析竞争对手七步骤
百度知道和百科推出“国庆阅兵大百科”专题
![](https://img.aspxhome.com/file/UploadPic/200910/20091012153955415.jpg)
20条让Google搜索更有效的技巧
Web服务器常见8种安全漏洞
更快更安全更稳定 OpenDNS上网新方式
腾讯起诉搜狗输入法不正当竞争 索赔2000万元
Web服务器的急救工具箱
邮件系统的选型与架构专题(下篇)
![](https://img.aspxhome.com/file/UploadPic/20103/12/502211-95s.jpg)
百度如何判断网站文章是否原创
防范被种ASP木马需要注意这10点
asp后门、asp木马大清理
Win 2003中为SMTP服务配置本地域
IIS网站服务器性能优化指南[资源下载]
![](https://img.aspxhome.com/file/UploadPic/20094/3/yslow-96s.jpg)
老生常谈:谷歌到底是怎么对待seo优化的
![](https://img.aspxhome.com/file/UploadPic/20091/200916182914109.gif)
Windows 2000服务器安全配置精华教程
关键词选择攻略 处理好冷热门及专业关系
WordPress3.2.1测试版发布 修复部分兼容问题
![](https://img.aspxhome.com/file/UploadPic/20117/13/050z5215524-71s.jpg)
Pay Per Click 广告模式并不一定适合你
![](https://img.aspxhome.com/file/UploadPic/20094/200942012362276.jpg)