域名/子域名接管漏洞

域名/子域名接管漏洞

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,已经意识到了这个问题,并实施了域验证机制。

相关推荐
爱隐身的官人35 分钟前
应急响应-模拟服务器挂马后的应急相关操作
网络安全·应急响应
网安INF1 小时前
【论文阅读】-《SIGN-OPT: A QUERY-EFFICIENT HARD-LABEL ADVERSARIAL ATTACK》
论文阅读·人工智能·网络安全·对抗攻击
深盾安全3 小时前
使用Frida实现Hook,修改接口调用
安全
2301_8016730111 小时前
8.19笔记
网络·安全
zskj_zhyl17 小时前
家庭健康能量站:微高压氧舱结合艾灸机器人,智享双重养生SPA
人工智能·科技·安全·机器人
肥仔哥哥193017 小时前
安全设计-防止非法移机
安全·非法移机·自助机的安全设计·设备的安全设计
网安INF18 小时前
【论文阅读】-《HopSkipJumpAttack: A Query-Efficient Decision-Based Attack》
论文阅读·人工智能·深度学习·网络安全·对抗攻击
网络安全创新研究院20 小时前
飞网揭秘:个人网络与团队网络功能对比
安全
Warren981 天前
软件测试-Selenium学习笔记
java·javascript·笔记·学习·selenium·测试工具·安全
字节跳动安全中心1 天前
智能体防御 | 一文了解3种系统提示词加固方法
安全·llm