我如何能够黑掉 Facebook 20 亿个账户中的任何一个,而他们却付给我 15,000 美元赏金
我根据负责任的披露政策征得 Facebook 的许可发布此内容。他们已经修复了这个漏洞。
这篇文章是关于我在 Facebook 上发现的一个简单漏洞,我可以利用该漏洞轻松侵入其他用户的 Facebook 帐户,而无需任何用户交互。
这使我可以通过设置新密码来完全访问其他用户的帐户。我能够查看消息、支付部分下存储的信用卡/借记卡、个人照片和其他私人信息。
Facebook及时承认了该问题并修复了该问题,并根据该漏洞的严重性和影响向我奖励了 15,000 美元的奖金。
每当用户忘记 Facebook 密码时,他们可以选择通过在https://www.facebook.com/login/identify?ctx=recover&lwv=110
上输入电话号码和电子邮件地址来重置密码。
然后,Facebook 会向该电话号码或电子邮件地址发送一个 6 位数代码,用户必须输入该代码才能设置新密码。
我尝试在www.facebook.com
上暴力破解 6 位代码,但在 10 到 12 次无效尝试后被阻止。
然后我在 beta.facebook.com
和 mbasic.beta.facebook.com
上查找了同样的问题。有趣的是,忘记密码端点缺少速率限制。
我尝试接管我自己的帐户(根据 Facebook 的政策,您不应对任何其他用户的帐户造成任何损害),并成功为我的帐户设置了新密码。然后我可以使用相同的密码登录我自己的被黑帐户。
https://youtu.be/U3Of-jF1nWo
POST /recover/as/code/ HTTP/1.1
Host: beta.facebook.com
lsd=AVoywo13&n=XXXXX
暴力破解“n”成功让我为任何 Facebook 用户设置了新密码。
2016 年 2 月 22 日:报告发送给 Facebook 团队。
2016 年 2 月 23 日:从我这边验证了修复。
2016 年 3 月 2 日:Facebook 悬赏 15,000 美元
推荐阅读:
实战 | 记一次赏金1.78万美金的Github未授权漏洞挖掘