1. 程式人生 > 其它 >As a reader --> Investigating Adversarial Attacks against Network Intrusion Detection Systems in SDNs

As a reader --> Investigating Adversarial Attacks against Network Intrusion Detection Systems in SDNs

Investigating Adversarial Attacks against Network Intrusion Detection Systems in SDNs

引:ML-NIDS與軟體定義網路(SDN)的結合展示出了有前景的檢測結果,在SDN中,邏輯集中的控制平面提供了對跨網路資料的訪問。然而,ML分類器在對抗攻擊中暴露了許多漏洞,這些漏洞引起了對SDN中基於異常的NIDS中類似分類器實現的關注。本文研究了對分類器進行對抗攻擊的可行性。首先實現了一個基於異常的NIDS——Neptune,它使用了不同的ML分類器和流量的流特徵;開發了對抗測試工具Hydra,用以評估逃逸攻擊對Neptune的影響(降低惡意網路流量的檢測率等)。結果表明,在幾個特徵擾動的作用下,Neptune對特定SYN flood(一種DDoS)的檢測準確率在多個分類器之間從100%下降到0%。基於這些結果,本文提出瞭如何提高分類器對對抗攻擊魯棒性的建議。

一、介紹

網路是現代社會基礎設施的重要組成部分,經常受到惡意攻擊的威脅,因此需要採取預防措施來保證網路的安全。新技術改變了網路架構,特別是軟體定義網路(SDN)和網路功能虛擬化(NFV),針對這些架構的新的基於物理和軟體的安全措施也得以實現。在SDN系統中部署NIDS的研究已經取得了很大的進展,原因是SDN網路內部的集中控制平面為全網路流量監控提供了支援

ML是一種使用越來越廣泛的技術,它使得基於SDN中可用的全球網路資料的基於異常的NIDS成為可能。在對NIDS的攻擊中,過度刺激——用良性資料(網路流量)轟擊分類器,以壓倒它,從而導致錯誤分類。

本課題主要研究逃逸攻擊,如果攻擊成功,將允許攻擊者破壞或繞過NIDS。隨著ML分類器成為實現NIDS的預設方法,本工作的目標是揭示SDN中此類安全系統的漏洞。為此,我們開發了Neptune

作為目標NIDS平臺,通過對裝置之間的流統計資料進行分類,用於確定對NIDS中ML分類器的逃逸攻擊可行性。該應用程式實現了流特徵提取,多種分類演算法可供選擇(LR,RF,SVM,KNN)。

本文開發了一個名為Hydra的對抗測試工具,以分析逃逸攻擊對Neptune檢測SYN flood準確性的影響。SYN flood是一種DDoS攻擊,攻擊者傳送SYN (initial connection request)報文,淹沒目標(受害者)的所有可用埠,使合法流量無法訪問。我們的攻擊是根據惡意使用者實際能力發起和執行的,即不瞭解分類器或系統,從網路中的一個節點操作

二、相關文獻綜述

在本研究中,重點研究了SDN NIDS中ML分類器的漏洞和相應防禦策略。ML在android惡意軟體檢測中已成為一個突出的研究方向。研究利用分類器不同層次的對抗知識,使用生成的逃逸攻擊方法來測試惡意應用程式的逃逸能力。結果表明,無論攻擊者的知識水平如何,都有可能使線性分類器和大多數非線性分類器變得冗餘。事實證明,即使是沒有任何知識的攻擊者也能將線性分類器的檢測率從100%降低到12%。

針對入侵防禦系統的對抗攻擊的深入分類發表於2013年。Corona等人曾提出了針對基於異常和基於誤用的IDS的三個關鍵攻擊元素——測量、分類和響應。此外,還提出了針對這些攻擊的防禦措施,而文章的引言中提到的過度刺激攻擊也是在這項工作中進行理論推導的。

近年來,ML-NIDS已經在諸如SDN的網路架構中流行起來。Lee等人為SDN設計並測試了一個名為Athena的基於ML的異常檢測器,並基於k-means演算法實現了一系列分類器,結果顯示了99.23%的DDos檢測率。鑑於此,本文的NIDS使用的相同分類器,與前人的研究擁有相同的漏洞集

良性流量對ML分類器的高流量率可能會允許惡意流量在網路中通過而不被檢測,這是一種過度刺激攻擊。而在投毒的情況下,通過直接訪問訓練資料,對手可以輸入標記為良性流量的惡意流量,從而使惡意流量在SDN中自由流動。即使在攻擊者的知識或能力有限的情況下,對惡意網路流量的特徵增加擾動來表示良性流量,也具有很強的逃逸潛力。

本工作中擴充套件了現有的研究,以調查和量化SDN中NIDS分類器在對抗攻擊中的脆弱性。同時,演示了攻擊泛化,即攻擊跨不同分類器工作的能力。

三、NEPTUNE介紹

Neptune是一種基於異常的SDN NIDS,也是本文對抗攻擊實驗的目標,該系統利用網路流量統計資訊對實時流量進行有監督的訓練和分類。其開發的核心目標是檢測DDoS攻擊,特別是SYN flood。Neptune受到了Athena的啟發,Athena是一個基於SDN的異常檢測系統,它提供了一個可擴充套件到更大網路的開發框架。該應用程式由125個網路特徵組成,開發人員可以使用這些特徵來實現分類。作者提供了一個使用K-Means聚類演算法的SYN flood檢測模型,提出了重點用於攻擊檢測的9個關鍵特徵。Athena達到了99.23%的檢測率,Neptune的目標是使用類似的特徵,以達到相仿的檢測精度。

A.流量統計採集

Neptune通過監聽專用的流量映象主機從網路獲取實時流量統計資料。

Faucet:開源SDN控制器,實現靈活的流規則實現,將所有網路流量轉發到專門的映象主機。

Argus:審計監聽並記錄所有被監測流的統計資訊。

Neptune:根據時間分批讀取,再根據裝置間唯一流進行預處理,提取並構造相關特徵,以通過IDS。

Argus的選擇除了在速度和儲存空間方面的高水平效能外,還受到所獲流量統計資料的質量的影響。

需要承認的是,流量統計映象技術需要進一步發展,以擴充套件到具有多個交換機的更大網路。

B.ML分類器

入侵檢測實現了一系列ML分類器,如表1所示。

這些模型是在一些基於流的關鍵流量統計資料上訓練的,資料來自Argus,由Neptune進一步處理。Argus特徵包括特定流中的資料包和位元組的數量,以及不同型別連線的狀態標誌。對於SYN flood的分類,Neptune從獲得的流量統計資料中生成新的特徵,並丟棄那些不需要的特徵。最後用於分類的特徵反映了在類似工作中被認為是可用於SYN flood 這種DDoS攻擊檢測重要的特徵,表2列出了這些特徵。

所列出的有狀態特性值的計算是基於字典查詢實現的,以避免多項式時間複雜度(因隨著流量計數的增加,多項式時間複雜度無法很好地擴充套件,這是DDoS攻擊的一個特別考慮因素)。Neptune的整個流程如圖2所示。

C.流量資料集

本工作中,使用來自CICIDS 2017資料集的良性流量。對於惡意流量,我們使用DARPA SYN flood資料集和一系列合成的SYN flood。DARPA flood呈現出SYN包的逐漸增加的速率,生成的攻擊包括速度從10到1,000,000 pps不等,確保惡意資料集包含廣泛的強度。

整個資料集由500萬個資料包組成。資料集中良性流量與惡意流量的比率約為60/40,從兩個集合中提取80/20的訓練/測試資料集,來訓練和評估系統。

四、Neptune效能

使用訓練資料集上的隨機搜尋交叉驗證,對Neptune中的ML分類器進行了調整,以找到最優超引數。在測試資料集上進行分類時,Neptune使用LR和RF演算法獲得了最高的總體分類準確率,準確率為99.79%。這些模型在測試集上同樣表現效果良好,結果見表3和圖3。度量標準:ACC  PR  RE  F1

為了識別每個特徵對分類過程的影響,我們使用遞迴特徵消除(RFE)對特徵的重要性進行排序。RFE結果給出了排名最靠前的幾個重要特徵,這也是基於攻擊行為的預期響應。例如,pair_flow是一對網路主機之間唯一流的數量的比率。由於大多數流量都是單向的,因此在DDoS期間,這個特性就會產生極端值。注意到,在不同的分類器中,排名最高的特徵集是一致的,如表4所示(KNN不支援特徵的重要性)。這些結果表明,對這些特徵進行擾動,將導致對逃逸攻擊成功可能性的較大影響。

本工作的目的不是優化入侵防禦系統,而是實現一個適合對抗攻擊分析的目標平臺。給出了分類精度結果已能夠確認,Neptune為對抗測試提供了一個合適的基線。同時,特徵重要性排序為對抗攻擊分析提供了輸入。

五、對抗攻擊

本研究以逃逸攻擊為重點,量化其對Neptune檢測精度的影響。對抗攻擊的成功與否取決於攻擊者對目標系統的瞭解程度以及他們對網路/系統的物理訪問情況。

可以理解的是,有了更多的系統知識,例如用於分類的特徵知識,就可以簡化成功攻擊的任務。為了產生有意義的結果,必須明確攻擊者的目標和知識。

1.威脅模型(對抗攻擊者概要)

1)攻擊者的目標

意圖實施DDoS等網路攻擊的攻擊者的目標是使攻擊不被察覺,並將對資源可用性造成最大可能損害。為了抵消這種損害,ids必須以最小的FN檢測攻擊(應檢盡檢),以便在檢測的基礎上採取進一步的行動。惡意使用者利用對抗技術的目的是破壞分類器檢測,增加FN,以最大化檢測前的攻擊持續時間。

2)攻擊者的知識

假設攻擊者可以訪問一個網路中的單個主機,而不直接訪問NIDS本身或它使用的分類器,這可以被認為是黑盒攻擊。對手可以對NIDS所使用的分類器做出假設,因為NIDS已經得到了很好的研究,並且通常使用類似的分類器。因此,在DDoS檢測中,如果正確地擾動了非常重要的特徵,那麼無論ML演算法如何,逃逸效果都應該是明顯的。如前所述,本研究重點關注的DDoS攻擊是SYN flood。這種攻擊的特徵是已知的,並有文件記錄,並影響用於檢測的特徵的型別。SYN flood具有典型的有大packet counts和快packet rates的單向通訊。因此,對手的目標是製造一種逃逸,擾亂這些特徵,使其與良性流量相似。

3)攻擊者的能力

攻擊者可以通過改變一些攻擊引數來改變攻擊的外觀。在對分類器使用的特徵並不清楚的情況下,對手仍然可以對通常用於檢測的評估方式進行假設。攻擊者在網路中傳送資料包時,可以直接改變資料包的有效載荷大小、速率和計數等引數。此外,偽造額外流量的技術可能會影響流量特徵,從而掩蓋攻擊。

2.攻擊方式概要

本文提出了通過擾動三種基本SYN flood特徵的組合來設計逃逸攻擊。基於表四的結果,最重要的特徵可以通過改變資料包速率和有效載荷大小,而擾動惡意流量。

不能改變state flag:因為這將改變SYN flood攻擊。

可以改變pair——flow:構造偽雙向流量。

適當改變packet counts:雖然使用更小的該特徵可以逃避檢測,但這將大大削弱攻擊。因此,應保持在適當的水平。

根據本節中描述的對手的知識和能力,提出了三種擾動模型來實現對分類器的逃逸攻擊:

1) payload size 有效載荷的大小:

良性SYN包和攻擊SYN包的大小可以有很大的不同,攻擊包的有效載荷通常比良性SYN包小得多,這為DDoS檢測提供了一個獨特的特徵。因此,調整SYN包的有效載荷大小,以便看起來更類似於良性流量。通過增加資料包的有效載荷進行攻擊,檢測的可信度可能會降低。

2) packet rate 包率:

由於能夠控制攻擊的包速率,可以使用低且慢速的技術,這在基於HTTP的(如Slowloris)和TCP的DDoS中都很常見。但注意,以較慢的速率傳送SYN flood報文,但仍要足夠快,以達到DDoS的預期效果。如果資料包傳送的速度太慢,現實中的目標可能仍能夠處理超時的不完整連線,因為它永遠不會完全被淹沒,這將削弱DDoS攻擊。

3) bidirectional traffic 雙向流量:

DDoS攻擊的一個顯著特徵是大量單向流量集中到一個目的地。攻擊者可以假設IDS使用高單向包計數來檢測SYN flood,類似於Athena的pair_flow特徵。而通過偽造與攻擊包的源和目的相反的流量,將假設出現良性的雙向通訊。然而,這將增加流入網路的攻擊流量,從而帶來更高的風險。

綜上,對Athena和Neptune執行SYN flood攻擊的攻擊者可用的對抗攻擊面不大,只有一些重要的特徵和攻擊特性用於檢測。儘管如此,如果有能擾動如此重要的功能,逃逸的潛力也將更加真實可靠。

六、結果與分析

本節將分析評估所提出的擾動攻擊模型,包括使用單個擾動對分類置信度的影響,以及不同擾動組合相對應的實時檢測結果影響。

1.Hydra對抗性測試工具

Hydra是一款對抗評估工具,為使用者提供了一個介面和平臺來測試他們的ML-NIDS抵抗對抗攻擊的能力。測試框架如圖4所示。

對每個單獨干擾的影響進行了測試,並計算不同演算法的分類置信度。在保持所有其他特徵不變的情況下,僅改變研究的特徵。每個測試包括每個擾動值的20次攻擊,例如:對每個分類器,使用每個不同的有效載荷大小進行20次攻擊。常量值是預設的hping有效負載大小(0位元組),包速率和雙向包速率約為650 pps。結果顯示在圖5中,置信度低於50%被認為是錯誤分類。注意,由於分類器的設計,SVM分類器置信度是不可用的(SVM類的分類結果不能轉換為概率)。當一次僅一個特徵受到干擾時,LR分類器顯示的置信度變化不大。另一方面,RF和KNN結果的變化提供了對這些分類器潛在弱點的洞察。對有效載荷大小的擾動被證明會降低分類器的置信度。較低的SYN flood包速率顯著降低了RF和KNN的分類置信度,而略降低了LR的置信度。這說明分類器用於DDoS攻擊訓練的流量樣本比圖5中測試的流量大。此外,bidirectional traffic的增加,使得RF和KNN置信度降低,說明匹配恆定的SYN flood packet rate可能具有偽裝flood的效果。

在此實驗結果基礎上,我們確定了三個特徵的最佳擾動值,這些值詳列於表5。payload的增加是基於RF置信度趨勢。為了保證DDoS攻擊的有效性,rate被設定為折中值。pairflow將匹配flow rate。擾亂一個特徵並不一定會產生逃逸效果。然而,增加擾動,理論上將降低分類器的置信度。

而為了量化這些干擾的影響,研究選擇了一個基本的SYN flood,所有分類器都能以100%的準確性檢測到。對於每個分類器和特徵擾動組合,執行20次SYN flood 攻擊,Hydra基於Neptune的檢測結果計算總體檢測精度。與初始的置信度測試類似,在測試中沒有受到干擾的特徵都將保持不變。結果如表6和圖6所示。表6的結果反映了只要擾動一個特徵,其他兩個特徵就會被所有分類器賦予足夠高的權重,從而超過異常特徵的重要程度,證明了對NIDS對此種逃逸攻擊的魯棒性。

引入payload+rate擾動的組合也並不影響精度。然而,引入pairflow,再結合另一特徵,將對逃逸攻擊的成功與否造成很大的影響。如表4所示,pair_flow在所有分類器中重要度排名最高。圖6給出了payload+pairflow,rate+pairflow以及三種特徵擾動組合的逃逸結果。

RF和LR在pairflow+payload擾動時都顯得很弱,但當payload沒有改變時(在rate+pairflow的情況下),它們是健壯的。這證實了良性和惡意流量之間可區分有效負載大小的理論。

Neptune NIDS是用惡意DDoS資料包訓練的,相對於CICIDS的良性流量,有效載荷大小更小。因此,增加攻擊報文的payload大小,可以使它變得像良性流量。如第四節所示,SVM擁有最低的TPR,而如圖6所示的結果證實,結合任何其他特徵擾動,它對使用pairflow擾動的攻擊都是表現效果較差的。然而,KNN呈現出與其他分類器不同的趨勢,成功的逃逸僅由rate+pairflow造成。RF、LR和SVM分類器的表現結果證明,如果幹擾了正確的、高度重要的特徵,逃逸攻擊可以在不同的演算法中泛化。此外,儘管KNN分類器在SYN flood檢測中達到了所有測試分類器中最低的分類精度,但對於所提出的逃逸攻擊,它似乎是最健壯的分類器。

七、建議

第六節給出的結果證實,與其他領域類似,對抗攻擊也適用於SDN中基於異常的NIDS。因此,重要的是找到防禦措施,以限制這類攻擊的影響。在ML-NIDS的開發中,通常需要進行特徵選擇/工程階段來調整演算法,以達到儘可能高的檢測精度,我們仍建議這個階段考慮對抗魯棒性的問題。例如,一個多目標優化公式將以最大的檢測精度對抗魯棒性為目標。本文中提出的Hydra工具提供了一個評估分類器的平臺,以確保它在對抗攻擊時足夠健壯。

其次,儘管許多分類器的檢測精度很高,但分類器嚴重依賴於具有擾動潛力的特徵,適合於黑盒攻擊。為了增加攻擊者的攻擊代價,可以考慮在機器學習方法進行整合,如在決策中結合多個分類器的結果。未來的工作也將探索這一點以及相應的攻擊型別。

八、結論

本文的動機是:越來越多的防禦系統利用SDN提供的全球網路可見性,部署ML-NIDS。這些解決方案優先考慮檢測精度而忽略了ML演算法對抗攻擊的潛在漏洞。

對於SYN Flood,實驗結果展示了逃逸攻擊能夠將多個分類器的檢測準確率從100%降低到0%的能力。為了這項研究,我們開發了Hydra對抗測試工具,這是首個提供針對SDN中ML-NIDS的對抗攻擊進行執行和評估的工具。Neptune作為對抗目標,並實現了多個分類器,展示了攻擊泛化的可能性。KNN被證明是針對本研究中進行的對抗攻擊最健壯的分類器,只有一個特徵擾動組合能使其檢測準確率從100%減半到50%。相比之下,RF、LR和SVM通常較容易受到相同的擾動,導致相似的檢測精度下降結果。我們建議在ML-NIDS的開發,研究和工業使用中都採用對抗測試,並將對抗魯棒性作為一種效能度量。

To see I can not see, to know I do not know.