域名/子域名接管漏洞

域名/子域名接管漏洞

1.域接管

如果您发现某个域名被某个服务使用,但公司已经失去了对其的所有权,您可以尝试注册它(如果便宜的话),并通知该公司。如果该域名通过GET参数或Referer标头接收到一些敏感信息,比如会话cookie,那么这肯定是一个漏洞。

黑客的攻击描述:

  • 公司失去域名所有权:公司的某个域名被其他人注册,或者被公司忘记续费而被别人注册。
  • 服务仍在使用该域名:公司的一些服务或应用程序仍然在使用这个域名进行某些操作,比如API请求、静态资源加载等。
  • 注册该域名:你发现这个域名可以被注册,并且进行注册。
  • 接收到敏感信息:通过该域名的GET参数或Referer标头接收到一些敏感信息,比如会话cookie。

2.子域接管

子域接管概述

子域接管发生在一个组织的子域名指向了一个已不再控制的资源(例如,SaaS服务、云存储、第三方服务等),从而使得攻击者可以注册该资源并接管子域名。这种漏洞可能导致各种安全问题,包括数据泄漏、钓鱼攻击、会话劫持等。

黑客的攻击描述:

1、指向失效的资源:

2、攻击者注册资源:

  • 攻击者发现子域名sub.example.com指向了一个已不再使用的外部服务。
  • 攻击者在该外部服务上创建了同名资源(例如,在GitHub上创建了username.github.io或者在Heroku上创建了名为app的应用)。

3、子域名接管:

使用BBOT扫描可劫持的子域

BBOT的默认子域枚举中包含子域接管检查

bash 复制代码
bbot -t evilcorp.com -f subdomain-enum

通过DNS通配符生成子域接管

DNS通配符记录允许将未明确指定的子域指向一个通用地址。当使用DNS通配符时,任何请求的子域,如果没有明确指定不同的地址,将被解析为相同的信息。可以是一个A记录(IP地址)或CNAME记录(别名)。

假设我们有一个通配符DNS记录*.testing.com指向1.1.1.1。

如果管理员将通配符记录指向一个第三方服务(通过CNAME),比如一个GitHub Pages子域,例如sohomdatta1.github.io,情况会有所不同。

假设*.testing.com的CNAME记录指向sohomdatta1.github.io

当CNAME通配符指向第三方服务时,会存在一个严重的安全风险。攻击者可以创建自己的第三方页面并控制这些子域。

1、攻击者在GitHub Pages上创建了一个页面,例如attacker.github.io

2、由于*.testing.com指向sohomdatta1.github.io,攻击者可以利用这一点。于是攻击者注册了attacker.github.io,并将其配置为托管一个恶意页面。

3、攻击者可以创建一个任意子域,如something.testing.com并使其解析到attacker.github.io

4、因为*.testing.com的CNAME记录指向sohomdatta1.github.io,DNS会将something.testing.com解析到attacker.github.io

5、造成的后果

  • something.testing.com 现在指向攻击者控制的页面。任何用户访问something.testing.com都会看到攻击者创建的内容。
  • 攻击者可以利用这个子域进行钓鱼攻击、传播恶意软件等。

3.利用子域接管

子域接管本质上是互联网上特定域的DNS欺骗,允许攻击者为一个域设置A记录,导致浏览器显示来自攻击者服务器的内容。这种浏览器中的透明性使域容易受到钓鱼攻击。

1、使用SSL证书增加可信

如果攻击者通过生成SSL证书,将增加这些虚假域的合法性,使钓鱼攻击更具说服力。

2、电子邮件和子域接管

子域接管的另一个方面涉及电子邮件服务。攻击者可以操纵MX记录以从合法子域接收或发送电子邮件,增强钓鱼攻击的效果。

3、NS记录接管

如果攻击者控制了一个域的一个NS记录,他们可能会将部分流量引导到他们控制的服务器。如果攻击者为DNS记录设置了较高的TTL(生存时间),则这种风险会加剧,延长攻击的持续时间。

4、Cookie安全和浏览器透明性

Cookie通常用于管理会话和存储登录令牌,可以通过子域接管来利用。攻击者可以通过将用户重定向到一个受损的子域来收集会话cookie,危及用户数据和隐私。


4.子域名接管防御手段

缓解策略包括:

  1. 删除易受攻击的DNS记录 - 如果不再需要子域。
  2. 声明域名 - 在相应的云提供商注册资源或重新购买过期的域名。
  3. 定期监控漏洞 - 像aquatone这样的工具可以帮助识别易受攻击的域。组织还应审查其基础设施管理流程,确保DNS记录创建是资源创建的最后一步,也是资源销毁的第一步。

对于云提供商,验证域所有权对于防止子域接管至关重要。一些提供商,如GitLab,已经意识到了这个问题,并实施了域验证机制。

相关推荐
用户962377954481 天前
DVWA 靶场实验报告 (High Level)
安全
数据智能老司机2 天前
用于进攻性网络安全的智能体 AI——在 n8n 中构建你的第一个 AI 工作流
人工智能·安全·agent
数据智能老司机2 天前
用于进攻性网络安全的智能体 AI——智能体 AI 入门
人工智能·安全·agent
用户962377954482 天前
DVWA 靶场实验报告 (Medium Level)
安全
red1giant_star2 天前
S2-067 漏洞复现:Struts2 S2-067 文件上传路径穿越漏洞
安全
用户962377954482 天前
DVWA Weak Session IDs High 的 Cookie dvwaSession 为什么刷新不出来?
安全
cipher3 天前
ERC-4626 通胀攻击:DeFi 金库的"捐款陷阱"
前端·后端·安全
一次旅行6 天前
网络安全总结
安全·web安全
red1giant_star6 天前
手把手教你用Vulhub复现ecshop collection_list-sqli漏洞(附完整POC)
安全
ZeroNews内网穿透6 天前
谷歌封杀OpenClaw背后:本地部署或是出路
运维·服务器·数据库·安全