导语:这篇文章是关于我在Facebook上发现的一个简单的漏洞,我可以用它轻松入侵其他用户的Facebook帐户并且无需任何用户交互。
根据负责任的信息披露政策,我会在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的政策,您不应对任何其他用户的帐户造成任何伤害),并成功为我的帐户设置新密码。然后我可以使用相同的密码登录我自己的帐户。
正如你在视频中看到的,我可以通过暴力破解发送给他们的电子邮件地址和电话号码的代码来为用户设置一个新密码。
POST /recover/as/code/ HTTP/1.1 Host: beta.facebook.com lsd=AVoywo13&n=XXXX
暴力猜解“n”字段,爆破成功,我可以重置任何Facebook用户密码。
披露时间表
2016年2月22日:报告发送至Facebook团队。
2016年2月23日:验证了我的最终解决方案。
2016年3月2日:奖励15,000美元的赏金。