我认为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服务器时,它无法建立隧道。否则,这条隧道就会很有魅力。那么这个方法有效吗?还是我需要完全不允许内部机器进行递归查询?
发布于 2018-03-27 07:13:39
首先,DNS隧道通常利用DNS流量通常不受监控的事实。
因此,要有效地处理DNS隧道,以下是必需的:
还有很多其他的东西要加进去( DNS查询中的熵测量,等等)。您可以参考无菌文档。
这样做的目的是从根本上防止机器受到损害。网络中的不明/未知受损机器是一个大问题。
由于它将是一个非主题,我将跳过组织通常如何避免进入这种情况在第一。
由于同样的原因,对反向壳进行明确的保护是非常困难的。模式/流量分析(不管是否有SSL剥离)也是实现这一目标的方法。
https://security.stackexchange.com/questions/150022
复制相似问题