在前一篇博客中,作者发现了Facebook企业主页管理员身份泄露和未授权添加的漏洞,收获了$1000的奖励,而该篇Writeup则讲述作者在Instagram与Facebook之间进行消息发送的过程中,发现Facebook企业主页管理员(Page Admin)账户信息泄露的漏洞,漏洞收获$5500。以下是作者的分享,我们一起来看看。
Facebook企业主页管理员:Facebook企业页面中用来对页面和其他管理人员进行维护的用户身份。
漏洞发现过程
最近,我一直在做 Instagram 和 Facebook集成功能的安全测试,如果你对Instagram 或 Facebook企业主页集成功能有了解的话,你也就明白了为何可以从Instagram账户链接到 Facebook企业主页的原因了,而且之后,还可以在Facebook企业主页中向Instagram用户发送或接收消息。在Facebook企业主页中,能以下聊天窗口方式向有Instagram链接的用户发送消息:
当我在测试上述Facebook企业页面的消息功能时,我无法从其中发现任何admin id,但当我去测试Instagram的响应时,却从其中的WebSocket响应消息中发现了admin id。也就是说,当从Facebook企业主页消息框向Instagram用户发送消息时,我从其WebSocket消息中发现了Facebook企业主页管理员ID。
来看看具体的漏洞发现过程。首先,我可以以管理员身份从Facebook企业主页中向其中设置有Instagram链接的Instagram用户evilboyajay发送一条消息:
之后,当我从Instagram用户evilboyajay收件箱中查看Facebook企业主页管理员发送过来的消息时,我发现还可以从其中邀请Facebook企业主页管理员账户加入聊天:
接下来,当我从Instagram用户evilboyajay收件箱中邀请Facebook企业主页管理员账户加入聊天后,Facebook企业主页管理员账户的ID等敏感信息竟然泄露在Instagram的websocket响应消息中:
此外,从上述Instagram的websocket响应消息中,可以轻易识别出泄露的Facebook企业主页管理员账户,由于是Instagram 用户邀请的聊天,所以还可在下述GET请求中,通过请求Instagram 用户ID的形式获得其邀请聊天的Facebook企业主页管理员账户:
https://i.instagram.com/api/v1/users/{id}/info/
漏洞上报和处理进程
2020.5.2 漏洞上报
2020.6.8 漏洞分类
2020.6.9 漏洞修复
2020.6.18 漏洞奖励$3500
后续
之后,Facebook告知我漏洞已经修复,但是,在我的复测过程中,我发现仍然可以从Instagram接口/api/v1/users/{id}/info/的GET请求中,获取Instagram邀请聊天的Facebook企业主页管理员用户信息,再次上报后,Facebook也确认漏洞有效:
几天后,Facebook告诉我漏洞已经完全修复,我再次获得$2000的奖励。最终,从该漏洞上,我总计获得了$5500的奖励。
文章参考
https://medium.com/@tnirmalz/facebook-bugbounty-disclosing-page-members-1178595cc520
参考来源
来源:freebuf.com 2020-08-13 22:30:11 by: clouds
请登录后发表评论
注册