安全矩阵

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

利用DNS隧道进行追踪和扫描

[复制链接]

57

主题

57

帖子

181

积分

注册会员

Rank: 2

积分
181
发表于 2024-6-16 14:54:40 | 显示全部楼层 |阅读模式

什么是DNS隧道

DNS隧道是一种利用DNS协议进行数据传输的技术。在网络中, DNS通常用于将域名解析为对应的IP地址, 但是它也可以被利用来传输数据, 而不仅仅是域名和IP地址之间的映射关系。
实现DNS隧道的基本思想是将数据在DNS查询和响应的过程中进行隐藏传输。具体来说, 就是可以通过在DNS请求和响应中嵌入数据,并利用域名解析请求和响应的特性来传输数据。通常情况下, DNS隧道技术可以被用来绕过网络防火墙或其他网络安全设备, 以便在受限制的网络环境下进行数据传输。
实现DNS隧道的技术主要包含以下四类:
  • DNS数据包重组和拆分: 该技术方法是将数据分拆成较小的部分, 然后将其嵌入到DNS请求或响应中。接收端负责将这些部分重新组合成完整的数据。
  • 域名前缀/后缀编码:该技术方法是通过在域名的前缀或后缀中将数据编码后进行传输。例如: 将数据编码到子域名中,并将子域名解析请求发送到DNS服务器。
  • DNS报文字段利用:该技术方法是利用DNS报文中的一些字段来隐藏数据。例如: 将数据存储在DNS报文的TTL(Time To Live)字段或校验和字段中。
  • 利用无效域名和IP地址:该技术方法是使用看似无效的域名或IP地址来进行数据传输, 利用这些无效地址的解析请求和响应来隐藏数据。

DNS隧道攻击典型步骤

攻击者利用DNS隧道进行攻击的整体流程如下图:
利用DNS隧道进行攻击的典型步骤如下:
  • 攻击者首先要注册一个恶意域名:malicious.site, 接着建立一个使用DNS隧道作为通信渠道的C2服务器, 攻击者可以利用多种攻击型工具来丰富C2通道的功能, 例如:Cobalt Strike。

(Cobalt Strike是一款专为红队行动和渗透测试设计的商业化渗透测试工具,由Raphael Mudge开发。它被广泛用于模拟真实世界的网络攻击,用于评估网络防御的强度和安全性。)
  • 攻击者可以创建、开发或获取与服务器通信的恶意软件作为客户端, 并将该恶意软件发送到一个受害的客户端机器。
  • 受害机器通常位于防火墙之后, 无法直接与攻击者服务器通信。然而, 恶意软件可以将数据编码到malicious.site的子域中,并向DNS解析器发出DNS查询。
  • 由于隧道完全限定的域名(FQDN)的独特性, DNS解析器无法从其缓存中找到相应的记录。因此, 解析器将对根域名服务器、顶级域(TLD)名称服务器和攻击者控制的该域的权威名称服务器进行递归DNS查询。

(完全限定域名(Fully Qualified Domain Name,FQDN)是指包含了主机名(Hostname)以及其所在的域名的完整域名标识。它提供了对于特定主机在 DNS 层次结构中的准确定位。FQDN 通常由主机名、域名和根域(Root Domain)组成,形式为:hostname.domain.tld.)
  • 攻击者可以从DNS流量中获取解码后的数据, 并操控DNS响应, 实现将恶意数据渗透到客户端。

攻击者如何利用DNS隧道

将DNS隧道与C2服务器进行结合是黑客常用的方式, 该方法隐蔽且方便定制化。
(C2服务器指的是Command and Control服务器,也称为C&C服务器。它是黑客或者恶意软件(如僵尸网络、恶意软件等)的一个关键组件,用于控制被感染或被攻击的计算机或设备。C2服务器通常会被设置在隐秘的位置,例如使用匿名的托管服务、非法的服务器设立地点或者利用合法的网络服务进行隐藏。黑客或者攻击者通过各种手段与受感染设备建立连接,并且通过加密或其他技术手段来隐藏其真实的身份和位置。)
攻击者利用的DNS类型主要包括: IPv4(A)、IPv6(AAAA)、邮件交换(MX)、CNAME名称、文本(TXT)记录。
有部分的VPN厂商也会出于合法目的使用DNS隧道, 例如: 通过DNS隧道绕过防火墙以避免因特网审查或网络服务费用。
除了C2和VPN用途之外, 攻击者还可以利用DNS隧道来进行追踪和扫描。
  • 用于追踪的DNS隧道:攻击者可以通过将其身份信息编码到子域负载中, 并向受害者提供恶意域来跟踪受害者在垃圾邮件、钓鱼或广告内容方面的活动。
  • 用于扫描的DNS隧道:攻击者可以通过在隧道负载中编码IP地址和时间戳, 并伪装源IP地址来扫描网络基础设施, 之后, 攻击者能够发现开放的解析器, 以便利用解析器的漏洞执行DNS攻击, 这可能会导致恶意重定向或拒绝服务。

用于追踪的DNS隧道案例

在传统的C2通信中跟踪受害者行为时, 黑客的恶意软件会将用户行为数据嵌入到恶意URL中, 并通过网络流量传输到C2服务器。在DNS隧道中, 攻击者通过DNS流量中的子域来实现与之相同的效果。
在这种DNS隧道的应用中, 攻击者的恶意软件将有关特定用户及其行为的信息嵌入到DNS查询的唯一子域中。这个子域是隧道负载, 完全限定域名(FQDN)的DNS查询使用了攻击者控制的域。
攻击者控制的域的权威名称服务器接收到DNS查询, 这个由攻击者控制的名称服务器存储了该域的所有DNS查询, 这些DNS查询的唯一子域和时间戳提供了受害者活动的日志记录。攻击者甚至可以利用它来跟踪活动中的多个受害者。
在下面的案例中, 黑客使用了75个IP地址作为域名服务器, 解析了658个攻击者控制的域名, 针对了731个潜在受害者。每个域名只使用一个域名服务器IP地址, 而一个域名服务器IP地址最多可以为123个域名提供服务。这些域名使用相同的DNS配置和相同的子域编码方法。黑客在.com或.info顶级域名下注册了所有域名, 并通过组合两个或三个根单词来设置域名, 这是攻击者用来规避域名生成算法(DGA)检测的一种方法。
以下是“TrkCdn”活动中域名的列表, 该活动使用DNS隧道技术来追踪受害者与其电子邮件内容的交互,包括: FQDN、域名服务器、域名服务器IP地址和注册日期,如下表:
域名
FQDN示例
域名服务器
域名服务器IP地址
注册日期
simitor.com
04b16bbbf91be3e2fee2c83151131cf5.trk.simitor.com
ns1.simitor.com ns2.simitor.com
193.9.114.43
July 6, 2023
vibnere.com
a8fc70b86e828ffed0f6b3408d30a037.trk.vibnere.com
ns1.vibnere.com ns2.vibnere.com
193.9.114.43
June 14, 2023
edrefo.com
6e4ae1209a2afe123636f6074c19745d.trk.edrefo.com
ns1.edrefo.com ns2.edrefo.com
193.9.114.43
July 26, 2023
pordasa.info
2c0b9017cf55630f1095ff42d9717732.trk.pordasa.info
ns1.pordasa.info ns2.pordasa.info
172.234.25.151
Oct. 11, 2022
vitrfar.info
0fa17586a20ef2adf2f927c78ebaeca3.trk.vitrfar.info
ns1.vitrfar.info ns2.vitrfar.info
172.234.25.151
Nov. 21, 2022
frotel.info
50e5927056538d5087816be6852397f6.trk.frotel.info
ns1.frotel.info ns2.frotel.info
172.234.25.151
Nov. 21, 2022
上表仅仅列出了隧道域名使用的与跟踪相关的DNS配置。攻击者将根域名、域名服务器和cdn.simitor.com设置为相同的IP地址:193.9.114.43, 这种行为方式是隧道域名的常见配置指标, 因为攻击者需要为自己建立一个域名服务器, 同时又尽量降低攻击成本,因此, 他们通常只使用一个IP地址来进行域名托管和作为域名服务器。
所有*.trk.simitor.com都通过通配符DNS记录重定向到cdn.simitor.com, 设置方法如下:
simitor.com A 193.9.114.43
ns1.simitor.com A 193.9.114.43
ns2.simitor.com A 193.9.114.43
cdn.simitor.com A 193.9.114.43
*.trk.simitor.com CNAME cdn.simitor.com
在上面的表格中, FQDN内容最前面的Md5哈希值代表DNS流量中的电子邮件地址, 这些Md5值是隧道负载的DNS查询的子域, 例如:电子邮件地址:  sunshine@sampledomain.com的MD5值为:4e09ef9806fb9af448a5efcd60395815, 那么, 隧道负载的DNS查询的FQDN内容将是:4e09ef9806fb9af448a5efcd60395815.trk.simitor.com。
对这些FQDN的DNS查询可以作为威胁行为者发送的电子邮件的跟踪机制, 例如: 如果受害者打开了这些电子邮件中的其中一封, 嵌入的内容可能会自动生成DNS查询, 或者受害者可能会点击电子邮件中的链接, 无论哪种情况, 感染的主机生成了FQDN的DNS查询后, DNS解析器将联系FQDN的权威名称服务器的IP地址, 由于其通配符配置, 受害者的DNS解析器将获得以下结果:
<br />
4e09ef9806fb9af448a5efcd60395815.trk.simitor.com. 3600 IN CNAME cdn.simitor.com.</p>
<p>cdn.simitor.com. 555 IN A 193.9.114.434e09ef9806fb9af448a5efcd60395815.trk.simitor.com. 3600 IN CNAME cdn.simitor.com.

cdn.simitor.com. 555 IN A 193.9.114.43
因此,尽管针对不同目标的完全限定域名(FQDNs)各不相同,它们都被转发到由cdn.simitor.com使用的相同IP地址。然后,这个权威名称服务器返回一个DNS结果,指向一个由攻击者控制的服务器,提供由攻击者控制的内容。这些内容可能包括广告、垃圾邮件或钓鱼内容。
为了跟踪目的,攻击者可以从他们的权威名称服务器查询DNS日志,并将负载与电子邮件地址的哈希值进行比较。这样,攻击者就可以知道特定受害者何时打开了他们的邮件或点击了链接,从而监视活动的表现。

缓解措施

可以采取以下措施来减少DNS解析器的攻击面:
(1).控制解析器接受必要查询的服务范围。
(2).及时更新解析器软件版本, 防止N-day漏洞的出现。



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

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

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-9-8 09:12 , Processed in 0.014299 second(s), 19 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

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