王迪
国网平顶山供电公司 河南平顶山 467000
随着物联网技术、AI技术和云技术的日渐普及,传统互联网模式正朝着“互联网+设备”“互联网+AI”“互联网+云”的“互联网+”趋势转变,万物互联时代即将到来。Internet诞生到如今,域名系统所具备的作用已经不单单是基本的解析功能,它已经成为互联网环境中重要的基础设施和软硬件技术系统的重要基石。然而,由于DNS的本身设计安全漏洞,下一代DNS也将面临着更加严峻的安全挑战。万物互联时代将带来对数据安全的防护变化,智能家居数据、个人隐私数据、医疗生活设备数据等,甚至包括一些更敏感的关系到人身健康的数据。黑客不仅能够利用域名系统的隐蔽通道来获取这些数据,更能通过恶意指令更改医疗数据,对人身造成危害。此外,随着万物互联的不断发展,DNS系统将面临着大规模DDoS攻击的风险。互联网云安全也受到DNS攻击的严重威胁,其中通过DNS欺骗并利用DNS隐蔽通道来获取隐私数据的攻击方式,对现有网络云环境的域名集中管理能够造成严重破坏,一旦云服务器受到DDOS攻击,将会造成严重的损失。因此,DNS攻击的有效检测方式以及DNS安全防护手段的研究是保障DNS系统稳定发展的重要使命。
域名系统的架构中,其中域名服务器包含了域名树的结构信息以及设置相关信息的服务器程序;域名解析器包含对相应域名请求,以及从服务器中得到相应的查询结果。在DNS域名系统刚开始设计时,域名系统的相关协议并没有充分考虑互联网安全问题。UDP协议在网络信息的传输过程中并没有对要传输的网络数据进行加密处理,没有查询相应的网络资源是否有防伪签名,因此,攻击者往往会通过注入网络病毒、利用隐秘通道进行数据监听、恶意篡改网络数据等行为来攻击域名系统。
DNS系统的漏洞来自DNS系统工作原理、系统架构和服务管理方面,在庞大的互联网世界中,有大量的开放DNS服务器并没有相应的安全验证和保护措施,因此这些开放服务器在解析过程中存在严重的安全风险。另外,攻击者利用DNS服务软件的漏洞进行攻击也是一种常见的攻击手段。此外,互联网中庞大的第三方DNS服务器群体,没有规范的管理和防护措施,也成为被攻击的对象。
互联网技术发展的同时,DNS攻击形式也越来越多,手段也越来越复杂。由于DNS系统架构功能的多样性及网络设备的覆盖性,一旦受到攻击,将造成严重后果。因此,DNS攻击安全检测和安全防护是十分必要的,其相关研究也会越来越被人关注。大多数的网络攻击都是逐利的,网络攻击者会主动攻击DNS服务器,造成服务中断,然后对内部网络进行持续攻击,窃取企业关键信息,对被攻击者造成数据、声誉、用户、经济等方面损失。据思科网络安全报告显示,网络攻击者能够通过恶意攻击手段在短时间内控制十万台网络设备,来进行大范围的网络攻击。攻击者会提前将这些恶意软件放置在被攻击者的设备内存中,并会随着用户的开、关机清除软件攻击痕迹,所以很难收集这些恶意程序的攻击记录和方式。
DNS攻击检测与安全防护的研究意义在于:(1)能够及时发现攻击并阻断攻击,确保DNS功能设备可运行性;(2)增强DNS系统的防护能力,做到未雨绸缪;(3)促进新的DNS系统防护理念和先进性防护技术的发展。
在整个互联网环境中拥有大量的DNS服务器群,并且许多都是开放的DNS服务器。除了这些开放服务器,还有大量非官方、个人的开放DNS服务器。在域名解析过程中,会涉及不同级别和地区的域名服务器和解析程序,但却没有安全的链路对数据进行传输,无法保证数据的真实性和完整性。因此,攻击者可以利用漏洞进行攻击,窃取用户的个人信息和浏览记录等。
DNS攻击对比分析表
传统检测恶意域名的方法成本高、周期长、检测手段单一,所以需要一种能够从域名词汇和域名访问角度提取多个特征,再基于恶意域名特征分类来检测的多样化的检测方法。现有的检测方法往往采用复杂特征提取的方法,结合多种检测系统进行多重检测,虽然这种方式大大提升了检测精度,但它却需要增加检测成本并在检测速度上有很大的不足。本文的主要贡献如下。
在进行域名DNS解析提取之前,对域名进行统一格式拆解,这可以保障数据格式的统一,提高模型广泛适用性,并简化后续的域名特征位置向量、注册信息等。这样与正常的操作检测效果相比,在一定程度上减少了所需提取的特征数量,同时提高了特征提取的速度。
网络攻击者会通过DGA算法产生恶意域名,这些域名在格式上与普通的域名有很大的差异,再利用这些差别来逃避相应的安全检测。通过设置不同的时间区间,然后观察这些时间区间内的域名访问数据,整理数据与常规域名访问的访问量进行数据比较,通过数据对比找到差异,以此当作判断依据。当网络攻击者使用DGA算法生成恶意域名时,可以很容易绕过传统域名检测特征,但网络中的流量是可以被反映出来的。
针对DNS安全威胁的根源,本节总结和分析了近年来在协议、系统、检测方法等方面的有效措施。
为了解决DNS系统在数据传输过程中的真实性和完整性保护问题,IETF提出了DNS安全增强方案DNSSEC。当用户收到域名信息时,同时也会收到对应记录的签名,用户可以根据签名检查数据的真实性和完整性。DNSSEC采用公钥加密的方式对授权区域的数据进行数字签名,避免互联网遭受伪造DNS数据的侵害。DNSSEC的身份验证功能,可以确保数据来自指定的源,并且在传输过程中未被修改,同时还可以检测证明该域名的真实性。
虽然DNSSEC增强了DNS的安全性,但它并没有形成一个完整的解决方案,它无法抵御分布式拒绝服务(DDoS)攻击,无法确保信息交换的机密性,无法加密网站数据,也无法防止IP地址欺骗和网络钓鱼。为了保障互联网的安全,还需要其他的防护措施来配合DNSSEC使用,例如DDoS攻击缓解、SSL加密、站点身份验证以及双重身份验证等。
目前DNS系统所采用的UDP数据传输协议虽然能够进行网络数据的传输,但UDP协议在数据传输过程中不会对所传输数据进行安全验证,比如数据的真实性和完整性的验证。所以保障传输协议的防护有效性是提升DNS系统安全性能的可行手段。
采用多服务器协同工作来完成域名解析,通过比较多个DNS服务器的查询结果来筛选,减少DNS因设计缺陷或漏洞对DNS解析结果的影响,提高数据准确性。当前DNS协议在传输过程中没有加密和签名,域名查询结果的真实性和隐私性不能得到保障,存在解析结果被篡改和隐私信息泄露的风险。在现有DNS系统的基础上,可以通过改变DNS系统的组织架构和传输协议,来提高DNS解析结果达到防护目的。
DNS系统安全防护的理念在不断革新,防护技术手段也在不断进步,但网络攻击者往往也在不断更新攻击手段来应对这些革新和技术。仅通过单方面的改善或弥补DNS传输协议的不足之处,并不一定能够完全改善DNS系统容易遭受攻击的困境。笔者认为,有效的恶意域名攻击检测机制和域名诊断手段是十分必要的。在现有的互联网结构中,对DNS系统的检测行为是不需要改变现有DNS模式的,并具有很好的渐进式部署能力。这种安全监测DNS系统的理念就是通过对DNS系统的访问流量进行分析和处理,对异常数据进行归类对比,通过监测机制对检测结果进行分类,提高检测精确度。
此外,监视底层DNS流量还可以用于检测由DNS流量控制的僵尸网络和DNS隧道,其原理还是通过算法对DNS流量特征进行分类,僵尸网络中的攻击特征是相似的,可以以此进行类比。但它又具有鲜明的独立特性,可以明显地跟其他种类的网络攻击加以区别,因此,这种方式能有效检测僵尸网络的存在。
DNS系统受到攻击的原因与DNS树结构和根服务器管理系统有关。这种体系结构存在单点故障问题,对根服务器进行攻击,会导致整个DNS服务瘫痪,因此,采用分散DNS系统是十分可行的。目前,分散DNS的设计主要包括以下两个方向。
(1)基于区块链技术。区块链技术的出现为分散设计提供了技术支持。利用区块链技术设计去中心化的DNS系统,其主要技术难点为:高效的P2P网络设计。P2P网络易受网络波动的影响,在网络剧烈波动情况下,不仅效率会大大降低,而且数据真实性也会被攻击者伪造。设计高效、安全的P2P网络是基于区块链的分布式DNS设计的一个难题。然而,一致性算法在实现一致性过程中效率比较低,不适合DNS数据的实时更新和维护,共识算法的设计需要与DNS应用场景的设计相结合。两种算法结合后既保障了效率高,又保证了每个节点存储数据的一致性。
(2)基于根服务器联合的方法。许多国家的顶级DNS服务器多采用集中控制的管理手段,造成不同的顶级服务器相对集中,通过减少这种不同顶级根服务器的集中管理来缓解被攻击的局面也是可行的。
据调查显示,85%以上的开放式DNS服务器存在严重的安全风险,开放模式有利于攻击者进行DOS/DDoS、缓冲区毒物注入、DNS ID劫持等攻击。在现有的研究中,很少对这些开放系统进行标准化和研究,因此,有必要建立一个能够有效监测各种安全威胁的综合检测系统。
通过网络DNS流量的上下文信息和域名的特征统计,这些手段在潜在的DGA分类方面能够取得一定效果,但都不能满足网络安全的实时检测与防护。为了达到防护目的和要求,许多安全人员会选择使用手动选择的恶意域名攻击特征的方式,包括熵、字符串长度、元音比、辅音比等。手动提取的方式存在误报高和效率低的问题,总体跟不上恶意域名更新的速度。主要原因有两个:一方面,现有的恶意域名检测方法大多局限于检测级别不够,或不能充分分辨恶意网络的异常行为。另一方面,恶意域名攻击方式也趋于多样化,攻击者能够利用新的DGA算法来绕过我们固定的检测特性。技术的不断进步,不断更新着攻防双方的出手方式,使得网络安全形势依然严峻。
为了DGA算法攻击问题,可以从以下方面研究DGA域名检测:
(1)DGA域名变体研究。DGA算法生成的变体域名为了避免基于字符特征检测的手段,大部分都是由英文字母随机组成。虽然这些伪域名与普通域名没有太大区别。但通过观察是能够发现变体域名在长度或者组合上跟普通域名还是有很大区别的,这些域名是由几个不相关的单词组成的,所以可以从这两个角度进行检测研究。
(2)恶意域名对抗性生成方法研究。域名攻击中,大多数都是采用随机生成域名的方式。大致表现为两种类型:一种是采用逆向破解DGA生成的方式,恢复DGA算法生成伪随机域名。大多数生成的域名都有固定模式,这样在已有数据上对抗提炼的模型,缺乏对新DGA变体的检测能力。二是通过对抗网络生成对抗样本,并使用GAN生成域名对抗样本。实验表明,对抗样本在预测未知DGA方面具有良好性能。然而,由于GAN主要处理连续数据,对离散序列数据性能较差,因此SEQGAN被提出用于文本序列数据处理。
DNS系统作为互联网的重要基础设施,从DNS协议安全性的早期增强到当前体系结构的改进,DNS安全一直是业界关注的问题。本文简单分析了常规DNS安全防护技术,将域名特征和管理措施结合起来做了讨论,提高了系统的适用能力,增加了模型的通用性,针对不同的恶意域名做出不同的检测手段。虽然取得一定检测效果,但在类似汉语拼音的域名检测方面,没有达到理想效果,分词存在一定的错误,需要进一步改进,以提高检测效果。