DNS 隧道 - 缓解

信息安全 dns 攻击向量 dns 域 隧道
2021-09-11 07:19:35

我相信 DNS 隧道的根本原因是因为允许内部主机对外部域进行递归查询。为了使 DNS 隧道正常工作,内部主机应该能够向攻击者控制的域 dnstunnel.xyz.com 发送查询。

我想知道如果我们将 DNS 查询限制在已知/权威的 DNS 服务器上,它会阻止这种攻击吗?明确地说,当我们使用第三方 DNS 服务器从组织内部为外部域运行 nslookup 时,它不会解析。

C:\Users\bAdb0y>nslookup cisco.com 8.8.8.8
DNS request timed out.
timeout was 2 seconds.
Server:  UnKnown
Address:  8.8.8.8

DNS request timed out.
timeout was 2 seconds.
DNS request timed out.
timeout was 2 seconds.
DNS request timed out.
timeout was 2 seconds.
DNS request timed out.
timeout was 2 seconds.
*** Request to UnKnown timed-out

我尝试在有和没有上述设置的情况下使用碘设置 DNS 隧道。当递归查询仅限于内部 DNS 服务器时,它无法建立隧道。否则,隧道就像魅力一样工作。那么这个修复有效吗?或者我是否需要完全禁止内部机器的递归查询?

1个回答

首先,DNS 隧道通常利用 DNS 流量通常不受监控的事实。

因此,为了(给予或接受)有效地处理 DNS 隧道,需要以下这些:

  • 有效负载分析(DNS 查询本身的高级视图)
  • 流量分析(状态分析,即跟踪 DNS 查询的多个请求/响应)

还有很多其他的东西需要添加(DNS 查询中的熵测量等)。您可以参考SANS文档。

这个想法是首先阻止机器受到损害。网络中的不明/未知受损机器是一个大问题。

由于这将是题外话,我将跳过组织通常会首先避免陷入这种情况的做法。

出于同样的原因,出于同样的原因,要对反向外壳进行明确的保护是非常困难的。模式/流量分析(带或不带 SSL 剥离)再次成为解决此问题的方法