呂廣旭,盧加奇,魏先燕,王小英
(防災(zāi)科技學(xué)院,河北 三河 065201)
隨著技術(shù)手段的不斷更新,傳統(tǒng)的防御模型已無(wú)法應(yīng)對(duì)當(dāng)前復(fù)雜多變的網(wǎng)絡(luò)攻擊技術(shù),以防火墻為首的防御手段正在失去“防火墻”的作用,攻擊方逃逸率不斷增加,它們往往采取多種攻擊方式結(jié)合的手段進(jìn)行,這使得精準(zhǔn)防御逐漸變得力不從心。
隨著機(jī)器學(xué)習(xí)技術(shù)的不斷興起,防火墻防御技術(shù)、入侵檢測(cè)技術(shù)等有了較大進(jìn)步,但仍有較大的提升空間,防御攻擊能力相對(duì)較弱。網(wǎng)絡(luò)攻擊的復(fù)雜多變成為新攻擊下網(wǎng)絡(luò)安全問題不斷嚴(yán)峻的新方向。一方面基于有監(jiān)督的入侵檢測(cè)方法嚴(yán)重依賴樣本數(shù)據(jù),樣本數(shù)據(jù)分布是否合理、數(shù)據(jù)的質(zhì)量成為有監(jiān)督入侵檢測(cè)方法應(yīng)用過(guò)程中的重要一環(huán)。在數(shù)據(jù)量巨大網(wǎng)絡(luò)環(huán)境中,數(shù)據(jù)良莠的認(rèn)定成為制約有監(jiān)督學(xué)習(xí)的另一關(guān)鍵問題,對(duì)于數(shù)據(jù)的標(biāo)簽處理各行業(yè)很難有統(tǒng)一的處理方式,導(dǎo)致效果未能滿足要求。為此,基于無(wú)監(jiān)督的入侵檢測(cè)方法應(yīng)運(yùn)而生,無(wú)監(jiān)督檢測(cè)方法摒棄對(duì)樣本標(biāo)簽數(shù)據(jù)的依賴,減少人力資源的消耗,提升了檢測(cè)手段的實(shí)用價(jià)值,成為解決入侵檢測(cè)重點(diǎn)問題的關(guān)鍵抓手。
用于入侵檢測(cè)方面的無(wú)監(jiān)督方法獲得了大量的關(guān)注和研究,為后續(xù)研究提供大量的理論基礎(chǔ)。2018年,楊文君等人對(duì)于K-means聚類方法在密度、距離和閾值等方面進(jìn)行了分類分析,對(duì)于各類應(yīng)用場(chǎng)景分別進(jìn)行了詳細(xì)闡述。此外針對(duì)聚類方法容易陷入局部最優(yōu)等實(shí)質(zhì)性問題,邢瑞康等人使用數(shù)據(jù)密度等信息改進(jìn)中心點(diǎn)依賴弊端,顯著提高檢測(cè)效果。入侵檢測(cè)的數(shù)據(jù)往往是高維且復(fù)雜的,應(yīng)對(duì)高緯度環(huán)境下壓縮降維難題對(duì)于傳統(tǒng)聚類方法難以保證檢測(cè)準(zhǔn)確率。2020年,解濱等人結(jié)合三支決策思想對(duì)傳統(tǒng)聚類方法進(jìn)行改進(jìn),消除K值對(duì)于聚類效果的限制影響,通過(guò)二次聚類手段重新劃分,此方法在多攻擊行為場(chǎng)景下表現(xiàn)優(yōu)異。董新玉等人引入多視角余弦相似度作為衡量手段使用主成分分析對(duì)數(shù)據(jù)進(jìn)行降維處理,克服有監(jiān)督學(xué)習(xí)漏檢率高等難題。
目前入侵檢測(cè)方法存在以下關(guān)鍵問題:
一是傳統(tǒng)數(shù)據(jù)降維方式中涉及較多的方式為主成分分析和線性判別分析。無(wú)論是作為無(wú)監(jiān)督的主成分分析方法,還是相比較主成分分析具有較優(yōu)的降維效果的線性判別方法而言,都容易存在過(guò)擬合的缺點(diǎn)。但不論是降維還是特征選擇的方式,對(duì)原始數(shù)據(jù)的壓縮和特征減少會(huì)對(duì)原始數(shù)據(jù)的表示存在損耗。因此還會(huì)出現(xiàn)損耗過(guò)大的情況導(dǎo)致誤報(bào)率較高。
二是傳統(tǒng)聚類方法存在局部最優(yōu)、漏檢率高、難以應(yīng)對(duì)高維復(fù)雜攻擊數(shù)據(jù)等主要問題,聚類算法將直接影響聚類效果的好壞。
針對(duì)上述問題,適應(yīng)高維大數(shù)據(jù)檢測(cè),本文使用隨機(jī)森林方法對(duì)于數(shù)據(jù)進(jìn)行特征篩選以提供數(shù)據(jù)降維支撐,將特征篩選結(jié)果提供聚類方法實(shí)現(xiàn)多分類入侵檢測(cè)效果。將改進(jìn)算法應(yīng)用于入侵檢測(cè)分析中,其顯著提升無(wú)監(jiān)督聚類條件下多維數(shù)據(jù)的聚類效果,提升檢測(cè)準(zhǔn)確率。
本文使用隨機(jī)森林-聚類混合方法對(duì)于入侵檢測(cè)數(shù)據(jù)進(jìn)行分析,該方法包括兩部分組成。
模型前半部分主要利用隨機(jī)森林方法對(duì)入侵檢測(cè)數(shù)據(jù)集進(jìn)行特征篩選,對(duì)高維度數(shù)據(jù)進(jìn)行降維,在盡可能最大化保留原始數(shù)據(jù)信息情況下,將數(shù)據(jù)維度降至最低。模型后半部分接受降維后的數(shù)據(jù)作為輸入,使用基于改進(jìn)的Canopy+K-means混合聚類方法對(duì)于數(shù)據(jù)集進(jìn)行多分類劃分研究。
由于網(wǎng)絡(luò)流量數(shù)據(jù)的高維性,導(dǎo)致單獨(dú)聚類方法對(duì)于入侵檢測(cè)的分類效果不佳,模型的泛化能力較差。就需要前期對(duì)數(shù)據(jù)進(jìn)行壓縮降維處理,使提取的特征數(shù)據(jù)能夠保留原始數(shù)據(jù)的大部分信息的前提下,對(duì)聚類效果進(jìn)行一個(gè)更優(yōu)的表達(dá)。本文使用隨機(jī)森林方法對(duì)數(shù)據(jù)特征進(jìn)行篩選。
隨機(jī)森林篩選特征結(jié)構(gòu)如圖1所示,該方法將多個(gè)有監(jiān)督學(xué)習(xí)模型通過(guò)一定的結(jié)合策略實(shí)現(xiàn)一個(gè)能力更加優(yōu)秀的學(xué)習(xí)器。隨機(jī)森林則是以決策樹為單元?jiǎng)澐侄鄠€(gè)單元模塊分別進(jìn)行決策,通過(guò)投票選擇出最優(yōu)的分類組合?;陔S機(jī)森林的特征篩選過(guò)程則是利用隨機(jī)森林基于決策樹分析的這一核心思想,通過(guò)每個(gè)單元可以將特征在決策樹上進(jìn)行劃分,對(duì)比特征對(duì)于每個(gè)樹的貢獻(xiàn)程度通常是以袋外數(shù)據(jù)錯(cuò)誤率作為評(píng)價(jià)指標(biāo),對(duì)特征進(jìn)行選取從而達(dá)到特征篩選的目的。隨機(jī)森林因?yàn)殡S機(jī)選取初始特征性質(zhì)以及強(qiáng)大收斂性,相比較于單個(gè)決策時(shí)進(jìn)行分析時(shí),更加適應(yīng)高維數(shù)據(jù)的處理,很好避免過(guò)擬合現(xiàn)象發(fā)生。
圖1 隨機(jī)森林篩選特征結(jié)構(gòu)圖
傳統(tǒng)的K-means聚類方法存在以下缺點(diǎn):
(1)由于中心點(diǎn)的不確定性,導(dǎo)致簇內(nèi)聚合質(zhì)量較差,反映到入侵檢測(cè)方面產(chǎn)生的直接后果影響就是具有較大的錯(cuò)誤分類數(shù),對(duì)于各攻擊的劃分非常不明確。
(2)另一方面由于聚類數(shù)據(jù)量較大,使用聚類方法計(jì)算迭代的次數(shù)也愈來(lái)愈大,導(dǎo)致分析時(shí)間延長(zhǎng)。
由缺點(diǎn)進(jìn)而演化出多種基于傳統(tǒng)K-means聚類方法的改進(jìn)方法,從密度和距離計(jì)算方式等方面進(jìn)行改進(jìn),極大提高了K-means聚類方法的效果。本文使用Canopy+K-means混合算法作為改進(jìn)方法,為克服K值選取的困擾,可先用Canopy算法對(duì)所選數(shù)據(jù)進(jìn)行一個(gè)初期的聚類研究,根據(jù)Canopy算法的結(jié)論然后對(duì)K-means算法中的K值進(jìn)行一個(gè)選取,這樣既可以減少K值選取的極大不確定性,也可以減少開銷時(shí)間。Canopy算法原理如下:
(1)將原始數(shù)據(jù)轉(zhuǎn)換成列表形式作為樣本數(shù)據(jù),并設(shè)定初始閾值S1和S2且S1>S2。
(2)從列表數(shù)據(jù)中隨機(jī)選取樣本P,計(jì)算樣本數(shù)據(jù)到所有簇中心點(diǎn)的距離D。
(3)如果D>S1,則形成一個(gè)新簇,將P作為新簇中心點(diǎn)并將P從列表中刪除。
(4)如果S2<D<S1,則判斷該樣本屬于該簇并將其從列表中刪除。
(5)如果D<S2,則該點(diǎn)于該簇中心距離相當(dāng)近屬于強(qiáng)相關(guān),并將其從列表中刪除。
(6)直至列表為空結(jié)束循環(huán)。
為驗(yàn)證隨機(jī)森林-聚類混合方法的多分類入侵檢測(cè)方法的應(yīng)用效果,本文采用數(shù)據(jù)為CSE-CIC-IDS2018流量數(shù)據(jù)集,該數(shù)據(jù)集主要用于評(píng)估和測(cè)試入侵檢測(cè)系統(tǒng),包括Bruteforce、Heartbleed、Botnet、DoS、DDoS等七種攻擊場(chǎng)景,由470臺(tái)計(jì)算機(jī)和30臺(tái)服務(wù)器組成的攻防網(wǎng)絡(luò)中。該流量數(shù)據(jù)集包含正向數(shù)據(jù)包總數(shù)、數(shù)據(jù)包平均大小、在向后方向傳輸?shù)臄?shù)據(jù)包中設(shè)置 URG 標(biāo)志的次數(shù)(對(duì)于UDP為0)、數(shù)據(jù)流的平均長(zhǎng)度等共80多個(gè)特征。
實(shí)驗(yàn)環(huán)境為L(zhǎng)INUX操作系統(tǒng),Intel CPU、RTX3090 GPU,64 GB內(nèi)存,運(yùn)行環(huán)境為Python3.6。
為了驗(yàn)證聚類方法在數(shù)據(jù)集上的實(shí)驗(yàn)效果,本文采用調(diào)整互信息(AMI)、調(diào)整蘭德系數(shù)(ARI)和準(zhǔn)確率三個(gè)做為聚類方法“外部”和“內(nèi)部”性能度量的評(píng)價(jià)指標(biāo)。具體如下:
(1)調(diào)整互信息是基于互信息的優(yōu)化,用于評(píng)價(jià)隨機(jī)變量之間的關(guān)聯(lián)信息,調(diào)整互信息值越大則表明聚類結(jié)果和實(shí)際分類結(jié)果越相近。
(2)ARI調(diào)蘭德系數(shù)是基于蘭德系數(shù)的優(yōu)化,評(píng)價(jià)隨機(jī)變量之間的劃分的重疊程度,結(jié)果越接近1,則聚類結(jié)果越優(yōu)秀。
(3)準(zhǔn)確率為正確聚類樣本數(shù)/入侵檢測(cè)樣本數(shù)。
使用數(shù)據(jù)集對(duì)于首先對(duì)于隨機(jī)森林-聚類混合方法進(jìn)行分析,并對(duì)比單獨(dú)K-means方法、Agglomerative層次聚類、DBSCAN密度聚類方法進(jìn)行對(duì)比實(shí)驗(yàn),對(duì)比不同方法期望驗(yàn)證提出方法的有效性。首先用ids2018數(shù)據(jù)進(jìn)行分析,用于隨機(jī)森林算法對(duì)于數(shù)據(jù)特征進(jìn)行篩選,使用重采樣方法將數(shù)據(jù)進(jìn)行劃分,對(duì)于特征重要性進(jìn)行排序。
首先對(duì)數(shù)據(jù)集進(jìn)行預(yù)處理,將無(wú)效數(shù)據(jù)和空數(shù)據(jù)進(jìn)行替換和刪除,同時(shí)發(fā)現(xiàn)部分?jǐn)?shù)據(jù)集的特征值全為零值,對(duì)聚類方法效果無(wú)影響,因此刪除這些特征。使用隨機(jī)森林作用于數(shù)據(jù)集進(jìn)行特征篩選后的結(jié)果如表1所示,我們選取閾值大于0.02為有效特征,共計(jì)15個(gè)特征作為后續(xù)聚類分析的輸入。
表1 有效特征及重要性
使用Canopy進(jìn)行粗聚類研究,根據(jù)指標(biāo)調(diào)蘭德系數(shù)分析,當(dāng)聚類數(shù)在7~8之間時(shí),系數(shù)值高于其他聚類數(shù),如圖2所示。與數(shù)據(jù)集描述七種攻擊場(chǎng)景和一種正常環(huán)境也相符合,因此選取初始值為8。
圖2 Canopy不同簇?cái)?shù)下的ARI值
將聚類K值給定K-means聚類方法進(jìn)行聚類分析,并對(duì)比不同聚類方法的實(shí)驗(yàn)效果,實(shí)驗(yàn)效果如表2所示。
表2 不同算法在數(shù)據(jù)集上的實(shí)驗(yàn)效果
實(shí)驗(yàn)結(jié)果表明,傳統(tǒng)聚類方法在2018檢測(cè)數(shù)據(jù)集中檢測(cè)效果差距不大,其中層次聚類方法相較于K-means方法和DBSCAN檢測(cè)方法,在各項(xiàng)指標(biāo)表現(xiàn)較優(yōu),改進(jìn)后的隨機(jī)森林-聚類混合方法在入侵檢測(cè)數(shù)據(jù)集表現(xiàn)各項(xiàng)指標(biāo)均優(yōu)于傳統(tǒng)聚類方法,相對(duì)于傳統(tǒng)方法中表現(xiàn)優(yōu)越的層次聚類方法,準(zhǔn)確率提升了19.6%,同時(shí)AMI和ARI指標(biāo)均大幅度改善,表明該方法簇內(nèi)和簇間的聚類劃分能力強(qiáng),極大改善了傳統(tǒng)入侵檢測(cè)方法的檢測(cè)效果。
入侵檢測(cè)是防御網(wǎng)絡(luò)攻擊中重要一環(huán),為了解決傳統(tǒng)聚類檢測(cè)方法誤報(bào)率較高,難以應(yīng)對(duì)高維數(shù)據(jù)分析等關(guān)鍵難題,本文提出一種基于隨機(jī)森林-聚類混合方法的多分類入侵檢測(cè)方法,該方法基于CSE-CIC-IDS2018流量數(shù)據(jù)集,使用隨機(jī)森林進(jìn)行特征篩選和組合,然后將篩選后的特征輸入聚類算法中,該聚類方法結(jié)合Canopy和K-means算法進(jìn)行,可大幅度減少開銷時(shí)間,使K值確定更加準(zhǔn)確,先用Canopy算法對(duì)于數(shù)據(jù)進(jìn)行粗聚類為K值大小提供參考依據(jù),然后使用K-means聚類方法進(jìn)行多聚類劃分。實(shí)驗(yàn)結(jié)果表明,該方法能夠有效處理高維數(shù)據(jù)環(huán)境下入侵檢測(cè)數(shù)據(jù),相比較于傳統(tǒng)聚類方法,各項(xiàng)指標(biāo)更高,檢測(cè)效果更加優(yōu)越。