SuperAPI AI 工具集

hunt-subdomain

安全与审计

查看项目

更新于 10-15 13:39

技能介绍

hunt-subdomain 是一个专门用于发现和验证子域接管(subdomain takeover)漏洞的狩猎技能,属于 elementalsouls/claude-bughunter 技能仓库。子域接管之所以价值高,是因为攻击者能够在公司拥有的可信域名上提供内容,同时绕过同源信任、网络钓鱼过滤器和用户警惕心。

用途与目标 该技能聚焦于高价值目标,包括大型 SaaS 品牌(如 Shopify、Snapchat、Mozilla、Yelp)的子域、由 CDN 支撑的子域(Fastly、CloudFront)、第三方服务集成(UserVoice、WordPress.com、GitHub Pages、GitLab Pages、Heroku、Zendesk)、产品发布后被遗弃的预览/预发/开发子域(如 new.、preview.、course.、delivery.、addons-preview.),以及被用于 OAuth 重定向或 SSO 端点的子域。技能强调,被用于 OAuth 重定向或 SSO 的子域通常回报最高。

主要能力 技能提供了一整套狩猎方法,按步骤组织:

  1. 使用被动与主动来源枚举目标的所有子域,例如 subfinder、amass、assetfinder 以及证书透明度日志(crt.sh)。
  2. 解析所有子域并标记 NXDOMAIN 响应或指向第三方提供商的 CNAME。示例命令包括 cat subdomains.txt | dnsx -a -cname -o resolved.txt。
  3. 使用 nuclei 或 subjack 将 CNAME 与已知易受攻击的提供商指纹进行交叉比对,示例命令包括 subjack -w subdomains.txt -t 100 -timeout 30 -ssl -c fingerprints.json 与 nuclei -l subdomains.txt -t takeovers/。
  4. 对每个被标记的子域进行人工验证,通过 dig 确认 CNAME 存在、确认目标 NXDOMAIN,并用 curl 检查提供商错误字符串。
  5. 确认可认领性,尝试注册资源,例如 GitHub Pages、GitLab Pages、S3 存储桶、UserVoice、Zendesk、WordPress、Fastly 源站主机名。
  6. 认领资源以证明控制(仅足够证明控制,不提供恶意内容),创建包含 HackerOne 用户名和时间戳的最小索引页并截图。
  7. 评估影响升级,检查子域是否出现在 OAuth 重定向允许列表中、是否与父域共享 Cookie(domain=.target.com)、是否被应用 CSP 引用、是否能接收已认证的 API 调用。
  8. 在释放认领前撰写报告。

技能还给出了批量 CNAME 提取与 NXDOMAIN 检测的脚本、nuclei 接管扫描、subjack SSL 扫描、提供商指纹 grep 模式、共享父域 Cookie 检查、Fastly 专属检测、S3 未认领存储桶检查、GitLab Pages 检测等可操作片段。

适用场景 适用于授权漏洞赏金或渗透测试中,对目标域名进行子域接管排查,特别是当目标拥有大量第三方服务集成、历史遗留子域或预览/预发环境时。技能列举了常见根因,如服务下线未清理 DNS、预发基础设施在发布后被遗弃、第三方团队配置的子域、CDN 配置未验证源站、GitHub/GitLab Pages 命名空间未保留、通配符 DNS 记录、收购/剥离公司 DNS 未清理等。

限制与注意事项 技能明确指出,子域接管本身在多数成熟项目中属于低危或信息级,链式组合的回报可达独立发现的 10 至 100 倍。所有操作应在授权范围内进行,认领资源仅用于证明控制,不得提供恶意内容。部分引用的案例(如匿名 H1 报告、Vercel、Fastly)为外部撰写,赏金数字未经核实;只有部分案例有公开的 HackerOne 报告 ID。技能建议在发布报告前进行人工指纹复核,因为提供商会更新其 404 页面。此外,技能中涉及的提供商行为(如 Fastly 是否验证域名所有权)可能随服务条款变化,需要在使用时自行确认。