DNS科普系列: DNS防火墙(DNS Firewall)

工作中,我们经常会收到五花八门的邮件。

假设某个清晨,刚上班的你,打开邮箱,例行阅读邮件。这时,刚好看到一封未读邮件。这封邮件的正文,演示了一项新的产品功能,而这个功能刚好能解决你所在的部门一个很头疼的问题。迫切需要了解如何解决这个问题的你,点开了这个看似信誉良好的商业网站链接。

然而,这封邮件其实是经过设计的网络钓鱼邮件,邮件中隐藏着恶意软件或链接,当你点击后,可能会打开一个伪装得很深的Google登录表单,它可以记录和窃取你的信息……

DNS科普系列: DNS防火墙(DNS Firewall)
图1. 恶意域名和站点的工作原理

面对威胁重重的网络环境,如何提高网络安全成为了亟待解决的问题。针对互联网上的威胁防护,可以利用DNS防火墙来解决。


什么是DNS防火墙和DNS RPZ?

DNS防火墙是一种网络安全解决方案,可以防止网络用户和系统链接到已知的恶意网络位置。DNS防火墙可以选择性地拦截恶意地址,并且可以有选择地控制哪些域名、IP地址和子网以及名称服务器可以在网络上运行。

DNS RPZ是DNS防火墙策略中的一种。

DNS RPZ拥有开放的、与供应商无关的格式,它允许DNS服务器操作员维护自己的防火墙策略,并与所有内部名称服务器共享它们,或者直接订阅外部防火墙策略,例如商业或合作式的“威胁源”。使用DNS RPZ的名称服务器可以预订一个或多个DNS策略规则集(称为“响应策略区域”)。RPZ规则集中的每个规则都存储在DNS资源记录集(RRset)中,并由“触发-trigger”和“操作-action”组成。

DNS防火墙是如何工作的?

DNS防火墙凭借其背后的大数据平台,实时获取全球情报,并及时向用户提供可靠信息,帮助用户判断当前点击的链接是否为可靠站点。

DNS科普系列: DNS防火墙(DNS Firewall)

图2. DNS防火墙工作原理

现在,我们在回过头来看文章一开始的场景,如果你的电脑里有DNS防火墙的话,事情的发展就会简单很多:当你点击恶意电子邮件的链接时,防火墙可以阻止访问或者将你带入到安全的登录页面,并向你报告危险信息,这样就能避免你的私密信息被窃取,保障网络安全。

使用DNS防火墙,可以做什么?

  • 预防威胁发生

阻止访问受感染的站点,进而防止进一步的威胁。

  • 检测威胁并通知用户

主动检测到已被感染的系统,并通过安全报告的形式将此类威胁通知用户。

  • 保护用户的网络环境,提高网络安全性

当用户访问恶意域名时,防火墙可以将用户定向到安全的登录页面,从而提高网络安全性,并且使用户更多地了解潜伏在互联网中的危害。


参考ISC的相关资料,我们为您提供了几个DNS RPZ的配置示例:

(关于如何配置DNS RPZ的详细过程,请参考ISC网站:https://kb.isc.org/docs/aa-00525

  • 为恶意域名或其子域创建本地DNS “围墙花园(walled garden)”
malicious-domain.com CNAME mywalled-garden.example.com.

*. malicious-domain.com CNAME mywalled-garden.example.com.
  • 将RPZ配置为返回NXDOMAIN,请使用以下命令
malicious-domain.com CNAME .
*.malicious.domain.com CNAME .
  • 创建专门用于邮件的“围墙花园(walled garden)”
malicious-domain.com  MX 0 mywalledgarden-mail.example.com.  malicious-domain.com  A 10.1.1.123  
*.bad.domain.com  MX 0 mywalledgarden-mail.example.com.  *.bad.domain.com  A 10.1.1.123

除此之外,ISC还给出一个删除恶意域名的方法:

DNS防火墙最简单、最常见的删除恶意域名的方法是通过简单地使域名消失而使纯属恶意的域名中毒。所有DNS RPZ规则都表示为资源记录集(RRset),表示“强制域名不存在条件”的方式是添加指向根服务器的CNAME。例如:

$ORIGIN rpz.example.com.

malicious1.org     CNAME .

*.malicious1.org    CNAME .

malicious2.org     CNAME .

*.malicious2.org    CNAME .

需要注意的是:

首先,使恶意域名在响应策略区域内具有相对性。由于在上面的示例中,“.org”后面没有尾随点,因此在扩展后,将在此响应策略区域中创建的实际RRset将是:

malicious1.org.rpz.example.com.         CNAME .
*.malicious1.org.rpz.example.com.       CNAME .
malicious2.org.rpz.example.com.         CNAME .
*.malicious2.org.rpz.example.com.       CNAME .

其次,通常会列出被侵害的域名及其子域名。这是因为恶意域名可能具有或可能具有恶意子域。

在上面的示例中,相对域名malicious1.org和malicious2.org将分别仅匹配真实域名malicious1.org和malicious2.org。相对域名.malicious1.org和.malicious2.org将分别匹配任何一个subdomain.malicious1.org或subdomain.of.malicious2.org。


如需了解DNS防火墙更多的信息,请参考以下资料:

[1] https://kb.isc.org/docs/aa-00519#

[2] https://zvelo.com/using-dns-rpz-to-protect-against-malicious-threats/

[3] https://www.switch.ch/dns-firewall/#tab-b3b9f162-b5d1-11e8-b90c-5254009dc73c-2

[4] https://blogs.cisco.com/security/using-dns-rpz-to-block-malicious-dns-requests

上一篇:云网管 ---云上构建网络自动化体系


下一篇:云栖大会DNS论坛:万物互联的新一代寻址调度服务