張 彥1, 韋云凱, 唐義良, 周思佩
(1.奧斯陸大學 信息學院, 挪威 奧斯陸 0316;2.電子科技大學 信息與通信工程學院, 四川 成都 611731)
在互聯(lián)網(wǎng)、蜂窩網(wǎng)、物聯(lián)網(wǎng)等各種形態(tài)的傳統(tǒng)和新興網(wǎng)絡(luò)中,分布式攻擊非常普遍.其中最常見的是分布式拒絕服務(wù)攻擊(Distributed Denial of Service, DDoS)[1],該攻擊旨在通過向受害者(機器或網(wǎng)絡(luò))發(fā)送大量流量以耗盡服務(wù)、連接容量或帶寬來拒絕或影響合法用戶的正常服務(wù).2018年2月,面向開源軟件項目的著名托管平臺Github遭遇了可能是迄今為止最大的DDoS攻擊,最高訪問量為1.35 Tbps,導致其經(jīng)歷了兩次間歇性不可訪問.Imperva公司的報告顯示,2018年DDoS攻擊峰值流量已達1.7 Tbps,在2019年4月的一起DDoS攻擊事件中,DDoS攻擊強度已達580Mpps(packets per second).多次的攻擊事件表明,對以DDoS為代表的分布式攻擊及其防御技術(shù)進行研究,具有重要的理論意義和應(yīng)用價值.
當前學術(shù)界和工業(yè)界都對分布式攻擊的防御進行了大量的研究,并提出了諸多的防御方法.然而,道高一尺魔高一丈,分布式攻擊的方式也在不斷演變、進化,目前針對分布式攻擊的防御策略一直處于被動防范的境地.更為嚴重的是,隨著人工智能和分布式協(xié)作技術(shù)的迅猛發(fā)展,將分布式協(xié)作、人工智能融入到網(wǎng)絡(luò)攻擊的智能分布式攻擊也得到了迅速的發(fā)展.網(wǎng)絡(luò)中實施攻擊的主體將不再是單純的人類智能,而是以機器學習、神經(jīng)網(wǎng)絡(luò)等為代表的人工智能,尤其是以大數(shù)據(jù)、分布式訓練與協(xié)作等為特征的分布式智能系統(tǒng),這將導致安全攻防節(jié)奏、隱蔽性、速度、影響等方面發(fā)生根本性的變化, 從而使網(wǎng)絡(luò)安全面臨愈加巨大的威脅和挑戰(zhàn).
面對這種迅速發(fā)展的智能分布式攻擊,當前的應(yīng)對思路還主要是傳統(tǒng)的防御模式和策略.然而,智能分布式攻擊對現(xiàn)有防御體系帶來的是跨代式的挑戰(zhàn),傳統(tǒng)的防御體系面對這種智能分布式攻擊時將幾乎毫無招架之力.為此,本文針對智能分布式攻擊與防御問題,進行了如下分析:
(1)對傳統(tǒng)分布式攻擊與防御技術(shù)進行分類與總結(jié),為智能分布式攻擊與防御的分析研究提供了基礎(chǔ);
(2)基于人工智能技術(shù),分析了人工智能與分布式攻擊相結(jié)合的機制、模式與應(yīng)用現(xiàn)狀;
(3)以人工智能為基礎(chǔ),總結(jié)了面向傳統(tǒng)分布式攻擊的智能防御措施,并探討了面向智能分布式攻擊的精準反制策略.
本節(jié)首先對傳統(tǒng)分布式攻擊的類型與特征進行了總結(jié),在此基礎(chǔ)上,介紹了針對傳統(tǒng)分布式攻擊的防御方法.
分布式攻擊改變了點對點的攻擊模式,引入了多點對單點以及多點對多點的攻擊模式.在傳統(tǒng)的分布式攻擊系統(tǒng)中,存在一個以全局方式管理攻擊的分布式攻擊管理中心,攻擊發(fā)起者可以通過管理中心調(diào)度多個攻擊源,從而對攻擊目標發(fā)起相應(yīng)的分布式攻擊.
分布式攻擊分類如圖1所示.分布式攻擊主要分為兩類:①分布式拒絕服務(wù)攻擊(DDoS);②其他網(wǎng)絡(luò)攻擊的分布式實施.DDoS攻擊是最常見的分布式攻擊[2-3],該攻擊旨在通過向受害者(機器或網(wǎng)絡(luò))發(fā)送大量流量以耗盡服務(wù)、連接容量或帶寬來拒絕或影響合法用戶的正常服務(wù).其他網(wǎng)絡(luò)攻擊的分布式實施指傳統(tǒng)單點攻擊在多點上的應(yīng)用(如分布式中間人攻擊便是傳統(tǒng)中間人攻擊的分布式應(yīng)用),在分布式協(xié)作的輔助下,這些攻擊的效果會得到顯著提升.
圖1 分布式攻擊分類Fig.1 Classification of distributed attack
1.1.1 DDoS攻擊
DDoS攻擊是使用多個分布式節(jié)點對目標發(fā)動的資源耗盡攻擊[4].這類攻擊并不直接或者永久地破壞數(shù)據(jù),而是故意破壞資源的可用性,使合法用戶的請求得不到響應(yīng).
對于攻擊者來說,連接到互聯(lián)網(wǎng)的每臺設(shè)備都能變成僵尸主機.攻擊者通過發(fā)現(xiàn)聯(lián)網(wǎng)設(shè)備的漏洞,在這些設(shè)備中種植惡意代碼從而控制它們.在開始攻擊之前,攻擊者會試圖控制盡可能多的設(shè)備,僵尸主機的數(shù)量可能達到數(shù)百甚至數(shù)千.僵尸網(wǎng)絡(luò)的大小決定了攻擊強度的級別和大小,大型僵尸網(wǎng)絡(luò)會發(fā)動災(zāi)難性的攻擊[5].
DDoS攻擊通常使用的是常見的協(xié)議和服務(wù),因此,從協(xié)議和服務(wù)的類型上很難對攻擊進行區(qū)分.攻擊產(chǎn)生時,攻擊數(shù)據(jù)包經(jīng)過偽裝,其源IP地址被偽造,攻擊查找方很難對攻擊地址進行確定,給分布式攻擊的檢測與防范帶來了難度.
按照不同的分類標準,可將DDoS攻擊分為六種不同的類型.
(1)基于攻擊效果:分為針對網(wǎng)絡(luò)帶寬流量攻擊和針對服務(wù)器主機資源耗盡攻擊.前者通過發(fā)送大量攻擊包導致網(wǎng)絡(luò)帶寬被阻塞,合法網(wǎng)絡(luò)包被虛假的攻擊包淹沒而無法到達目的主機;后者是通過大量攻擊包導致目標服務(wù)器的內(nèi)存、CPU等資源被內(nèi)核及應(yīng)用程序耗盡,從而無法向合法用戶提供網(wǎng)絡(luò)服務(wù).
(2)基于攻擊環(huán)節(jié):分為網(wǎng)絡(luò)掃描攻擊和惡意軟件攻擊.DDoS在攻擊之前需要進行網(wǎng)絡(luò)掃描[6],攻擊者利用系統(tǒng)軟硬件或者網(wǎng)絡(luò)協(xié)議上存在的漏洞或者開放端口,在未經(jīng)授權(quán)的情況下訪問或者破壞系統(tǒng)資源.在發(fā)現(xiàn)了互聯(lián)網(wǎng)中具有漏洞的主機之后,攻擊者可以將惡意軟件通過代碼植入到該主機上,形成對該主機的挾持和控制.這些惡意應(yīng)用程序如廣告軟件、蠕蟲、木馬等能夠竊取和泄露用戶個人數(shù)據(jù)、運行惡意代碼、降低設(shè)備整體的性能,并且它們可以通過直接分布在服務(wù)器上,在應(yīng)用程序商店隱藏自己[7].
(3)基于自動化程度[8]:根據(jù)DDoS攻擊的自動化程度可以將DDoS攻擊分為手動DDoS、半自動DDoS以及自動DDoS.手動DDoS需要攻擊者自行網(wǎng)絡(luò)掃描、挾持控制漏洞設(shè)備并安裝攻擊代碼.半自動攻擊中,攻擊者只需要在攻擊調(diào)度中心設(shè)置攻擊類型和強度,選擇攻擊目標,然后調(diào)控負責攻擊程序處理的主機去自動控制僵尸主機并且發(fā)起最后的DDoS攻擊.在自動DDoS攻擊中,攻擊屬性的設(shè)定(比如攻擊類型、開始時間、選擇攻擊目標,等等)是在攻擊代碼中完成的,攻擊者只需要發(fā)送攻擊命令,攻擊設(shè)備和攻擊者之間只保持間接的通信,因此,被攻擊方很難發(fā)現(xiàn)攻擊者的身份.這種攻擊的主要弱點是攻擊者的后門面向僵尸主機開放,防御者可以通過僵尸主機對攻擊者進行追蹤和反擊.
(4)基于攻擊所利用的弱點:文獻[9-10]將DDoS攻擊分為洪泛DDoS攻擊和漏洞DDoS攻擊.洪泛DDoS攻擊是指攻擊者通過在網(wǎng)絡(luò)中發(fā)送大量報文來耗盡被攻擊者的網(wǎng)絡(luò)帶寬,從而阻止合法用戶的服務(wù)連接.洪泛DDoS攻擊可分為直接模式和間接模式.間接模式下,攻擊者通過篡改 IP 地址冒充被攻擊者向服務(wù)器發(fā)送請求,服務(wù)器則會將響應(yīng)發(fā)送至被攻擊者,從而耗盡被攻擊者的資源.在此服務(wù)器充當了攻擊反射器的功能,因此間接模式的洪泛DDoS攻擊也稱為反射洪泛攻擊[11].Smurf攻擊和Fraggle攻擊都屬于此類攻擊.漏洞DDoS攻擊是指攻擊者利用網(wǎng)絡(luò)協(xié)議中的漏洞進行攻擊,如基于TCP-SYN的攻擊、放大攻擊等.基于TCP-SYN的攻擊利用了TCP連接中三次握手的機制,攻擊者通過傳輸大量SYN數(shù)據(jù)包而不確認響應(yīng),阻塞服務(wù)器可用TCP連接隊列,消耗系統(tǒng)資源和可用帶寬,造成拒絕服務(wù).放大攻擊是指攻擊者通過某些網(wǎng)絡(luò)協(xié)議服務(wù)的特殊性使得自身發(fā)出的報文流量得到放大,常用于配合反射洪泛攻擊使大量的網(wǎng)絡(luò)流量涌向被攻擊者,達到更好的攻擊效果.
(5)按照DDoS攻擊所處的協(xié)議層次:根據(jù)協(xié)議層次劃分,DDoS攻擊的發(fā)生主要分布在應(yīng)用層及傳輸層/網(wǎng)絡(luò)層.雖然在數(shù)據(jù)鏈路層可以通過洪泛攻擊的方式來耗盡網(wǎng)絡(luò)資源,從而達到與DDoS攻擊同樣的效果,但是從方式和原理上來講,該類攻擊不具備DDoS攻擊的典型特征.表1展示了DDoS在不同協(xié)議層次中典型的攻擊類型.
表1按照受影響的協(xié)議層次對DDoS攻擊進行分類
Table 1 Classification of DDoS attack according to protocol layer
協(xié)議層次攻擊類型示例應(yīng)用層反射/放大攻擊Smurf 攻擊和Fraggle 攻擊等HTTP 洪泛攻擊會話洪泛攻擊、請求洪泛攻擊、非對稱攻擊如HTTP get/post 洪泛、慢請求/慢響應(yīng)攻擊如Slowloris、HTTP 碎片攻擊等傳輸層/網(wǎng)絡(luò)層一般洪泛攻擊UDP、ICMP、DNS等利用協(xié)議漏洞的洪泛攻擊TCP-SYN、ACK & PUSH-ACK、RST/FIN 等反射/放大攻擊與應(yīng)用層的原理相似
(6)基于攻擊的速率:分為持續(xù)速率攻擊和可變速率攻擊.持續(xù)速率攻擊的攻擊性能參數(shù)不變,而可變速率可以改變攻擊的性能參數(shù),根據(jù)攻擊效果的反饋進行參數(shù)更改,使得對其進行的檢測和預(yù)防更加困難[12].
1.1.2 其他網(wǎng)絡(luò)攻擊的分布式實施
除了DDoS攻擊,網(wǎng)絡(luò)中還存在其他網(wǎng)絡(luò)攻擊的分布式實施.對于常見的攻擊方式,可以通過在多個分布式節(jié)點上部署該攻擊方式,實現(xiàn)原有攻擊方式在強度、范圍、效果、持久度等方面的提升,如分布式的高級持續(xù)性威脅攻擊(Advanced Persistent Threat,APT),分布式中間人攻擊(Man-in-the-MiddleAttack,MITM),分布式嗅探攻擊等.
分布式APT攻擊在攻擊成功后廣泛使用遠程訪問工具(如Poison IVY)或遠程訪問特洛伊木馬來遠程控制受害者[13-14].
MITM 攻擊中,攻擊者通過惡意修改自身網(wǎng)絡(luò)硬件MAC 地址或 IP 地址進行身份偽裝,與通信兩端建立單獨的連接并交換接收數(shù)據(jù),從而使得通信的兩端都認為它們通過專用連接相互通信,但事實上整個對話是完全由攻擊者控制的[15],常見的有 ARP 欺騙、DNS 欺騙、網(wǎng)頁劫持等.分布式MITM以攔截和篡改網(wǎng)絡(luò)流量為目的,極大地威脅著分布式智能網(wǎng)絡(luò)的通信安全.
分布式嗅探攻擊是指網(wǎng)絡(luò)信息交換過程中,利用分布式網(wǎng)絡(luò)嗅探工具得到在網(wǎng)絡(luò)中交互的數(shù)據(jù)包,從而對數(shù)據(jù)包完成智能分析,并得到網(wǎng)絡(luò)分析所需要的網(wǎng)絡(luò)數(shù)據(jù).在網(wǎng)絡(luò)嗅探中所得到的網(wǎng)絡(luò)數(shù)據(jù)通常包括網(wǎng)絡(luò)賬號、用戶口令信息、關(guān)鍵文本等重要數(shù)據(jù).嗅探攻擊工作在網(wǎng)絡(luò)環(huán)境底層,是極其安靜的,是一種被動攻擊,此類攻擊很難被察覺,只能針對敏感報文實施加密進行防范.需要警惕的是嗅探攻擊不單在有線網(wǎng)絡(luò)上,在無線網(wǎng)絡(luò)也可以完成監(jiān)聽.比如在智能物聯(lián)網(wǎng)中,物與物主要通過無線網(wǎng)進行數(shù)據(jù)交互,一旦被分布式網(wǎng)絡(luò)嗅探攻擊竊取了用戶信息,將造成隱私泄露和巨大的經(jīng)濟損失.
網(wǎng)絡(luò)中的分布式攻擊往往難以被檢測,原因主要有兩點:①在大多數(shù)情況下,攻擊發(fā)起時的流量與正常流量特征類似[4,16];②分布式攻擊種類繁多,不同的分布式攻擊并不具有辨識度較高的共同屬性.
為了對分布式攻擊進行防御,一些解決方案利用預(yù)防和反應(yīng)機制來減輕受害者網(wǎng)絡(luò)、中間網(wǎng)絡(luò)和源網(wǎng)絡(luò)中分布式攻擊的影響[17].分布式攻擊防御體系見圖2.
圖2 分布式攻擊的防御體系Fig.2 Defense hierarchy against distributed attack
最常用的防御機制包括攻擊預(yù)防、入侵檢測和攻擊反應(yīng)三部分.攻擊預(yù)防嘗試在攻擊造成損害之前過濾入口和出口流量,如常見的防火墻技術(shù)等.入侵檢測指的是對計算機系統(tǒng)和網(wǎng)絡(luò)中的各種主要信息進行收集和分析,在不影響網(wǎng)絡(luò)指標的前提下,檢測出計算機系統(tǒng)和網(wǎng)絡(luò)中是否存在被外界攻擊或者違反某些安全性能的行為[18-19].通過收集到的入侵信息和證據(jù),起到及時處理事故和恢復(fù)數(shù)據(jù)的作用.攻擊反應(yīng)旨在最大限度地減少分布式攻擊的損失[20-21].具體描述如下:
(1)攻擊預(yù)防:設(shè)備級別設(shè)置.在設(shè)備級存在一些基于身份驗證的安全方案,如路由器和交換機,以防止網(wǎng)絡(luò)和設(shè)備遭受各種攻擊.它們還為DDoS攻擊提供了有效的第一道防線,具體方法有設(shè)置路由訪問控制列表、串聯(lián)防火墻安全設(shè)備等.
(2)入侵檢測.正常和攻擊模式的統(tǒng)計屬性可用于識別DDoS攻擊.一般來說,首先計算常規(guī)數(shù)據(jù)的統(tǒng)計模型,然后使用統(tǒng)計歸納測試來確定新的數(shù)據(jù)實例是否屬于該模型,不符合模型規(guī)則的數(shù)據(jù)實例被歸為具有攻擊特性的數(shù)據(jù).也就是說,入侵檢測是通過預(yù)處理器審計未知情況下的數(shù)據(jù),形成數(shù)學向量形式,然后根據(jù)判決函數(shù),運用入侵檢測模型將這些數(shù)字向量分類,最后向決策系統(tǒng)提交分類結(jié)果,由決策系統(tǒng)做出判斷.檢測方式是多樣的,主要有基于流量、地址以及數(shù)據(jù)包頭信息變化等方式.機器學習技術(shù)在入侵檢測中具有相應(yīng)的應(yīng)用,如貝葉斯網(wǎng)絡(luò)、模糊邏輯、遺傳算法、K-NN算法、神經(jīng)網(wǎng)絡(luò)、多智能體智能代理系統(tǒng)(多agent系統(tǒng))、支持向量機等.統(tǒng)計學相關(guān)技術(shù)有參數(shù)化方法,常見的參數(shù)檢測方法如Parametric method、Operational、Spectral、Statistical moments等.此外,許多研究已經(jīng)建立了非參數(shù)方法作為抵御DDoS攻擊的有效防御方法.常見的非參數(shù)檢測方法有D-WARD,改變聚集樹(CATS),低特征值(FFV),回歸分析、馬爾可夫方法、統(tǒng)計分離和時間序列.
(3)攻擊反應(yīng).在攻擊監(jiān)測系統(tǒng)確定網(wǎng)絡(luò)遭到DDoS 攻擊后,防御系統(tǒng)能夠采取的有效響應(yīng)包括:確認攻擊源、相應(yīng)地進行漏洞修復(fù)、弱化攻擊.溯源機制是指通過一些機制識別攻擊的源頭,從而從源頭上減弱或者阻止攻擊.已有方法有基于熵變化、包標記、逐跳跟蹤、ICMP消息傳遞、IP-Sec跟蹤等.
近些年,人工智能技術(shù)的發(fā)展使得智能分布式攻擊出現(xiàn)并引起了廣泛的關(guān)注,攻擊主體由人工實施變?yōu)橐愿咝?、自動、智能的人工智能發(fā)起攻擊,攻擊方式出現(xiàn)了與傳統(tǒng)模式全然不同的特點.攻擊的速度、規(guī)模、模式、影響等都發(fā)生了根本性的變化.
人工智能來源于“假設(shè)關(guān)于學習過程的每個方面以及所有的智力特征都可以被精確地描述,以使機器可以模擬學習過程”.人工智能技術(shù)通過了解智能的實質(zhì),產(chǎn)生出一種新的能以人類智能相似的方式做出反應(yīng)的智能機器.
人類的學習過程主要有三個階段:①對外界事物的感知;②對感知到的事物進行思考;③產(chǎn)生學習結(jié)果.同時,人類會持續(xù)對外界進行感知,不斷重復(fù)過程,更新自己的學習結(jié)果.受人類智能啟發(fā),人工智能也通過類似過程產(chǎn)生智能機器.機器通過“感知”過程收集外界數(shù)據(jù),利用智能算法對數(shù)據(jù)進行學習,得到學習結(jié)果.之后智能機器持續(xù)收集數(shù)據(jù)對學習結(jié)果進行更新.人類有不同的學習方式,而人工智能中的智能算法便是機器不同學習方式的體現(xiàn),即使是對同一份數(shù)據(jù),不同的學習算法學習到的結(jié)果也會有些許差異,在實踐中需要根據(jù)不同的學習問題選擇適合的算法.
人工智能的介入,將導致分布式攻擊的速度、規(guī)模、模式、影響等發(fā)生根本性的變化.這種變化是指數(shù)式的變化,原有的攻防機理、模型、策略等都不再適用.不僅如此,以大數(shù)據(jù)、分布式訓練與協(xié)作等為特征的智能分布式攻擊,在攻防隱蔽性、協(xié)同效率、速度影響等方面更呈現(xiàn)出與傳統(tǒng)模式截然不同的特征.傳統(tǒng)的防御、反制方式難以奏效,尤其是隨著群體智能等相關(guān)技術(shù)的發(fā)展,攻擊方可以基于獨立自發(fā)而又高效協(xié)同的群體模式,實施更加隱蔽、高效、突發(fā)、全面、針對性的攻擊,這對網(wǎng)絡(luò)安全、經(jīng)濟安全、社會安全以至于國家安全都將帶來巨大的隱患.
本小節(jié)從人工智能與分布式攻擊的結(jié)合方式、智能分布式攻擊模式、智能分布式攻擊現(xiàn)狀三個方面,對基于人工智能的分布式攻擊進行分析.
2.2.1 人工智能與分布式攻擊的結(jié)合方式
人工智能與分布式攻擊的結(jié)合主要體現(xiàn)在三個方面:①利用人工智能學習特征環(huán)境增強攻擊效果與隱蔽性;②利用人工智能增強分布式協(xié)作效果;③利用人工智能實現(xiàn)攻擊方式的自我進化.
(1)學習特征環(huán)境
在一個網(wǎng)絡(luò)環(huán)境中,其數(shù)據(jù)、數(shù)據(jù)傳送方法等均具有一定的網(wǎng)絡(luò)特征.利用人工智能對相關(guān)數(shù)據(jù)進行收集、分析、建模的過程,可以使得分布式攻擊的攻擊方學習到一個網(wǎng)絡(luò)環(huán)境中關(guān)于正常數(shù)據(jù)、正常傳送方法等環(huán)境特征的甄別標準,在此基礎(chǔ)上,攻擊者可以參考這些標準,進而在相關(guān)標準下選擇合適的攻擊手段.例如,將攻擊數(shù)據(jù)偽裝成具有正常特征的普通數(shù)據(jù),從而使得攻擊更具隱蔽性,增強攻擊的危害性.
(2)提高分布式協(xié)作效果
分布式攻擊的效果,很大程度上取決于分布式協(xié)作效率的高低.與傳統(tǒng)的分布式攻擊不同,智能分布式攻擊的協(xié)作可以通過人工智能的參與,增強多個分布式攻擊節(jié)點間的協(xié)作效率.根據(jù)協(xié)同位置的不同,可分為智能中心統(tǒng)一協(xié)調(diào)分布式攻擊實體的類型,分布式智能攻擊實體獨立決策的類型,以及兩者結(jié)合的類型.類型不同,智能分布式攻擊的模式也不一樣,具體見2.2.2中的描述.
(3)攻擊方式的智能進化
基于人工智能,可以實現(xiàn)分布式攻擊方式的自我演變與進化.人工智能模塊分析不同攻擊方式下的攻擊效果,以及防御方的應(yīng)對措施,從而針對防御方的弱點自動提升攻擊機制,實現(xiàn)攻擊方式的智能進化.比如,防御方啟用了入侵檢測系統(tǒng),其檢測結(jié)果就成為了攻擊效果的反饋數(shù)據(jù),攻擊者可以通過人工智能技術(shù)對這種反饋數(shù)據(jù)進行收集、分析、建模,得到相應(yīng)的統(tǒng)計模型,并基于該模型調(diào)整攻擊方式,從而使得入侵檢測系統(tǒng)失去防御的效果,攻擊方式也由此得到進化.
2.2.2 智能分布式攻擊模式分析
根據(jù)智能實體與分布式攻擊實體協(xié)作的實施位置,智能分布式攻擊可以分為三種模式.
(1)基于中心控制節(jié)點的智能分布式攻擊
基于中心控制節(jié)點的智能分布式攻擊見圖3.
圖3 基于中心控制節(jié)點的智能分布式攻擊
Fig.3 Intelligent distributed attack based on central control node
如圖3所示,智能攻擊模塊只部署在攻擊發(fā)起者節(jié)點自身.這種模式下,攻擊發(fā)起節(jié)點作為智能中心控制節(jié)點,其他攻擊節(jié)點不具備獨立的決策和行動能力,而是完全受中心控制節(jié)點的統(tǒng)一調(diào)配,采取相應(yīng)的行動.如智能中心節(jié)點控制大量分布在世界各處的僵尸主機發(fā)起直接攻擊或反射式攻擊等.這種方式可以提高分布式攻擊的整體性與一致性.
(2)分布式攻擊智能實體獨立決策型
全智能分布式攻擊見圖4.
如圖4所示,在所有攻擊節(jié)點中都部署智能攻擊模塊.所有分布式攻擊節(jié)點都有獨立的智能決策和行動能力,可以基于智能分析獨立決定攻擊發(fā)起的時間、方式、范圍等.
圖4 全智能分布式攻擊Fig.4 Pure intelligent distributed attack
這種模式采用了群體智能的思想,各攻擊實體具有獨立的智能,同時又遵守一組預(yù)先設(shè)定的基本規(guī)則,從而形成遠超單獨攻擊實體的更高層次的群體智慧和攻擊效果.由于各攻擊實體獨立決策,各個攻擊實體可以迅速地根據(jù)所處網(wǎng)絡(luò)環(huán)境的變化,靈活調(diào)整相應(yīng)的攻擊策略.
(3)中心+群智模式
中心+群智模式見圖5.
圖5 中心+群智模式Fig.5 Central intelligence + swarm intelligence pattern
如圖5所示,中心+群智模式是前面兩種模式的結(jié)合.各個分布式攻擊實體本身具備一定的智能決策能力,但是為了進一步提高分布式協(xié)同效率,各攻擊實體同時接受中心智能控制實體的整體調(diào)度.從而,形成既有整體智能協(xié)同、又有個體獨立智能決策的模式.這種模式既可以更好地適應(yīng)網(wǎng)絡(luò)情況的快速變化,同時又可以保證智能分布式攻擊的整體性與一致性.
2.2.3 智能分布式攻擊現(xiàn)狀分析
目前,智能分布式攻擊的具體實例及研究披露都相對較少,智能DDoS攻擊是目前最常見的智能分布式網(wǎng)絡(luò)攻擊方式[22].傳統(tǒng)的DDoS攻擊可以通過提高客戶端到服務(wù)器的路徑可用性解決.但是智能DDoS攻擊除了擁塞節(jié)點之外,還可以進入防御節(jié)點系統(tǒng)結(jié)構(gòu),根據(jù)通信鏈確定受害者的鄰居,對受害者及其鄰居實施系統(tǒng)性的攻擊.由此,攻擊者可以顯著惡化損害,而不是純粹的隨機擁塞.具體而言,攻擊者可以使用攻擊公開節(jié)點的結(jié)果來引導對其他公開節(jié)點的后續(xù)擁塞攻擊,并且攻擊者可以遍歷轉(zhuǎn)發(fā)器節(jié)點之間的通信鏈,甚至能披露服務(wù)器以最終擁塞它并使服務(wù)完全癱瘓[23].
(1)自動化工具
早期的DDoS攻擊大多是手動的,攻擊者必須執(zhí)行幾個步驟,包括在最終攻擊發(fā)起之前檢測有漏洞的計算機以便在Internet上生成僵尸,端口掃描和部署惡意軟件.目前,隨著智能技術(shù)的發(fā)展,DDoS攻擊工具已經(jīng)變得自動化和復(fù)雜化,從而允許攻擊者以最少的人力來自動執(zhí)行所有或部分步驟[24].攻擊者可以配置特定于目標的參數(shù),而其他參數(shù)可以通過自動化工具進行管理.這些自動攻擊工具包括Trinoo,Tribe Flood Network(TFN),TFN2K,Trinity,Knight和Stacheldraht等,其中大部分都基于互聯(lián)網(wǎng)中繼聊天協(xié)議(IRC)工作,攻擊者所使用的控制主機和僵尸主機之間可以間接通信,而不必透露自己的身份[25].
(2)檢測逃避
與人工智能在分布式拒絕服務(wù)攻擊防御上的應(yīng)用相對應(yīng),攻擊者可以學習模仿防御方的智能入侵檢測系統(tǒng),對己方的攻擊流量特性進行升級、偽裝,進而使得防御方的入侵檢測效果減弱[26-27].
雖然目前智能分布式攻擊的具體方式披露很少,但是業(yè)界公認智能分布式攻擊是未來分布式攻擊發(fā)展的必然方向.智能分布式攻擊的巨大危害值得引起人們的高度關(guān)注.學術(shù)界和工業(yè)界需要推動相關(guān)技術(shù)的進一步研究,為智能分布式攻擊所帶來的潛在威脅做好應(yīng)對準備.
隨著人工智能的發(fā)展,人工智能技術(shù)已被廣泛應(yīng)用到面向分布式攻擊的防御中.本節(jié)總結(jié)了面向傳統(tǒng)分布式攻擊的智能防御措施,并探討了面向智能分布式攻擊的精準反制策略.
目前已有大量的研究將人工智能技術(shù)與傳統(tǒng)防御手段結(jié)合,實現(xiàn)對傳統(tǒng)分布式攻擊的高效防御.圖6概括了目前已應(yīng)用在普通分布式攻擊防御中的人工智能技術(shù).
圖6 人工智能技術(shù)分類Fig.6 Classification of artificial intelligence
3.1.1 基于機器學習的智能防御
機器學習是實現(xiàn)人工智能的一種重要方法,也是目前人工智能應(yīng)用最廣的技術(shù)之一.目前,機器學習技術(shù)逐步應(yīng)用到網(wǎng)絡(luò)防御,帶來了較好的防御效果[28].傳統(tǒng)機器學習包括常見的監(jiān)督學習、無監(jiān)督學習、半監(jiān)督學習以及強化學習.
監(jiān)督學習如樸素貝葉斯、支持向量機、決策樹等.樸素貝葉斯算法在處理分類問題上簡單高效,該技術(shù)通常與統(tǒng)計算法一起用于檢測攻擊.Katkar等[29]利用分布式處理和樸素貝葉斯分類器對HTTP服務(wù)器進行DDoS攻擊檢測.Ajagekar等[30]基于多項式樸素貝葉斯算法進行了數(shù)據(jù)預(yù)處理,改進了DDoS檢測系統(tǒng),實驗結(jié)果表明其更簡單有效.
支持向量機(SVM)目的是在特征空間找到最佳的分離超平面使得訓練集上正負樣本間隔最大,由此進行分類.Kato等[31]選擇了基于高斯核方法的支持向量機來訓練和測試DDoS攻擊檢測系統(tǒng).Yang等[32]采用支持向量機方法對攻擊流量進行識別,然后流表交付模塊根據(jù)流量識別結(jié)果動態(tài)調(diào)整轉(zhuǎn)發(fā)策略以抵抗DDoS攻擊.Phan等[33]提出了基于SVM等方法的混合安全機制.
決策樹也是一種常見的監(jiān)督學習方法,是基于樹結(jié)構(gòu)來進行決策的.Jiao等[27]利用兩個決策樹分類器提取TCP流量的有效特征來區(qū)分惡意流量和正常流量. Lakshminarasimman等[34]提出了一種基于決策樹的DDoS檢測機制,并對J48決策樹算法以及隨機森林算法進行了對比.Zekri等[35]設(shè)計了一個基于決策樹的C4.5算法的DDoS檢測系統(tǒng).
無監(jiān)督學習如K-means算法,其實現(xiàn)起來比較簡單,具有良好的聚類效果,因此應(yīng)用廣泛.Pramana等[36]將K-means算法運用到DDoS的檢測系統(tǒng)中,并對其進行了改進.另外,基于密度的聚類算法(DBSCAN)也有應(yīng)用,Dincalp等[37]用該算法對網(wǎng)絡(luò)流量進行聚類,有效地檢測出DDoS攻擊.
半監(jiān)督學習使用大量的未標記數(shù)據(jù),并同時使用標記數(shù)據(jù),是監(jiān)督學習與無監(jiān)督學習相結(jié)合的一種學習方法.Kaur[38]將基于聚類算法的半監(jiān)督機器學習技術(shù)應(yīng)用于大數(shù)據(jù)集和決策樹的分類,在DDoS預(yù)測的精度上達到了很高的水平.Gu等[39]提出了一種半監(jiān)督加權(quán)K-means檢測方法,通過基于Hadoop的混合特征選擇算法來尋找最有效的特征集.
強化學習也是使用未標記的數(shù)據(jù),但是可以通過獎懲函數(shù)來接近最優(yōu)解.Liu等[40]提出基于強化學習的框架,能夠在不同的攻擊場景下智能學習最優(yōu)的緩解策略,實時緩解DDoS攻擊.
3.1.2 基于人工免疫系統(tǒng)的智能防御
人工免疫系統(tǒng)是一種靈感來源于生物體免疫系統(tǒng),用于解決計算機領(lǐng)域問題的新興算法.近些年來也有不少學者將其應(yīng)用到分布式攻擊的防御上.人工免疫系統(tǒng)可以通過訓練來區(qū)別正常行為和異常行為,從而檢測是否存在攻擊.Ramadhan等[41]利用人工免疫系統(tǒng),設(shè)計了一種TCP洪泛攻擊檢測系統(tǒng).Igbe等[42-43]提出了基于樹突狀細胞算法的DDoS入侵檢測系統(tǒng).
3.1.3 基于Agent技術(shù)的智能防御
Agent是一個軟件實體或者是軟硬件實體的混合,能夠代表用戶執(zhí)行并行操作,它在學習能力、協(xié)同合作、反應(yīng)速率以及有效性上有較強的優(yōu)勢,以提高控制決策的智能性、靈活性,使控制結(jié)果更準確[44].Duraipandian等[45]提出了一種基于智能Agent的DDoS攻擊防御體系結(jié)構(gòu),使用信任機制在檢測到攻擊前活動時提供早期警告.Kesavamoorthy等[46]提出了一種基于多Agent系統(tǒng)的DDoS檢測和防御方法,各Agent之間采用粒子群優(yōu)化方法.針對ISP邊界上的DDoS攻擊,Singh等[47]提出了一種基于協(xié)作Agent的分布式方案.
3.1.4 基于模糊邏輯的智能防御
模糊邏輯是建立在多值邏輯基礎(chǔ)上,運用模糊集合來研究模糊性思維、語言形式及其規(guī)律的方法,是人工智能技術(shù)的一個重要分支.Shiaeles等[48]提出了一種基于平均數(shù)據(jù)包到達時間的模糊估計的DDoS檢測方法.Mondal等[49]針對云計算的安全性,設(shè)計了一種基于模糊邏輯的DDoS檢測方案,所有數(shù)據(jù)包在達到云平臺前都會經(jīng)過模糊系統(tǒng)的過濾.Singh等[50]結(jié)合了模糊邏輯以及遺傳算法提出了一種DDoS攻擊檢測方法.
3.1.5 基于人工神經(jīng)網(wǎng)絡(luò)的智能防御
人工神經(jīng)網(wǎng)絡(luò)也是人工智能領(lǐng)域興起的研究熱點,目前已有大量的研究將其應(yīng)用到分布式攻擊防御中.人工神經(jīng)網(wǎng)絡(luò)可分為前饋神經(jīng)網(wǎng)絡(luò)和反饋神經(jīng)網(wǎng)絡(luò).
前饋神經(jīng)網(wǎng)絡(luò)如RBF神經(jīng)網(wǎng)絡(luò)、卷積神經(jīng)網(wǎng)絡(luò)等.RBF神經(jīng)網(wǎng)絡(luò)使用徑向基函數(shù)作為隱層神經(jīng)元激活函數(shù).Chen等[51]利用改進的RBF神經(jīng)網(wǎng)絡(luò)檢測DDoS攻擊,設(shè)計智能用戶控制系統(tǒng)來處理復(fù)雜多變的攻擊.Dayal等[52]基于RBF網(wǎng)絡(luò)進行優(yōu)化學習,有效地區(qū)分了正常的大流量以及DDoS攻擊,并能夠在DDoS攻擊的早期階段進行處理防御.Su等[53]利用RBF神經(jīng)網(wǎng)絡(luò)等技術(shù)恢復(fù)混亂的網(wǎng)絡(luò)流,并通過訓練網(wǎng)絡(luò)流樣本來預(yù)測未來的網(wǎng)絡(luò)流以檢測DDoS攻擊.卷積神經(jīng)網(wǎng)絡(luò)(CNN)也是一類包含卷積計算且具有深度結(jié)構(gòu)的前饋神經(jīng)網(wǎng)絡(luò).Ghanbari等[54-55]對提取特征進行卷積神經(jīng)網(wǎng)絡(luò)訓練,并對CNN檢測數(shù)據(jù)的異常行為進行測試,之后對該方法進行改進,將DDoS攻擊的檢測準確率提高到87.35%.Spaulding等[56]利用卷積神經(jīng)網(wǎng)絡(luò)和長短時記憶網(wǎng)絡(luò)(LSTM)兩者結(jié)合的深度學習算法來檢測基于DNS的DDoS攻擊.Roopak等[57]在物聯(lián)網(wǎng)環(huán)境中提出了用于DDoS攻擊檢測的深度學習模型.
反饋神經(jīng)網(wǎng)絡(luò)有BP神經(jīng)網(wǎng)絡(luò)等.BP神經(jīng)網(wǎng)絡(luò)突出的優(yōu)點就是具有很強的非線性映射能力和柔性的網(wǎng)絡(luò)結(jié)構(gòu).Badve等[58]利用已知的無攻擊流量計算預(yù)測誤差,訓練BP神經(jīng)網(wǎng)絡(luò)以提高系統(tǒng)性能.Ishitaki等[59]針對利用匿名網(wǎng)絡(luò)發(fā)起的DDoS,用BP神經(jīng)網(wǎng)絡(luò)設(shè)計了一個系統(tǒng),能夠有效識別匿名網(wǎng)絡(luò)中的不良用戶行為.
面對智能分布式攻擊的顛覆性威脅,傳統(tǒng)的防御策略將束手無策.同時,針對智能分布式攻擊的新型智能防御技術(shù)的研究尚未系統(tǒng)性地展開.本小節(jié)基于智能分布式攻擊的特點,探討了面向智能分布式攻擊的智能反制技術(shù),變被動防御為主動出擊,以智對智,提前破壞智能分布式攻擊的關(guān)鍵點,實現(xiàn)智能化的主動防御.
3.2.1 智能分布式攻擊的薄弱點分析
智能分布式攻擊技術(shù)主要包含分布式技術(shù)、智能技術(shù)、攻擊技術(shù)以及其他將整個攻擊鏈整合起來的輔助技術(shù).攻擊鏈條上的各個部分,都會有其薄弱點,可用于防御者進行精準反制.智能分布式攻擊的薄弱點分析主要集中在智能分布式攻擊關(guān)鍵點(集)發(fā)現(xiàn)與定位,以及分布式攻擊中人工智能的薄弱點分析,為智能反制提供明確的反制目標.
(1)智能分布式攻擊關(guān)鍵點(集)發(fā)現(xiàn)與定位
智能分布式攻擊的惡意節(jié)點數(shù)量一般很大,其交互共識網(wǎng)絡(luò)實質(zhì)上是一種復(fù)雜網(wǎng)絡(luò).由于復(fù)雜網(wǎng)絡(luò)具有無標度特性,無標度網(wǎng)絡(luò)對非定向攻擊具有較強的免疫力,而對于定向攻擊卻表現(xiàn)得相對脆弱.當復(fù)雜網(wǎng)絡(luò)中5%~10%的關(guān)鍵節(jié)點同時失效時,通過攻擊這些“網(wǎng)絡(luò)要塞”可以迅速摧毀或者有效控制整個智能分布式攻擊.針對復(fù)雜網(wǎng)絡(luò)“魯棒但又脆弱”的基礎(chǔ)特性,可以對智能分布式攻擊網(wǎng)絡(luò)的關(guān)鍵節(jié)點進行探索和定位,通過破壞這些關(guān)鍵節(jié)點來降低智能分布式攻擊網(wǎng)絡(luò)的魯棒性和抗毀性,如圖7所示.
圖7 智能分布式攻擊關(guān)鍵節(jié)點Fig.7 Key points in intelligent distributed attack
但是,智能分布式攻擊關(guān)鍵節(jié)點的挖掘和探索仍是目前研究領(lǐng)域的一個難點,如何評估節(jié)點的重要程度以及挖掘出復(fù)雜網(wǎng)絡(luò)中重要的關(guān)鍵節(jié)點,都是亟需解決的問題.
(2)智能分布式攻擊中人工智能薄弱點分析
智能分布式攻擊中人工智能的薄弱點分析要立足于兩個方面:人工智能技術(shù)如機器學習、深度學習等本身的薄弱點,以及分布式建立人工智能時的可利用薄弱點.因而,在利用人工智能的薄弱點方面,可以分為兩個階段:
①智能學習階段.攻擊方在進行智能分布式攻擊的過程中,一個非常明顯的特征是,其惡意智能節(jié)點將處于不斷學習分析過程中.這個過程強烈依賴于三方面的資源:可用于智能學習的數(shù)據(jù)以及數(shù)據(jù)傳輸、分析所需要的通信資源、計算資源和存儲資源.通過建立該階段的薄弱點模型,系統(tǒng)描述各要素在智能學習階段的作用與影響.
②分布式共識達成階段.針對智能惡意節(jié)點間由分布式到匯聚過程中的時延(如時間先后帶來的結(jié)果不一致性)、共識機制(如確定性共識機制、隨機共識機制、拜占庭共識機制等),研究其作用與影響,為精準反制提供基礎(chǔ).
3.2.2 基于分布式智能的精準反制
針對智能分布式攻擊中的薄弱點,需要建立分布式協(xié)同反制模型,研究以智對智的分布式協(xié)同反制技術(shù),有效破壞攻擊方的分布式協(xié)同,并增強防御方在反制過程中的智能分布式對抗能力與協(xié)同效果,而且能夠根據(jù)攻擊方的攻擊態(tài)勢、防御方的反制效果,實現(xiàn)分布式智能協(xié)同反制技術(shù)的自升級、自進化.
(1)針對智能分布式攻擊的反制技術(shù)
根據(jù)智能分布式攻擊中人工智能薄弱點分析可以將智能分布式攻擊的反制分為兩個階段.
①在智能學習階段反制.針對智能分布式攻擊,可以通過偽造虛假數(shù)據(jù)用于應(yīng)對智能惡意節(jié)點的學習.并且,一旦發(fā)現(xiàn)可疑的攻擊節(jié)點或者攻擊報文,則根據(jù)網(wǎng)絡(luò)態(tài)勢演變溯源關(guān)鍵節(jié)點,有針對性地生成虛假數(shù)據(jù),干擾相應(yīng)關(guān)鍵惡意節(jié)點的認知學習,同時進行相應(yīng)局部資源的限制(減少通信帶寬、邊緣計算、存儲能力等),截斷/限制攻擊關(guān)鍵節(jié)點大量的通信和服務(wù)資源,從而導致分布式攻擊關(guān)鍵節(jié)點的失效,達到反制攻擊網(wǎng)絡(luò)的目標.
②分布式共識達成階段反制.對于不同的分布式共識機制(如確定性共識機制、隨機共識機制、拜占庭共識機制等),可以有不同代價的反制方案,策反/阻斷相應(yīng)數(shù)量惡意節(jié)點的共識過程,則分布式智能攻擊將無法達成行為共識.另外,對于不同優(yōu)先級的業(yè)務(wù),可以按照從策反/阻斷一個惡意節(jié)點(低優(yōu)先級),到策反/阻斷三分之一惡意節(jié)點(一般優(yōu)先級),再到策反/阻斷半數(shù)惡意節(jié)點(高優(yōu)先級)來應(yīng)對相應(yīng)的惡意攻擊,使其無法達成一致性協(xié)議.
(2)反制節(jié)點間的智能協(xié)同
在進行智能分布式攻擊的精準反制過程中,其主要工作由專用反制節(jié)點進行.與此同時,也可以發(fā)動非專用節(jié)點(普通節(jié)點)輔助進行分布式協(xié)同反制.因此,網(wǎng)絡(luò)中的節(jié)點可以分為兩類:資源充足節(jié)點和資源受限節(jié)點.專門用于對智能分布式攻擊進行反制的節(jié)點,通常是資源充足節(jié)點.部分反制專用節(jié)點,以及反制臨時啟用的普通節(jié)點,可以視為資源受限節(jié)點.
因此,需要協(xié)同專用反制節(jié)點與網(wǎng)絡(luò)普通節(jié)點,進行精準反制功能的分布式部署,從而在個體節(jié)點功能和資源受限的情況下,通過分布式協(xié)作的群智形式,面向智能分布式攻擊,實現(xiàn)強大的精準反制能力.
(3)智能反制技術(shù)的演進
智能分布式攻擊具有自升級、自進化的特點,單一而固定的防御手段不足以面對攻擊方可能產(chǎn)生的攻擊進化.這要求防御方的反制技術(shù)仍需要不斷地自我升級、自我演進,以面對可能的更為強大的智能分布式攻擊.自我演進機制需要精確獲知攻擊方的攻擊動態(tài)、效果、防御方反制引起的攻擊方變化等信息,并根據(jù)這些信息建立攻防雙方的演化預(yù)測模型,從而對防御方的精準反制策略和模型進行相應(yīng)地升級、進化,以便在面向智能分布式攻擊時,可以實現(xiàn)更為強大的協(xié)同精準反制能力.
隨著人工智能和分布式技術(shù)的發(fā)展,從面向傳統(tǒng)分布式攻擊的防御到面向新型的基于人工智能技術(shù)的分布式攻擊智能防御,智能分布式攻擊與防御已經(jīng)成為未來網(wǎng)絡(luò)安全領(lǐng)域的核心問題之一.本文在對分布式攻擊方式及防御機制進行總結(jié)、介紹的基礎(chǔ)上,分析了人工智能技術(shù)介入后,分布式攻擊與人工智能相結(jié)合的機制、模式與應(yīng)用現(xiàn)狀.在防御方面,本文總結(jié)了目前常見的面向傳統(tǒng)分布式攻擊的智能防御措施,并探討了面向智能分布式攻擊的精準反制策略.隨著智能分布式攻擊方式的迅速發(fā)展,相關(guān)研究工作應(yīng)該盡快開展,以應(yīng)對未來的安全威脅.