原文:[Responsible disclosure] How I could have hacked all Facebook accounts
作者:Anand Prakash
译者:杰微刊兼职译者张万程
概要:
这篇文章是关于在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日:被授予15000美元奖励。