安全矩阵

 找回密码
 立即注册
搜索
查看: 840|回复: 0

实战 | 记一次赏金2000美元的子域名接管漏洞挖掘

[复制链接]

181

主题

182

帖子

721

积分

高级会员

Rank: 4

积分
721
发表于 2022-11-24 10:32:57 | 显示全部楼层 |阅读模式
本帖最后由 wangqiang 于 2022-11-24 10:38 编辑

实战 | 记一次赏金2000美元的子域名接管漏洞挖掘
valluvarsploit HACK学习呀
2022-11-22 15:52 发表于广东
转载自:实战 | 记一次赏金2000美元的子域名接管漏洞挖掘
目标
今天,我将分享我如何发现 Fastly 子域接管漏洞并获得2000美金的漏洞赏金。

背景故事
这是从 2022 年 10 月 2 日星期日开始的。这一天像往常一样开始了。
选择了一个以前挖过的资产并开始执行子域名枚举(我们将我们的目标称为 redacted.com)

子域名枚举
我使用 Google搜索黑客语法、 OWASP Amass和Gobuster工具
  1. # 使用 Google搜索黑客语法
  2. site:*.redacted.com -www -www1 -blog
  3. site:*.*.redacted.com -product

  4. # 使用 OWASP 的被动子域枚举 Amass
  5. amass enum -passive -d redacted.com -config config.ini -o amass_passive_subs.txt

  6. # 使用 Gobuster
  7. gobuster dns -d redacted.com -w wordlist.txt - show-cname - no-color -o gobuster_subs.txt
复制代码
枚举子域后,删除重复的条目并使用Anew工具将它们合并到一个文件 (subdomains.txt) 中。
  1. # 将子域合并到一个文件中
  2. cat google_subs.txt amass_passive_subs.txt gobuster_subs.txt | anew subdomains.txt
复制代码

然后将 subdomains.txt 文件传递到我的 cname.sh shell 脚本,枚举 CNAME 记录并存储在 cnames.txt 中。
  1. # 枚举 CNAME 记录
  2. ./cname.sh -l subdomains.txt -o cnames.txt

  3. # 我们也可以使用 HTTPX 工具
  4. httpx -l subdomains.txt -cname cnames.txt
复制代码

然后将 subdomains.txt 文件传递给HTTPX工具。探测实时网站并存储在 servers_details.txt 中。
  1. # 实时探测 HTTP/HTTPS 服务器
  2. httpx -l subdomains.txt -p 80,443,8080,3000 -status-code -title -o servers_details.txt
复制代码

分析
我开始分析 cnames.txt 文件,发现一个子域指向两个不同的 CNAME 记录。我在子域上运行了 dig 命令并得到了以下信息
  1. dig next.redacted.com CNAME
复制代码


此子域有两个 CNAME 记录。
第一个 CNAME 记录指向 webflow.io 域,第二个 CNAME 记录指向 fastly.net (Fastly Service) 域。
每当我们有多个 CNAME 记录时,第一个 CNAME 记录会将我们重定向到下一个 CNAME 记录,依此类推。重定向将继续,直到我们到达最后一个 CNAME 记录。

我开始分析 servers_details.txt 文件以查找有趣的内容并找到了这一行。注意状态码和网站标题。
  1. https://next.redacted.com [500] [246] [Fastly error: unknown domain next.redacted.com]
复制代码
状态码为“500”,标题为“Fastly error: unknown domain next.redacted.com”。
通过查看 CNAME 记录(“redacted.fastly.net”)和网站指纹“Fastly error: unknown domain” ,
我们可以确认这是Fastly Subdomain Takeover。

如果一个网站有这个指纹那么它可能会受到攻击。但是,我之前多次遇到过这个Fastly指纹并且它并不容易受到攻击。
它只有在满足某些条件时才会受到攻击,所以这是一个边缘案例。
大多数时候我们无法接管 Fastly 服务。例如,下面的情况
但是,如果该域尚未被其他客户占用,那么我们可以声明该域并完全接管子域。

确认漏洞
我去 fastly.com 检查它是否存在漏洞。
我在 fastly.com 上已经有一个 2 年前创建的帐户,但 6 个月前删除了这个帐户,因为我相信 Fastly 是安全的(现在发现我错了,没有任何系统是绝对安全的)。

检测 fastly 是否易受攻击的步骤
  • 我去了 fastly.com 并创建了一个帐户。
  • 登录到我的 Fastly 仪表板并单击“创建交付服务”按钮。
  • 输入目标子域 (next.redacted.com) 并单击添加按钮。
我原以为会出现错误消息(域已被其他客户占用),但没有出现错误消息。我被重定向到下一页“主机页面”。这对我来说是一个惊喜。

PoC创建
确认漏洞后,我登录到我的 VPS 服务器并创建了一个名为“hosting”的目录。
然后在“hosting”目录中创建一个名为“index.html”的简单 HTML 文件。
  1. mkdir hosting

  2. cd hosting

  3. nano index.html
复制代码
“index.html”文件包含以下代码,
  1. <h1>ValluvarSploit PoC</h1>
复制代码
然后,我在当前工作目录中的端口80上启动了一个简单的Python Web服务
  1. python3 -m http.server 80
复制代码
然后我转到 Fastly 仪表板并在主机页面中添加了我的 VPS 服务器的公网IP 地址。

几秒钟后,我打开了一个新的浏览器窗口并访问了“ http://next.redacted.com/index.html ”页面。
我的 PoC 文件渲染成功。我已经写了一份详细的报告并提交到 HackerOne 上。

通过监控服务器日志学习其他赏金猎人的攻击
我让我的 Fastly 服务运行了 3 天,并监控服务器日志中的敏感信息。观看其他漏洞赏金猎人的方法很有趣。

奖励

我的报告被分类为高严重性漏洞,并在 10 天内奖励 2000 美元。

要点Tips
  • 至少每 6 个月重新审视一次你的旧目标,黑客不走空。
   2.子域名枚举是关键。尽可能多的枚举子域名,字典很重要。
   3. 永远不要放弃,没有挖不到的漏洞,只有不努力的黑客。


作者:valluvarsploit
来源:点击阅读原文
由HACK学习翻译整理,如需转载请注明来源


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-11-29 06:46 , Processed in 0.012722 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表