利用DNS防火墙增强网络安全防护能力

本文深入探讨DNS防火墙作为关键安全控制机制的工作原理,通过实际攻击案例展示DNS在防范恶意域名、C&C通信和网络钓鱼等方面的有效性,并介绍部署方案包括公共DNS服务和RPZ技术实现。

DNS防火墙增强您的网络安全 | CleanBrowsing

作者:Tony Perez | 2019年10月7日

DNS是互联网的查询表,它在域名(例如perezbox.com)和IP地址(例如184.24.56.17)之间建立桥梁。IP地址是托管域名的服务器位置。除了作为查询表的功能外,它还可以作为有效的安全控制手段。

DNS具有轻量级、无需安装、高效、符合攻击者使用的TTP(战术、技术和程序)以及更重要的是经济实惠的特点。

本文将介绍DNS防火墙(保护性DNS)的概念,并鼓励您将其视为安全治理计划中的附加层。

缓解攻击战术

了解攻击者如何在攻击中利用域名,使我们能够认识到DNS的有效性。以下是攻击者使用的一些战术、技术和程序(TTP),有助于说明这一点:

良性网站
攻击者入侵一个良性站点(域名),用于分发恶意软件或执行其他恶意活动(例如网络钓鱼、SEO垃圾邮件等)。

恶意站点
攻击者创建一个恶意站点(域名),其唯一目的是分发恶意软件或执行其他恶意活动(例如网络钓鱼、SEO垃圾邮件、投放器等)。

命令与控制(C&C)
命令与控制(C&C)是攻击者用于协调其操作的手段。有效载荷会回连到C&C以获取下一步指令。

以上场景都利用完全限定域名(FQDN)来呈现站点。

示例1:2019年Mailgun黑客事件

2019年,有多起WordPress黑客事件利用了一个知名插件中的漏洞。此漏洞影响了数千个站点,包括流行的Mailgun服务。

攻击者利用其访问权限在站点上嵌入JS代码,这些代码会发起对多个不同域名的调用:hellofromhony[.]org、jqueryextd[.]at、adwordstraffic[.]link。这些域名随后会根据请求发起不同的操作(包括窃取信用卡信息)。

嵌入的JS有效载荷会发起DNS请求。

示例2:管理多台服务器

假设您是一个负责数百甚至数千台服务器的组织。攻击者绕过您的防御并在网络中横向移动。在此过程中,攻击者在网络中散布投放器,旨在回连到其C&C。

回连操作会发起DNS请求。

示例3:缓解用户行为(网络钓鱼)

如果我们总能指望什么,那就是好奇心总会害死猫。用户总是会点击。

点击链接会发起DNS请求。

DNS的有效性

以上示例仅快速说明了如何利用DNS来缓解攻击。为了支持这一观点,我们可以参考Verizon的数据泄露调查报告(DBIR)。

分析2012年至2017年的五年期间,您会发现11,079起已确认的数据泄露中,近三分之一被确定为DNS可以缓解的威胁行动(来源:全球网络联盟2018)。对于任何组织来说,拥有一个具有1/3控制相关性的安全控制措施都非常有影响力。

由于DNS是互联网运作的支柱,每次查询域名时,DNS都会按设计被触发。考虑以上不同的场景,您很快会意识到DNS是所有请求必须通过的网关。

DNS防火墙(保护性DNS)作为安全控制

上图显示了DNS防火墙可能适合您的网络架构的方式和位置。

DNS防火墙会检查初始查询,验证其安全性,然后才允许其继续进行DNS通信链的其余部分。有许多优秀的DNS防火墙服务;我个人使用CleanBrowsing安全过滤器(它是免费且高效的)。

IPv4地址:185.228.168.9 和 185.228.169.9
IPv6地址:2a0d:2a00:1::2 和 2a0d:2a00:2::2

如果您运行自己的内部DNS,您可能需要考虑利用响应策略区域(RPZ)。RPZ是一种安全规范和协议,用于通过安全智能增强DNS解析器处理域名的能力。它允许本地DNS解析器限制对恶意或不需要内容的访问。它允许您创建自己的DNS防火墙。

这种部署适用于大型组织和家庭 alike。:)

发布在安全类别,标签为终端用户安全、国家网络安全意识月(NCSAM)、安全工具与技术、网络与信息安全。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计