聚焦源代码安全,网罗国内外最新资讯!
翻译:360代码卫士团队
大家好,最近怎么样?希望你的答案是“挺好的”。我将通过这篇文章展示我如何在没有使用任何测试工具的情况下发现 Facebook 的一个漏洞问题。说实话,发现这些问题需要的不仅仅是工具,而是一双鹰眼、具有平台意识的漏洞猎手心态、一位诗人和一杯非常可口的早间咖啡,所以这篇文章告诉你的不是技能,而是一些专业建议和狩猎的心理体验!
这只是我第二次在没有写一行代码的情况下就向 Facebook 安全团队提交漏洞报告的情况!
Facebook 为页面管理员提供了一个很棒的功能,可供你找到喜欢某页面某个特定帖子而非喜欢该页面的受众。当且仅当用户喜欢某个帖子但不喜欢页面本身时,它可以显示和某个具体帖子互动的用户,随后你能从互动灯箱 (lightbox) 中通过写有“Invite(邀请)”的小按钮邀请这些互动用户,用户收到的信息如下所示:

一天,我对某个页面的某个帖子表示了“喜欢”但我不喜欢或并未关注该页面,几天后我收到了 Facebook 发送的一份邮件邀请,邀请我对该页面标注“喜欢”。这个功能很赞,不过我认为这是针对非粉丝的功能。当时我在想既然是新功能,会不会存在出错的可能性?
我当时想这个地方没什么可攻击的,不过既然有“邮件通知”不妨一试。不过,我们能用邮件信息干什么呢?
在办公室调查欺诈邮件和钓鱼邮件时,我常常会不加思考地展示信息的“原始”内容(点击邮件回复按钮旁边的下拉式目录小箭头即可,如下图所示)。

你猜这次我发现了什么?

早上9:15:到达公司。
早上9:30:拿出 Mac,冲了一杯咖啡,开始一天的工作:看看早晨的信息、邮件、Facebook 通知什么的。
早上9:35:收到 Facebook 发来的一封题为“你有一份来自{FACEBOOK_PAGE_NAME}的邀请函”的邮件通知。
早上9:36:打开这封邮件。
早上9:37:通过“显示原始邮件”查看邮件详情。
早上9:37:18:从邮件原始的头部信息中发现了 Facebook 管理员的 id。
早上9:38:将问题告知 Facebook 安全团队。

如未发现任何重要信息,不要忘了查看邮件的“原始头部信息”和“详情”,这么做你至少会感到心安。
我虽然已经提交了这个漏洞,但是你现在也可以复现它的效果。从邮件收件箱查找 “You have an invitation from” 搜索字符串,按照复现步骤,你就会找到管理员的姓名。
如果你想碾压 Facebook 的白名单,首先需要研究下 Facebook。现在你知道我为什么花这么多时间耗在 Facebook 上了吧,所以说我是在 Facebook 上工作而不是像那些“坏人”那样只顾聊天。
攻击以逻辑方式运作的东西的逻辑,因为首先它通常并不是以逻辑方式运作的;其次它是由人编写的(人有自己的问题)。
敬请期待我的下一份报告吧~祝安康!
关联阅读
原文链接
https://www.seekurity.com/blog/general/the-2-5mins-or-2-5k-hawk-eye-bug-a-facebook-pages-admins-disclosure-vulnerability/
本文由360代码卫士编译,不代表360观点,转载请注明 “转自360代码卫士www.codesafe.cn”。

