


摘要:傳統的網絡安全檢測技術難以解決新網絡流量無標簽、未知攻擊以及標簽稀缺等問題。為此,將人工智能技術應用到上述場景的網絡安全入侵檢測中,使用無標簽網絡安全檢測方案解決目標網絡域和源網絡域間特征分布不同的問題。針對未知網絡攻擊的問題構建一個未知攻擊網絡安全檢測模型,針對標簽稀缺問題將半監督學習和主動學技術結合起來,構建一種標簽稀缺網絡安全檢測算法。
關鍵詞:網絡安全人工智能入侵檢測數據集
中圖分類號:TP18
ResearchontheApplicationofArtificialIntelligenceTechnologyinNetworkSecurityDetection
GUOLijuan
YiyangOpenUniversity,Yiyang,HunanProvince,413000China
Abstract:Traditionalnetworksecuritydetectiontechnologiesaredifficulttosolvetheproblemsofunlabelednewnetworktraffic,unknownattacksandlabelscarcity.Therefore,artificialintelligencetechnologyisappliedtothenetworksecurityintrusiondetectionofabovescenarios,andunlabelednetworksecuritydetectionsolutionsareusedtosolvetheproblemofthedifferentfeaturedistributionsbetweenthetarget&nb1c2e779a5d5ead574d1f02f54af16e774f364a2f3268528a28fc568c6aefa6efsp;networkdomainandthesourcenetworkdomain.Fortheproblemofunknownnetworkattacks,anetworksecuritydetectionmodelforunknownattacksisconstructed,andfortheproblemoflabelscarcity,semi-supervisedlearningandactivelearningtechniquesarecombinedtoconstructanetworksecuritydetectionalgorithmforlabelscarcity.
KeyWords:Networksecurity;Artificialintelligence;Intrusiondetection;Dataset
隨著云計算、容器等新興技術的發展,計算機網絡攻擊也向著智能化、平臺化發展,傳統的網絡安全技術在檢測新型網絡攻擊行為時通常會存在檢測準確率低、行為特征提取精度差等問題[1]。
入侵檢測是一種網絡安全檢測技術,其目的是通過對網絡流量的分析來檢測到對計算機網絡的非法訪問。入侵檢測系統主要用于檢測計算機網絡中的惡意行為,并盡可能地阻止端口掃描等可能威脅計算機網絡安全的行為。入侵檢測系統通常可以區別來自系統內、外的攻擊,為了達到這一目的,需要對網絡包進行特殊的拆分及組裝操作。
傳統的入侵檢測技術在訓練及測試數據集時都是遵循相同分布的條件建立的,但由于計算機網絡環境復雜多變,即使網絡環境出現細微的改變都會導致已有的入侵檢測模型無法適應[2]。隨著新型網絡攻擊的不斷出現,傳統入侵檢測技術對其也力不從心,對已有惡意樣本提取的特征難以適用于未知或新出現的惡意樣本。因此,無標簽問題或者標簽稀缺問題都是網絡入侵檢測中的難點。
人工智能和網絡技術的結合已經滲透到計算機的各個子領域,將人工智能和網絡入侵檢測技術結合起來勢必能夠解決一些網絡安全領域中存在的安全問題。
1無標簽網絡安全檢測
傳統的網絡安全檢測技術需要一個前提,即訓練數據集與測試數據集需要有相同的特征分布,然而如果網絡環境發生變化傳統的檢測技術將不再適用[3]。為解決這一問題,本文提出一種無標簽網絡安全檢測方案。
1.1數據集及數據處理
無標簽網絡安全檢測方案的目標是解決目標域(新網絡數據)和源域(訓練網絡數據)之間特征分布不同的問題,所以兩個域要使用不同的數據集。本文選擇CICIDS2017數據集和KDD99數據集。
CICIDS2017數據集不僅包含正常的網絡流量,還包括目前常見的攻擊流量,而且附有真實網絡環境中的pcap文件數據,pcap文件數據根據捕獲的數據流打了標簽。本文在檢測過程中發現如果CICIDS2017數據集包含所有攻擊種類可能會發生負遷移現象,因此本文將其分成3個子數據集,每個子數據集包含不同的攻擊類型。KDD99數據集包含大量的攻擊流量,其中的數據都來自真實網絡流量,基本能夠反映真實網絡情況。
CICIDS2017數據集是以pcap文件形式存在的,所以不能直接使用模型進行訓練,需要先對其進行預處理。本文使用基于flow的流量原始特征分類方法[4],將pcap文件中具有相同五元組的網絡包劃分成為一條flow。網絡包中Ethernet層的幾個字段是基于硬件本身特征而不是網絡流量特征,因此本文的數據不使用此層信息;網絡包中網絡層的tcpversion及differentiatedservices字段一般都是固定的,對網絡包分類并無幫助,所以本文僅使用網絡層的其余字段。這樣一來每條flow就能夠提取到具有41個特征維度進行后續檢測。
網絡流量的原始數據中含有影響安全檢測精度的噪聲,因此需要經過均值移除、范圍縮放以及歸一化預處理。其中均值移除會把每個樣本數據的特征值減去樣本所有特征的均值,其作用是消除不同數據樣本特征間的偏差;范圍縮放把不同單位的樣本特征按照比例進行放大或縮小,以削弱不同樣本特征間大幅度變化產生的檢測精度影響;歸一化作用是統一所有樣本特征的統計分布,從而消除奇異樣本產生的誤差。
1.2檢測模型
假設已經標記標簽的源域網絡流量數據集DS的特征輸入為XS,對應的標簽集合YS,目標域網絡流量數據集DT的特征輸入為XT,對應樣本標簽未知。由于源域網絡和目標域網絡的特征分布不同,因此無法通過訓練源域模型來進行目標域的網絡安全檢測。本文的解決思路是找到一個數學變換,使得源域流量數據可以近似轉換為目標域流量數據,這樣就可以借助源域網絡流量數據及對應的標簽得到的分類器對目標域網絡流量數據進行分類,從而檢測其中的異常網絡流量,這種網絡安全入侵檢測模型流程如圖1所示。
源域到目標域數學變換的本質就是找到二者特征分布之間的最小距離,根據劉莉[5]的研究,本文使用如下變換公式:
其中n1和n2分別是源域和目標域網絡的樣本數。
如此一來,計算出源域和目標域特征分布之間的最小距離,就可以借助源域訓練好的分類器對目標域無標簽數據進行網絡異常流量檢測。
2未知攻擊網絡安全檢測
目前還沒有專門針對未知網絡攻擊的有效數據集,為有效檢測未知網絡攻擊,本文使用CICIDS2017數據集與CTU數據集構造專門用于未知網絡攻擊的數據集,來構建一個未知攻擊網絡安全檢測模型——NewCNN。
2.1數據集及數據處理
CTU網絡流量數據集中包含了大量的攻擊流量,其目標是對混雜了正常流量的異常流量網絡進行大規模捕獲。此數據集中包含了若干不同的異常流量樣本場景,如果某網絡訪問行為符合特定場景就可以認為是存在惡意入侵行為。
本文隨機選擇CPU數據集中的正常流量以及8種類型的攻擊,作為訓練NewCNN模型的已知類,CPU數據集中其他未被選擇的攻擊被視為未知攻擊。另外,為增加攻擊來源還選擇了CICIDS2017數據集中的4種攻擊類型作為未知攻擊。為保證NewCNN模型評估結果的客觀性,在進行實驗前對未知攻擊進行了下采樣處理。
數據預處理時也采用基于flow的流量原始特征分類方法,先將具有相同五元組的網絡包劃分到一個flow,再借助splitcap切分flow,然后從中提取原始流量特征。實驗中發現流量特征轉換為40×40的灰度圖時,能夠最大程度地區分不同流量,因此本文選擇將流量特征轉換為40×40的灰度圖進行可視化處理。
2.2檢測模型
NewCNN模型的基本思想是借助已知的正常網絡流量和攻擊流量數據來訓練模型,并將訓練數據集中從未出現的未知攻擊樣本劃分成未知類。由于未知流量的標簽向量無法包含所有的未知類別,因此就需要設置一個閾值并將超過此閾值的流量標記為入侵流量。威布爾(Weibull)分布滿足數據未知類型多樣性的情形,這完全滿足入侵檢測的場景。
NewCNN模型實際上是一個M+1的類分類模型,也就是通過M個已知訓練類來得到1個未知類。模型中使用了兩個卷積層對原始數據進行特征提取,第一層采用5×5的卷積核,第二層采用3×3的卷積核,然后連接了兩個全連接層。為了防止在檢測過程中出現過擬合,模型中還使用dropout操作使全連接層的部分神經元失活。最后,將威布爾分布應用到最后一層全連接層的激活向量,并使用OpenMax函數輸出包含未知類別攻擊流量的概率。NewCNN模型用于未知攻擊網絡流量檢測的過程如圖2所示。
在對NewCNN模型和傳統的CNN模型對未知攻擊的檢測進行比對后,得到如表1所示的檢測準確度結果。
從表1可以明顯看出,和傳統CNN模型相比,NewCNN模型的檢測準確度有了明顯提高。
3標簽稀缺網絡安全檢測
目前對于網絡流量中樣本稀缺問題通常的解決方案是借助半監督學習或者主動學習技術,其中半監督學習無須人工標注,直接使用學習器自動對未標注樣本進行標注即可;主動學習會根據一定標準挑選出信息量最豐富的樣本進行人工標注。本文將半監督學習和主動學技術結合起來,構建一種標簽稀缺網絡安全檢測算法。
主動學習的目標是僅從目標域的所有未標記樣本中選擇信息量高的樣本進行人工標注,從而以更低的人工標記成本實現較高的檢測性能;半監督學習的思想是借助訓練集中有標簽數據訓練出的模型對無標簽數據打標簽(偽標簽),然后將這樣的偽標簽作為訓練集的一部分繼續訓練,直到沒有無標簽數據。基于主動學習和半監督學習的思路,本文構建的標簽稀缺網絡安全檢測算法主要步驟是:(1)使用主動學習技術進行標注時,首先為主動學習設置一個樣本挑選閾值下限,然后僅對分類預測概率最大和第二大的差值小于閾值下限的樣本進行打標簽操作,不滿足閾值的樣本直接丟棄;(2)半監督學習設置閾值上限,將上一步人工標記的樣本作為新的有標記數據,所有的有標簽數據重新進行訓練;(3)有標簽數據從未標記樣本集中刪除;(4)迭代上述過程,直到不存在無標簽數據。
實際檢測時本文選擇CICIDS2017數據集和CTU數據集,共進行了3種類型的實驗:(1)使用主動學習算法,選擇滿足最小閾值的信息量豐富的樣本,然后對測試集檢測;(2)使用半監督學習算法,選擇預測概率滿足閾值的樣本和對應的偽標簽進行檢測;(3)使用本文提出的集合了主動學習和半監督學習的檢測算法,共同從未標記樣本中選擇樣本進行檢測。通過對比這3種類型實驗的結果發現,結合了主動學習和半監督學習的標簽稀缺網絡安全檢測算法在準確率、精確度以及召回率上都比傳統的檢測算法具有更好的效果。
4結語
本文將人工智能技術應用到網絡安全入侵檢測中,針對新的網絡流量數據沒有標簽、標簽數據稀缺以及未知網絡攻擊的問題,分別提出對應的檢測方案,使用基于人工智能的網絡安全檢測技術,解決了異構網絡間的異常檢測;在標簽數據稀缺時融合了主動學習和半監督學習技術,能夠顯著提高入侵檢測的效果。
參考文獻
[1]王皓陽.基于區塊鏈技術的網絡數據安全治理探究[J].網絡空間安全,2024(2):113-117.
[2]孫瑜.基于大數據及人工智能技術的計算機網絡安全防御系統設計分析[J].網絡安全和信息化,2024(2):143-145.
[3]耿倩.人工智能技術在大數據網絡安全防御中的運用研究[J].網絡安全技術與應用,2023(12):164-166.
[4]樊華.人工智能技術在大數據網絡安全防御中的應用[J].中國高新科技,2023(11):50-52.
[5]劉莉.基于人工智能技術的計算機網絡安全防御系統設計[J].辦公自動化,2023(6):19-21.