张 彦1, 韦云凯, 唐义良, 周思佩
(1.奥斯陆大学 信息学院, 挪威 奥斯陆 0316;2.电子科技大学 信息与通信工程学院, 四川 成都 611731)
在互联网、蜂窝网、物联网等各种形态的传统和新兴网络中,分布式攻击非常普遍.其中最常见的是分布式拒绝服务攻击(Distributed Denial of Service, DDoS)[1],该攻击旨在通过向受害者(机器或网络)发送大量流量以耗尽服务、连接容量或带宽来拒绝或影响合法用户的正常服务.2018年2月,面向开源软件项目的著名托管平台Github遭遇了可能是迄今为止最大的DDoS攻击,最高访问量为1.35 Tbps,导致其经历了两次间歇性不可访问.Imperva公司的报告显示,2018年DDoS攻击峰值流量已达1.7 Tbps,在2019年4月的一起DDoS攻击事件中,DDoS攻击强度已达580Mpps(packets per second).多次的攻击事件表明,对以DDoS为代表的分布式攻击及其防御技术进行研究,具有重要的理论意义和应用价值.
当前学术界和工业界都对分布式攻击的防御进行了大量的研究,并提出了诸多的防御方法.然而,道高一尺魔高一丈,分布式攻击的方式也在不断演变、进化,目前针对分布式攻击的防御策略一直处于被动防范的境地.更为严重的是,随着人工智能和分布式协作技术的迅猛发展,将分布式协作、人工智能融入到网络攻击的智能分布式攻击也得到了迅速的发展.网络中实施攻击的主体将不再是单纯的人类智能,而是以机器学习、神经网络等为代表的人工智能,尤其是以大数据、分布式训练与协作等为特征的分布式智能系统,这将导致安全攻防节奏、隐蔽性、速度、影响等方面发生根本性的变化, 从而使网络安全面临愈加巨大的威胁和挑战.
面对这种迅速发展的智能分布式攻击,当前的应对思路还主要是传统的防御模式和策略.然而,智能分布式攻击对现有防御体系带来的是跨代式的挑战,传统的防御体系面对这种智能分布式攻击时将几乎毫无招架之力.为此,本文针对智能分布式攻击与防御问题,进行了如下分析:
(1)对传统分布式攻击与防御技术进行分类与总结,为智能分布式攻击与防御的分析研究提供了基础;
(2)基于人工智能技术,分析了人工智能与分布式攻击相结合的机制、模式与应用现状;
(3)以人工智能为基础,总结了面向传统分布式攻击的智能防御措施,并探讨了面向智能分布式攻击的精准反制策略.
本节首先对传统分布式攻击的类型与特征进行了总结,在此基础上,介绍了针对传统分布式攻击的防御方法.
分布式攻击改变了点对点的攻击模式,引入了多点对单点以及多点对多点的攻击模式.在传统的分布式攻击系统中,存在一个以全局方式管理攻击的分布式攻击管理中心,攻击发起者可以通过管理中心调度多个攻击源,从而对攻击目标发起相应的分布式攻击.
分布式攻击分类如图1所示.分布式攻击主要分为两类:①分布式拒绝服务攻击(DDoS);②其他网络攻击的分布式实施.DDoS攻击是最常见的分布式攻击[2-3],该攻击旨在通过向受害者(机器或网络)发送大量流量以耗尽服务、连接容量或带宽来拒绝或影响合法用户的正常服务.其他网络攻击的分布式实施指传统单点攻击在多点上的应用(如分布式中间人攻击便是传统中间人攻击的分布式应用),在分布式协作的辅助下,这些攻击的效果会得到显著提升.
图1 分布式攻击分类Fig.1 Classification of distributed attack
1.1.1 DDoS攻击
DDoS攻击是使用多个分布式节点对目标发动的资源耗尽攻击[4].这类攻击并不直接或者永久地破坏数据,而是故意破坏资源的可用性,使合法用户的请求得不到响应.
对于攻击者来说,连接到互联网的每台设备都能变成僵尸主机.攻击者通过发现联网设备的漏洞,在这些设备中种植恶意代码从而控制它们.在开始攻击之前,攻击者会试图控制尽可能多的设备,僵尸主机的数量可能达到数百甚至数千.僵尸网络的大小决定了攻击强度的级别和大小,大型僵尸网络会发动灾难性的攻击[5].
DDoS攻击通常使用的是常见的协议和服务,因此,从协议和服务的类型上很难对攻击进行区分.攻击产生时,攻击数据包经过伪装,其源IP地址被伪造,攻击查找方很难对攻击地址进行确定,给分布式攻击的检测与防范带来了难度.
按照不同的分类标准,可将DDoS攻击分为六种不同的类型.
(1)基于攻击效果:分为针对网络带宽流量攻击和针对服务器主机资源耗尽攻击.前者通过发送大量攻击包导致网络带宽被阻塞,合法网络包被虚假的攻击包淹没而无法到达目的主机;后者是通过大量攻击包导致目标服务器的内存、CPU等资源被内核及应用程序耗尽,从而无法向合法用户提供网络服务.
(2)基于攻击环节:分为网络扫描攻击和恶意软件攻击.DDoS在攻击之前需要进行网络扫描[6],攻击者利用系统软硬件或者网络协议上存在的漏洞或者开放端口,在未经授权的情况下访问或者破坏系统资源.在发现了互联网中具有漏洞的主机之后,攻击者可以将恶意软件通过代码植入到该主机上,形成对该主机的挟持和控制.这些恶意应用程序如广告软件、蠕虫、木马等能够窃取和泄露用户个人数据、运行恶意代码、降低设备整体的性能,并且它们可以通过直接分布在服务器上,在应用程序商店隐藏自己[7].
(3)基于自动化程度[8]:根据DDoS攻击的自动化程度可以将DDoS攻击分为手动DDoS、半自动DDoS以及自动DDoS.手动DDoS需要攻击者自行网络扫描、挟持控制漏洞设备并安装攻击代码.半自动攻击中,攻击者只需要在攻击调度中心设置攻击类型和强度,选择攻击目标,然后调控负责攻击程序处理的主机去自动控制僵尸主机并且发起最后的DDoS攻击.在自动DDoS攻击中,攻击属性的设定(比如攻击类型、开始时间、选择攻击目标,等等)是在攻击代码中完成的,攻击者只需要发送攻击命令,攻击设备和攻击者之间只保持间接的通信,因此,被攻击方很难发现攻击者的身份.这种攻击的主要弱点是攻击者的后门面向僵尸主机开放,防御者可以通过僵尸主机对攻击者进行追踪和反击.
(4)基于攻击所利用的弱点:文献[9-10]将DDoS攻击分为洪泛DDoS攻击和漏洞DDoS攻击.洪泛DDoS攻击是指攻击者通过在网络中发送大量报文来耗尽被攻击者的网络带宽,从而阻止合法用户的服务连接.洪泛DDoS攻击可分为直接模式和间接模式.间接模式下,攻击者通过篡改 IP 地址冒充被攻击者向服务器发送请求,服务器则会将响应发送至被攻击者,从而耗尽被攻击者的资源.在此服务器充当了攻击反射器的功能,因此间接模式的洪泛DDoS攻击也称为反射洪泛攻击[11].Smurf攻击和Fraggle攻击都属于此类攻击.漏洞DDoS攻击是指攻击者利用网络协议中的漏洞进行攻击,如基于TCP-SYN的攻击、放大攻击等.基于TCP-SYN的攻击利用了TCP连接中三次握手的机制,攻击者通过传输大量SYN数据包而不确认响应,阻塞服务器可用TCP连接队列,消耗系统资源和可用带宽,造成拒绝服务.放大攻击是指攻击者通过某些网络协议服务的特殊性使得自身发出的报文流量得到放大,常用于配合反射洪泛攻击使大量的网络流量涌向被攻击者,达到更好的攻击效果.
(5)按照DDoS攻击所处的协议层次:根据协议层次划分,DDoS攻击的发生主要分布在应用层及传输层/网络层.虽然在数据链路层可以通过洪泛攻击的方式来耗尽网络资源,从而达到与DDoS攻击同样的效果,但是从方式和原理上来讲,该类攻击不具备DDoS攻击的典型特征.表1展示了DDoS在不同协议层次中典型的攻击类型.
表1按照受影响的协议层次对DDoS攻击进行分类
Table 1 Classification of DDoS attack according to protocol layer
协议层次攻击类型示例应用层反射/放大攻击Smurf 攻击和Fraggle 攻击等HTTP 洪泛攻击会话洪泛攻击、请求洪泛攻击、非对称攻击如HTTP get/post 洪泛、慢请求/慢响应攻击如Slowloris、HTTP 碎片攻击等传输层/网络层一般洪泛攻击UDP、ICMP、DNS等利用协议漏洞的洪泛攻击TCP-SYN、ACK & PUSH-ACK、RST/FIN 等反射/放大攻击与应用层的原理相似
(6)基于攻击的速率:分为持续速率攻击和可变速率攻击.持续速率攻击的攻击性能参数不变,而可变速率可以改变攻击的性能参数,根据攻击效果的反馈进行参数更改,使得对其进行的检测和预防更加困难[12].
1.1.2 其他网络攻击的分布式实施
除了DDoS攻击,网络中还存在其他网络攻击的分布式实施.对于常见的攻击方式,可以通过在多个分布式节点上部署该攻击方式,实现原有攻击方式在强度、范围、效果、持久度等方面的提升,如分布式的高级持续性威胁攻击(Advanced Persistent Threat,APT),分布式中间人攻击(Man-in-the-MiddleAttack,MITM),分布式嗅探攻击等.
分布式APT攻击在攻击成功后广泛使用远程访问工具(如Poison IVY)或远程访问特洛伊木马来远程控制受害者[13-14].
MITM 攻击中,攻击者通过恶意修改自身网络硬件MAC 地址或 IP 地址进行身份伪装,与通信两端建立单独的连接并交换接收数据,从而使得通信的两端都认为它们通过专用连接相互通信,但事实上整个对话是完全由攻击者控制的[15],常见的有 ARP 欺骗、DNS 欺骗、网页劫持等.分布式MITM以拦截和篡改网络流量为目的,极大地威胁着分布式智能网络的通信安全.
分布式嗅探攻击是指网络信息交换过程中,利用分布式网络嗅探工具得到在网络中交互的数据包,从而对数据包完成智能分析,并得到网络分析所需要的网络数据.在网络嗅探中所得到的网络数据通常包括网络账号、用户口令信息、关键文本等重要数据.嗅探攻击工作在网络环境底层,是极其安静的,是一种被动攻击,此类攻击很难被察觉,只能针对敏感报文实施加密进行防范.需要警惕的是嗅探攻击不单在有线网络上,在无线网络也可以完成监听.比如在智能物联网中,物与物主要通过无线网进行数据交互,一旦被分布式网络嗅探攻击窃取了用户信息,将造成隐私泄露和巨大的经济损失.
网络中的分布式攻击往往难以被检测,原因主要有两点:①在大多数情况下,攻击发起时的流量与正常流量特征类似[4,16];②分布式攻击种类繁多,不同的分布式攻击并不具有辨识度较高的共同属性.
为了对分布式攻击进行防御,一些解决方案利用预防和反应机制来减轻受害者网络、中间网络和源网络中分布式攻击的影响[17].分布式攻击防御体系见图2.
图2 分布式攻击的防御体系Fig.2 Defense hierarchy against distributed attack
最常用的防御机制包括攻击预防、入侵检测和攻击反应三部分.攻击预防尝试在攻击造成损害之前过滤入口和出口流量,如常见的防火墙技术等.入侵检测指的是对计算机系统和网络中的各种主要信息进行收集和分析,在不影响网络指标的前提下,检测出计算机系统和网络中是否存在被外界攻击或者违反某些安全性能的行为[18-19].通过收集到的入侵信息和证据,起到及时处理事故和恢复数据的作用.攻击反应旨在最大限度地减少分布式攻击的损失[20-21].具体描述如下:
(1)攻击预防:设备级别设置.在设备级存在一些基于身份验证的安全方案,如路由器和交换机,以防止网络和设备遭受各种攻击.它们还为DDoS攻击提供了有效的第一道防线,具体方法有设置路由访问控制列表、串联防火墙安全设备等.
(2)入侵检测.正常和攻击模式的统计属性可用于识别DDoS攻击.一般来说,首先计算常规数据的统计模型,然后使用统计归纳测试来确定新的数据实例是否属于该模型,不符合模型规则的数据实例被归为具有攻击特性的数据.也就是说,入侵检测是通过预处理器审计未知情况下的数据,形成数学向量形式,然后根据判决函数,运用入侵检测模型将这些数字向量分类,最后向决策系统提交分类结果,由决策系统做出判断.检测方式是多样的,主要有基于流量、地址以及数据包头信息变化等方式.机器学习技术在入侵检测中具有相应的应用,如贝叶斯网络、模糊逻辑、遗传算法、K-NN算法、神经网络、多智能体智能代理系统(多agent系统)、支持向量机等.统计学相关技术有参数化方法,常见的参数检测方法如Parametric method、Operational、Spectral、Statistical moments等.此外,许多研究已经建立了非参数方法作为抵御DDoS攻击的有效防御方法.常见的非参数检测方法有D-WARD,改变聚集树(CATS),低特征值(FFV),回归分析、马尔可夫方法、统计分离和时间序列.
(3)攻击反应.在攻击监测系统确定网络遭到DDoS 攻击后,防御系统能够采取的有效响应包括:确认攻击源、相应地进行漏洞修复、弱化攻击.溯源机制是指通过一些机制识别攻击的源头,从而从源头上减弱或者阻止攻击.已有方法有基于熵变化、包标记、逐跳跟踪、ICMP消息传递、IP-Sec跟踪等.
近些年,人工智能技术的发展使得智能分布式攻击出现并引起了广泛的关注,攻击主体由人工实施变为以高效、自动、智能的人工智能发起攻击,攻击方式出现了与传统模式全然不同的特点.攻击的速度、规模、模式、影响等都发生了根本性的变化.
人工智能来源于“假设关于学习过程的每个方面以及所有的智力特征都可以被精确地描述,以使机器可以模拟学习过程”.人工智能技术通过了解智能的实质,产生出一种新的能以人类智能相似的方式做出反应的智能机器.
人类的学习过程主要有三个阶段:①对外界事物的感知;②对感知到的事物进行思考;③产生学习结果.同时,人类会持续对外界进行感知,不断重复过程,更新自己的学习结果.受人类智能启发,人工智能也通过类似过程产生智能机器.机器通过“感知”过程收集外界数据,利用智能算法对数据进行学习,得到学习结果.之后智能机器持续收集数据对学习结果进行更新.人类有不同的学习方式,而人工智能中的智能算法便是机器不同学习方式的体现,即使是对同一份数据,不同的学习算法学习到的结果也会有些许差异,在实践中需要根据不同的学习问题选择适合的算法.
人工智能的介入,将导致分布式攻击的速度、规模、模式、影响等发生根本性的变化.这种变化是指数式的变化,原有的攻防机理、模型、策略等都不再适用.不仅如此,以大数据、分布式训练与协作等为特征的智能分布式攻击,在攻防隐蔽性、协同效率、速度影响等方面更呈现出与传统模式截然不同的特征.传统的防御、反制方式难以奏效,尤其是随着群体智能等相关技术的发展,攻击方可以基于独立自发而又高效协同的群体模式,实施更加隐蔽、高效、突发、全面、针对性的攻击,这对网络安全、经济安全、社会安全以至于国家安全都将带来巨大的隐患.
本小节从人工智能与分布式攻击的结合方式、智能分布式攻击模式、智能分布式攻击现状三个方面,对基于人工智能的分布式攻击进行分析.
2.2.1 人工智能与分布式攻击的结合方式
人工智能与分布式攻击的结合主要体现在三个方面:①利用人工智能学习特征环境增强攻击效果与隐蔽性;②利用人工智能增强分布式协作效果;③利用人工智能实现攻击方式的自我进化.
(1)学习特征环境
在一个网络环境中,其数据、数据传送方法等均具有一定的网络特征.利用人工智能对相关数据进行收集、分析、建模的过程,可以使得分布式攻击的攻击方学习到一个网络环境中关于正常数据、正常传送方法等环境特征的甄别标准,在此基础上,攻击者可以参考这些标准,进而在相关标准下选择合适的攻击手段.例如,将攻击数据伪装成具有正常特征的普通数据,从而使得攻击更具隐蔽性,增强攻击的危害性.
(2)提高分布式协作效果
分布式攻击的效果,很大程度上取决于分布式协作效率的高低.与传统的分布式攻击不同,智能分布式攻击的协作可以通过人工智能的参与,增强多个分布式攻击节点间的协作效率.根据协同位置的不同,可分为智能中心统一协调分布式攻击实体的类型,分布式智能攻击实体独立决策的类型,以及两者结合的类型.类型不同,智能分布式攻击的模式也不一样,具体见2.2.2中的描述.
(3)攻击方式的智能进化
基于人工智能,可以实现分布式攻击方式的自我演变与进化.人工智能模块分析不同攻击方式下的攻击效果,以及防御方的应对措施,从而针对防御方的弱点自动提升攻击机制,实现攻击方式的智能进化.比如,防御方启用了入侵检测系统,其检测结果就成为了攻击效果的反馈数据,攻击者可以通过人工智能技术对这种反馈数据进行收集、分析、建模,得到相应的统计模型,并基于该模型调整攻击方式,从而使得入侵检测系统失去防御的效果,攻击方式也由此得到进化.
2.2.2 智能分布式攻击模式分析
根据智能实体与分布式攻击实体协作的实施位置,智能分布式攻击可以分为三种模式.
(1)基于中心控制节点的智能分布式攻击
基于中心控制节点的智能分布式攻击见图3.
图3 基于中心控制节点的智能分布式攻击
Fig.3 Intelligent distributed attack based on central control node
如图3所示,智能攻击模块只部署在攻击发起者节点自身.这种模式下,攻击发起节点作为智能中心控制节点,其他攻击节点不具备独立的决策和行动能力,而是完全受中心控制节点的统一调配,采取相应的行动.如智能中心节点控制大量分布在世界各处的僵尸主机发起直接攻击或反射式攻击等.这种方式可以提高分布式攻击的整体性与一致性.
(2)分布式攻击智能实体独立决策型
全智能分布式攻击见图4.
如图4所示,在所有攻击节点中都部署智能攻击模块.所有分布式攻击节点都有独立的智能决策和行动能力,可以基于智能分析独立决定攻击发起的时间、方式、范围等.
图4 全智能分布式攻击Fig.4 Pure intelligent distributed attack
这种模式采用了群体智能的思想,各攻击实体具有独立的智能,同时又遵守一组预先设定的基本规则,从而形成远超单独攻击实体的更高层次的群体智慧和攻击效果.由于各攻击实体独立决策,各个攻击实体可以迅速地根据所处网络环境的变化,灵活调整相应的攻击策略.
(3)中心+群智模式
中心+群智模式见图5.
图5 中心+群智模式Fig.5 Central intelligence + swarm intelligence pattern
如图5所示,中心+群智模式是前面两种模式的结合.各个分布式攻击实体本身具备一定的智能决策能力,但是为了进一步提高分布式协同效率,各攻击实体同时接受中心智能控制实体的整体调度.从而,形成既有整体智能协同、又有个体独立智能决策的模式.这种模式既可以更好地适应网络情况的快速变化,同时又可以保证智能分布式攻击的整体性与一致性.
2.2.3 智能分布式攻击现状分析
目前,智能分布式攻击的具体实例及研究披露都相对较少,智能DDoS攻击是目前最常见的智能分布式网络攻击方式[22].传统的DDoS攻击可以通过提高客户端到服务器的路径可用性解决.但是智能DDoS攻击除了拥塞节点之外,还可以进入防御节点系统结构,根据通信链确定受害者的邻居,对受害者及其邻居实施系统性的攻击.由此,攻击者可以显著恶化损害,而不是纯粹的随机拥塞.具体而言,攻击者可以使用攻击公开节点的结果来引导对其他公开节点的后续拥塞攻击,并且攻击者可以遍历转发器节点之间的通信链,甚至能披露服务器以最终拥塞它并使服务完全瘫痪[23].
(1)自动化工具
早期的DDoS攻击大多是手动的,攻击者必须执行几个步骤,包括在最终攻击发起之前检测有漏洞的计算机以便在Internet上生成僵尸,端口扫描和部署恶意软件.目前,随着智能技术的发展,DDoS攻击工具已经变得自动化和复杂化,从而允许攻击者以最少的人力来自动执行所有或部分步骤[24].攻击者可以配置特定于目标的参数,而其他参数可以通过自动化工具进行管理.这些自动攻击工具包括Trinoo,Tribe Flood Network(TFN),TFN2K,Trinity,Knight和Stacheldraht等,其中大部分都基于互联网中继聊天协议(IRC)工作,攻击者所使用的控制主机和僵尸主机之间可以间接通信,而不必透露自己的身份[25].
(2)检测逃避
与人工智能在分布式拒绝服务攻击防御上的应用相对应,攻击者可以学习模仿防御方的智能入侵检测系统,对己方的攻击流量特性进行升级、伪装,进而使得防御方的入侵检测效果减弱[26-27].
虽然目前智能分布式攻击的具体方式披露很少,但是业界公认智能分布式攻击是未来分布式攻击发展的必然方向.智能分布式攻击的巨大危害值得引起人们的高度关注.学术界和工业界需要推动相关技术的进一步研究,为智能分布式攻击所带来的潜在威胁做好应对准备.
随着人工智能的发展,人工智能技术已被广泛应用到面向分布式攻击的防御中.本节总结了面向传统分布式攻击的智能防御措施,并探讨了面向智能分布式攻击的精准反制策略.
目前已有大量的研究将人工智能技术与传统防御手段结合,实现对传统分布式攻击的高效防御.图6概括了目前已应用在普通分布式攻击防御中的人工智能技术.
图6 人工智能技术分类Fig.6 Classification of artificial intelligence
3.1.1 基于机器学习的智能防御
机器学习是实现人工智能的一种重要方法,也是目前人工智能应用最广的技术之一.目前,机器学习技术逐步应用到网络防御,带来了较好的防御效果[28].传统机器学习包括常见的监督学习、无监督学习、半监督学习以及强化学习.
监督学习如朴素贝叶斯、支持向量机、决策树等.朴素贝叶斯算法在处理分类问题上简单高效,该技术通常与统计算法一起用于检测攻击.Katkar等[29]利用分布式处理和朴素贝叶斯分类器对HTTP服务器进行DDoS攻击检测.Ajagekar等[30]基于多项式朴素贝叶斯算法进行了数据预处理,改进了DDoS检测系统,实验结果表明其更简单有效.
支持向量机(SVM)目的是在特征空间找到最佳的分离超平面使得训练集上正负样本间隔最大,由此进行分类.Kato等[31]选择了基于高斯核方法的支持向量机来训练和测试DDoS攻击检测系统.Yang等[32]采用支持向量机方法对攻击流量进行识别,然后流表交付模块根据流量识别结果动态调整转发策略以抵抗DDoS攻击.Phan等[33]提出了基于SVM等方法的混合安全机制.
决策树也是一种常见的监督学习方法,是基于树结构来进行决策的.Jiao等[27]利用两个决策树分类器提取TCP流量的有效特征来区分恶意流量和正常流量. Lakshminarasimman等[34]提出了一种基于决策树的DDoS检测机制,并对J48决策树算法以及随机森林算法进行了对比.Zekri等[35]设计了一个基于决策树的C4.5算法的DDoS检测系统.
无监督学习如K-means算法,其实现起来比较简单,具有良好的聚类效果,因此应用广泛.Pramana等[36]将K-means算法运用到DDoS的检测系统中,并对其进行了改进.另外,基于密度的聚类算法(DBSCAN)也有应用,Dincalp等[37]用该算法对网络流量进行聚类,有效地检测出DDoS攻击.
半监督学习使用大量的未标记数据,并同时使用标记数据,是监督学习与无监督学习相结合的一种学习方法.Kaur[38]将基于聚类算法的半监督机器学习技术应用于大数据集和决策树的分类,在DDoS预测的精度上达到了很高的水平.Gu等[39]提出了一种半监督加权K-means检测方法,通过基于Hadoop的混合特征选择算法来寻找最有效的特征集.
强化学习也是使用未标记的数据,但是可以通过奖惩函数来接近最优解.Liu等[40]提出基于强化学习的框架,能够在不同的攻击场景下智能学习最优的缓解策略,实时缓解DDoS攻击.
3.1.2 基于人工免疫系统的智能防御
人工免疫系统是一种灵感来源于生物体免疫系统,用于解决计算机领域问题的新兴算法.近些年来也有不少学者将其应用到分布式攻击的防御上.人工免疫系统可以通过训练来区别正常行为和异常行为,从而检测是否存在攻击.Ramadhan等[41]利用人工免疫系统,设计了一种TCP洪泛攻击检测系统.Igbe等[42-43]提出了基于树突状细胞算法的DDoS入侵检测系统.
3.1.3 基于Agent技术的智能防御
Agent是一个软件实体或者是软硬件实体的混合,能够代表用户执行并行操作,它在学习能力、协同合作、反应速率以及有效性上有较强的优势,以提高控制决策的智能性、灵活性,使控制结果更准确[44].Duraipandian等[45]提出了一种基于智能Agent的DDoS攻击防御体系结构,使用信任机制在检测到攻击前活动时提供早期警告.Kesavamoorthy等[46]提出了一种基于多Agent系统的DDoS检测和防御方法,各Agent之间采用粒子群优化方法.针对ISP边界上的DDoS攻击,Singh等[47]提出了一种基于协作Agent的分布式方案.
3.1.4 基于模糊逻辑的智能防御
模糊逻辑是建立在多值逻辑基础上,运用模糊集合来研究模糊性思维、语言形式及其规律的方法,是人工智能技术的一个重要分支.Shiaeles等[48]提出了一种基于平均数据包到达时间的模糊估计的DDoS检测方法.Mondal等[49]针对云计算的安全性,设计了一种基于模糊逻辑的DDoS检测方案,所有数据包在达到云平台前都会经过模糊系统的过滤.Singh等[50]结合了模糊逻辑以及遗传算法提出了一种DDoS攻击检测方法.
3.1.5 基于人工神经网络的智能防御
人工神经网络也是人工智能领域兴起的研究热点,目前已有大量的研究将其应用到分布式攻击防御中.人工神经网络可分为前馈神经网络和反馈神经网络.
前馈神经网络如RBF神经网络、卷积神经网络等.RBF神经网络使用径向基函数作为隐层神经元激活函数.Chen等[51]利用改进的RBF神经网络检测DDoS攻击,设计智能用户控制系统来处理复杂多变的攻击.Dayal等[52]基于RBF网络进行优化学习,有效地区分了正常的大流量以及DDoS攻击,并能够在DDoS攻击的早期阶段进行处理防御.Su等[53]利用RBF神经网络等技术恢复混乱的网络流,并通过训练网络流样本来预测未来的网络流以检测DDoS攻击.卷积神经网络(CNN)也是一类包含卷积计算且具有深度结构的前馈神经网络.Ghanbari等[54-55]对提取特征进行卷积神经网络训练,并对CNN检测数据的异常行为进行测试,之后对该方法进行改进,将DDoS攻击的检测准确率提高到87.35%.Spaulding等[56]利用卷积神经网络和长短时记忆网络(LSTM)两者结合的深度学习算法来检测基于DNS的DDoS攻击.Roopak等[57]在物联网环境中提出了用于DDoS攻击检测的深度学习模型.
反馈神经网络有BP神经网络等.BP神经网络突出的优点就是具有很强的非线性映射能力和柔性的网络结构.Badve等[58]利用已知的无攻击流量计算预测误差,训练BP神经网络以提高系统性能.Ishitaki等[59]针对利用匿名网络发起的DDoS,用BP神经网络设计了一个系统,能够有效识别匿名网络中的不良用户行为.
面对智能分布式攻击的颠覆性威胁,传统的防御策略将束手无策.同时,针对智能分布式攻击的新型智能防御技术的研究尚未系统性地展开.本小节基于智能分布式攻击的特点,探讨了面向智能分布式攻击的智能反制技术,变被动防御为主动出击,以智对智,提前破坏智能分布式攻击的关键点,实现智能化的主动防御.
3.2.1 智能分布式攻击的薄弱点分析
智能分布式攻击技术主要包含分布式技术、智能技术、攻击技术以及其他将整个攻击链整合起来的辅助技术.攻击链条上的各个部分,都会有其薄弱点,可用于防御者进行精准反制.智能分布式攻击的薄弱点分析主要集中在智能分布式攻击关键点(集)发现与定位,以及分布式攻击中人工智能的薄弱点分析,为智能反制提供明确的反制目标.
(1)智能分布式攻击关键点(集)发现与定位
智能分布式攻击的恶意节点数量一般很大,其交互共识网络实质上是一种复杂网络.由于复杂网络具有无标度特性,无标度网络对非定向攻击具有较强的免疫力,而对于定向攻击却表现得相对脆弱.当复杂网络中5%~10%的关键节点同时失效时,通过攻击这些“网络要塞”可以迅速摧毁或者有效控制整个智能分布式攻击.针对复杂网络“鲁棒但又脆弱”的基础特性,可以对智能分布式攻击网络的关键节点进行探索和定位,通过破坏这些关键节点来降低智能分布式攻击网络的鲁棒性和抗毁性,如图7所示.
图7 智能分布式攻击关键节点Fig.7 Key points in intelligent distributed attack
但是,智能分布式攻击关键节点的挖掘和探索仍是目前研究领域的一个难点,如何评估节点的重要程度以及挖掘出复杂网络中重要的关键节点,都是亟需解决的问题.
(2)智能分布式攻击中人工智能薄弱点分析
智能分布式攻击中人工智能的薄弱点分析要立足于两个方面:人工智能技术如机器学习、深度学习等本身的薄弱点,以及分布式建立人工智能时的可利用薄弱点.因而,在利用人工智能的薄弱点方面,可以分为两个阶段:
①智能学习阶段.攻击方在进行智能分布式攻击的过程中,一个非常明显的特征是,其恶意智能节点将处于不断学习分析过程中.这个过程强烈依赖于三方面的资源:可用于智能学习的数据以及数据传输、分析所需要的通信资源、计算资源和存储资源.通过建立该阶段的薄弱点模型,系统描述各要素在智能学习阶段的作用与影响.
②分布式共识达成阶段.针对智能恶意节点间由分布式到汇聚过程中的时延(如时间先后带来的结果不一致性)、共识机制(如确定性共识机制、随机共识机制、拜占庭共识机制等),研究其作用与影响,为精准反制提供基础.
3.2.2 基于分布式智能的精准反制
针对智能分布式攻击中的薄弱点,需要建立分布式协同反制模型,研究以智对智的分布式协同反制技术,有效破坏攻击方的分布式协同,并增强防御方在反制过程中的智能分布式对抗能力与协同效果,而且能够根据攻击方的攻击态势、防御方的反制效果,实现分布式智能协同反制技术的自升级、自进化.
(1)针对智能分布式攻击的反制技术
根据智能分布式攻击中人工智能薄弱点分析可以将智能分布式攻击的反制分为两个阶段.
①在智能学习阶段反制.针对智能分布式攻击,可以通过伪造虚假数据用于应对智能恶意节点的学习.并且,一旦发现可疑的攻击节点或者攻击报文,则根据网络态势演变溯源关键节点,有针对性地生成虚假数据,干扰相应关键恶意节点的认知学习,同时进行相应局部资源的限制(减少通信带宽、边缘计算、存储能力等),截断/限制攻击关键节点大量的通信和服务资源,从而导致分布式攻击关键节点的失效,达到反制攻击网络的目标.
②分布式共识达成阶段反制.对于不同的分布式共识机制(如确定性共识机制、随机共识机制、拜占庭共识机制等),可以有不同代价的反制方案,策反/阻断相应数量恶意节点的共识过程,则分布式智能攻击将无法达成行为共识.另外,对于不同优先级的业务,可以按照从策反/阻断一个恶意节点(低优先级),到策反/阻断三分之一恶意节点(一般优先级),再到策反/阻断半数恶意节点(高优先级)来应对相应的恶意攻击,使其无法达成一致性协议.
(2)反制节点间的智能协同
在进行智能分布式攻击的精准反制过程中,其主要工作由专用反制节点进行.与此同时,也可以发动非专用节点(普通节点)辅助进行分布式协同反制.因此,网络中的节点可以分为两类:资源充足节点和资源受限节点.专门用于对智能分布式攻击进行反制的节点,通常是资源充足节点.部分反制专用节点,以及反制临时启用的普通节点,可以视为资源受限节点.
因此,需要协同专用反制节点与网络普通节点,进行精准反制功能的分布式部署,从而在个体节点功能和资源受限的情况下,通过分布式协作的群智形式,面向智能分布式攻击,实现强大的精准反制能力.
(3)智能反制技术的演进
智能分布式攻击具有自升级、自进化的特点,单一而固定的防御手段不足以面对攻击方可能产生的攻击进化.这要求防御方的反制技术仍需要不断地自我升级、自我演进,以面对可能的更为强大的智能分布式攻击.自我演进机制需要精确获知攻击方的攻击动态、效果、防御方反制引起的攻击方变化等信息,并根据这些信息建立攻防双方的演化预测模型,从而对防御方的精准反制策略和模型进行相应地升级、进化,以便在面向智能分布式攻击时,可以实现更为强大的协同精准反制能力.
随着人工智能和分布式技术的发展,从面向传统分布式攻击的防御到面向新型的基于人工智能技术的分布式攻击智能防御,智能分布式攻击与防御已经成为未来网络安全领域的核心问题之一.本文在对分布式攻击方式及防御机制进行总结、介绍的基础上,分析了人工智能技术介入后,分布式攻击与人工智能相结合的机制、模式与应用现状.在防御方面,本文总结了目前常见的面向传统分布式攻击的智能防御措施,并探讨了面向智能分布式攻击的精准反制策略.随着智能分布式攻击方式的迅速发展,相关研究工作应该尽快开展,以应对未来的安全威胁.