漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1

admin 2025年3月21日01:07:14评论13 views字数 1910阅读6分22秒阅读模式
forever young

不论昨天如何,都希望新的一天里,我们大家都能成为更好的人,也希望我们都是走向幸福的那些人
01

引言

安全小白团

大家好,我是 Bipin Jitiya。Facebook 是世界上最大的社交网络平台,也是使用最广泛的网站之一。我一直对测试 Facebook 的安全性很感兴趣。在子域名枚举过程中,我发现了一个子域名:https://m-nexus.thefacebook.com,并注意到以下截图中的内容:

漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
我迅速用 Google 搜索了关键词 mstrWebAdmin,发现这是一个基于 MicroStrategy 工具构建的商业智能门户。
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
通过查阅官方配置文档,我发现有两个端点是公开可访问的:
https://m-nexus.thefacebook.com/servlet/mstrWebhttps://m-nexus.thefacebook.com/servlet/taskProc
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
进一步研究后,我发现 taskProc 端点不需要认证,它通过 taskId 参数执行一些自定义数据收集和内容生成。通过枚举预构建任务(使用 Burp Intruder),我发现每个预构建任务都会检查有效的认证会话参数,但 “shortURL”任务处理短链接时不会检查认证会话。攻击者可以利用这一点未授权访问该服务。
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
02

漏洞发现与利用

安全小白团

我对官方文档中提到的所有参数进行模糊测试,但没有发现任何问题。每次都会返回错误消息“源 URL 无效”,状态码为 500。于是,我决定下载托管的Web应用并进行代码审计。我下载了一个超过 400 MB 的应用包,其中包含多个脚本和 JAR 文件。

漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
通过使用 JD-GUI 工具反编译 JAR 文件,我开始审查代码。我的主要目标是 shortURL 任务,它处理短链接且不检查认证会话。最终,我找到了相关的 Java 类。
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
我发现,srcURL 参数只接受通过 https://tinyurl.com/ 创建的 URL。以下是代码片段:
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
现在,让我们来利用它!
1. 打开 Burp Suite 代理工具,生成一个 Collaborator payload 并复制。
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
2. 在浏览器中打开 https://tinyurl.com/,输入 Collaborator payload 并创建短链接。
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
3. 将生成的短链接插入以下 URL 的 srcURL 参数中并访问:
https://m-nexus.thefacebook.com/servlet/taskProc?taskId=shortURL&taskEnv=xml&taskContentType=json&srcURL={YOUR_TINY_URL_HERE}
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
4. 观察到 Burp Collaborator 立即收到请求,显示 IP 地址 199.201.64.1,确认存在外部 SSRF 漏洞。
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
接下来我尝试测试内部 SSRF。创建一个无效内部 IP 地址(如 123.10.123.10)的短链接,插入 srcURL 参数,观察服务器无响应。
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
创建一个有效内部 IP 地址(如 127.0.0.1:8080)的短链接,插入 srcURL 参数,观察服务器要求 HTTP Basic认证。
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
通过这些观察,我们可以枚举Facebook的内部基础设施。我迅速将发现报告给 Facebook,但最初被拒绝,因为他们认为这不是安全漏洞。
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
03

深入挖掘

安全小白团

为了提供更多证据,我尝试使用诸如 file://、dict://、ftp://、gopher:// 等读取内部信息,还尝试获取云实例的元数据,但均未成功。

经过一段时间,我终于找到了一些有影响力的攻击场景:
1. 反射型XSS
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
2. 利用 SSRF 进行钓鱼攻击
步骤1:创建一个仿冒 Facebook 登录页面,窃取用户凭据。
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
步骤2:使用 https://tinyurl.com/ 生成短链接。
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
步骤3:将短链接插入 srcURL 参数并发送给受害者。
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
一旦受害者在此页面上输入其用户名和密码,它就会被保存到我服务器的文件中。受害者会被重定向到真正的 Facebook 登录页面。您可以看到主机名是字符串“m-nexus.thefacebook.com”,因此它看起来是合法的。
步骤4:受害者输入凭据后,我获取这些信息。
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1
攻击者还可能利用此漏洞将用户重定向到其他恶意网页,以提供恶意软件和类似攻击。
3. 枚举内部网络服务
通过 Burp Intruder 发送超过 10,000 个请求,扫描内部网络并发现开放端口。
漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1

经过扫描,我最终发现一个在10303端口上运行的应用程序,名为“ LightRay ”。

漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1

Facebook 安全团队很快便修复了该漏洞。

漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1

这就结束了吗?——不,故事才刚刚开始(未完待续)

原文始发于微信公众号(安全小白团):漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年3月21日01:07:14
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   漏洞变现金:我的31500美元Facebook漏洞赏金之旅 0x1https://cn-sec.com/archives/3861236.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息