DNS 是网络应用中非常重要的基本协议,它将无法容纳在内存中的长字符串IP 地址映射为可读的字符域名。由于DNS应用程序的独特性,DNS所使用的应用程序端口(端口53)几乎总是在防火墙策略中允许的,允许向外连接到Internet,因此攻击者可以利用DNS应用程序中的这个“漏洞”进行“性”攻击。被剥削。 “特洛伊木马程序的构建目的是建立一个很难限制的隐蔽命令和控制通道,允许攻击机器与相对封闭的网络内的设备进行交互。
如上图所示,由于防火墙D的规则,用户A和用户B无法访问外部网络,但防火墙允许DNS流量。如果本地DNS服务器无法为用户A需要解析的域名提供答案,则本地DNS服务器通过重复查询的方式在互联网上寻找所查询域的权威DNS服务器,形成逻辑通道。因此,恶意程序将通信数据封装在客户端DNS查询的请求包中,当该数据包最终到达攻击者控制的权威DNS服务器时,解析请求包中的数据并将其反向封装并返回。数据。它包含在DNS 响应中并返回给用户A,从而启用受感染主机和CC 服务器之间的通信。攻击者利用DNS隧道进行攻击可以隐藏DNS、绕过防御(例如禁止外部连接)、逃避流量检测(例如签名检测)、逃避IOC检测(例如访问外部恶意IP地址或恶意域名)。姓名)。
DNS的主要编码方式
目前个人设置DNS隧道的实现工具有很多,包括iodine、dnscat2、DeNise、dns2tcp、Heyoka、dnsshell、OzymanDNS等。 DNS隧道通信常用的编码方式有Base64编码、二进制编码、十六进制编码等。请求的类型通常是txt类型。各种后门木马实例,例如QQ粘虫、ALMA通讯器木马,都利用DNS隧道技术发出控制指令并提取敏感数据。
要检测和防止DNS 隧道攻击,首先要检测异常DNS 流量,并通过监视DNS 服务器日志或使用监视网络数据包的工具来监视网络上主机的DNS 查询。您需要跟踪这些数字。阈值可能已被超过。同时,它监视网络中的DNS 查询数量,限制主机可以访问的DNS 服务器,限制可以发起DNS TXT 解析请求的主机范围,并控制传入和传出的TXT 请求。这会增加流量并增加攻击者的通道部署成本。
(本文部分素材取自网络,如有偏见或版权问题,请联系我们删除,谢谢!)
本文和图片来自网络,不代表火豚游戏立场,如若侵权请联系我们删除:https://www.huotun.com/game/646322.html