Facebook在发现并报告了一个基于文档对象模型的跨站点脚本(DOM XSS)漏洞后,向他奖励了20,000美元,该漏洞可能被利用来劫持帐户。
研究人员说,他在 window.postMessage() 方法中发现了该漏洞,该方法旨在安全地启用Window对象之间的跨域通信。
研究人员说,识别漏洞的过程始于 适用于java script的Facebook登录SDK,该SDK创建了代理iframe v6.0 / plugins / login_button.php 以进行跨域通信。
Kumar 发现的 是,登录SDK向代理iframe发送了初始有效负载,并且该有效负载包含“继续使用Facebook”按钮的点击URL,该URL在代理iframe中呈现。
当用户单击“继续使用Facebook”按钮时,来自postMessage 有效负载的URL 在代理iframe中执行,这导致java script在Facebook.com上执行。
研究人员确定了可以利用此漏洞的两种方式,一种涉及打开弹出窗口然后与之通信,另一种依靠打开iframe并与之通信。
成功利用此漏洞将使攻击者可以获取受害者的会话Cookie并劫持其帐户。
“由于错误的帖子配置,访问攻击者控制的网站并单击Facebook按钮单击登录的用户将在登录用户的facebook.com域上触发XSS。这样一来,一键式帐户接管就可以了。”
他发布了一段视频来演示这次攻击:
Facebook于4月17日获悉这一发现。三天后,该社交媒体平台通过“在有效负载URL参数中添加facebook.com regex域和架构检查”来解决该漏洞。两周后,该公司向研究人员授予了20,000美元的漏洞赏金。