亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于改進(jìn)單類支持向量機(jī)的工業(yè)控制網(wǎng)絡(luò)入侵檢測(cè)方法

        2018-07-25 07:41:32劉萬軍秦濟(jì)韜曲海成
        計(jì)算機(jī)應(yīng)用 2018年5期
        關(guān)鍵詞:離群分類器聚類

        劉萬軍,秦濟(jì)韜,曲海成

        (遼寧工程技術(shù)大學(xué)軟件學(xué)院,遼寧葫蘆島125105)

        (*通信作者電子郵箱lgc_qinjitao@sina.com)

        0 引言

        目前,大部分關(guān)鍵的基礎(chǔ)設(shè)施和工業(yè)系統(tǒng),例如石油天然氣管道、自來水處理系統(tǒng)、水庫閥門控制、電力電網(wǎng)以及核電廠等,都通過監(jiān)控和數(shù)據(jù)采集系統(tǒng)(Supervisory Control And Data Acquisition,SCADA)來控制[1]。這些系統(tǒng)允許遠(yuǎn)程監(jiān)控,并為地理上分散的設(shè)施提供遠(yuǎn)程訪問和控制,這使得這些設(shè)施中的運(yùn)營(yíng)商能夠?qū)崟r(shí)監(jiān)控和控制整個(gè)系統(tǒng),而這種控制網(wǎng)絡(luò)對(duì)外是完全封閉的。隨著工業(yè)控制系統(tǒng)和計(jì)算機(jī)網(wǎng)絡(luò)的發(fā)展,為了方便對(duì)工業(yè)生產(chǎn)過程進(jìn)行控制,工控組態(tài)網(wǎng)絡(luò)與IT網(wǎng)絡(luò)結(jié)合起來,工業(yè)控制網(wǎng)絡(luò)(以下簡(jiǎn)稱工控網(wǎng)絡(luò))就變成了完全開放或者半開放的網(wǎng)絡(luò);但是,工控網(wǎng)絡(luò)缺乏相應(yīng)的防護(hù)措施和安全機(jī)制,因此近些年來對(duì)于工業(yè)控制設(shè)備的攻擊越來越多,特別是2010年伊朗震網(wǎng)病毒的爆發(fā)[1],暴露出工控網(wǎng)絡(luò)中存在的重大缺陷,同時(shí),給網(wǎng)絡(luò)入侵檢測(cè)帶來了新的難題和挑戰(zhàn)。

        網(wǎng)絡(luò)入侵檢測(cè)主要完成以下功能:識(shí)別入侵者,識(shí)別入侵行為,檢測(cè)和監(jiān)視已經(jīng)成功的安全突破,提供重要的安全信息。在入侵檢測(cè)方法上工控網(wǎng)絡(luò)與計(jì)算機(jī)網(wǎng)絡(luò)相比沒有本質(zhì)區(qū)別,它們都是通過收集和分析網(wǎng)絡(luò)行為、安全日志、審計(jì)數(shù)據(jù)、其他網(wǎng)絡(luò)上可以獲得的信息以及計(jì)算機(jī)系統(tǒng)中若干關(guān)鍵點(diǎn)的信息,檢查網(wǎng)絡(luò)或系統(tǒng)中是否存在違反安全策略的行為和被攻擊的跡象[2-3]。目前,大部分入侵檢測(cè)的工作都是基于正常網(wǎng)絡(luò)數(shù)據(jù)流量的特性來建立異常檢測(cè)模型,而單分類方法在計(jì)算機(jī)網(wǎng)絡(luò)入侵檢測(cè)中獲得了廣泛的關(guān)注[4-6],而且取得了比較好的檢測(cè)效果。

        工業(yè)網(wǎng)絡(luò)入侵檢測(cè)的研究并沒有成熟的理論體系,因此,現(xiàn)在與工控網(wǎng)絡(luò)入侵檢測(cè)的研究大部分采用傳統(tǒng)網(wǎng)絡(luò)入侵檢測(cè)的方法。在單分類方法中,單分類支持向量機(jī)(One-Class Support Vector Machine,OCSVM)廣泛應(yīng)用于異常檢測(cè)中[5-6],但是OCSVM應(yīng)用于異常檢測(cè)時(shí),無法克服內(nèi)部異常點(diǎn)和離群點(diǎn)對(duì)決策函數(shù)產(chǎn)生影響的缺陷:2015年,尚文利等[5]使用粒子群優(yōu)化(Particle Swarm Optimization,PSO)算法自動(dòng)尋找OCSVM算法的參數(shù),并建立入侵檢測(cè)模型,但是該方法沒有解決OCSVM易受到孤立點(diǎn)的影響而且無法檢測(cè)內(nèi)部異常點(diǎn)的問題;Bartman等[7]介紹了如何將網(wǎng)絡(luò)入侵檢測(cè)方法與SCADA(Supervisory Control And Data Acquisition)網(wǎng)絡(luò)結(jié)合,完成工業(yè)入侵檢測(cè)的任務(wù),同時(shí)也討論了工業(yè)網(wǎng)絡(luò)攻擊者的攻擊方式以及工業(yè)網(wǎng)絡(luò)的脆弱性;萬明等[8]研究了Modbus/TCP協(xié)議中的功能碼特性。利用深度包解析技術(shù)(Deep Packet Inspection,DPI)解析協(xié)議中的功能碼,然后利用模式匹配的方法進(jìn)行規(guī)則匹配,以判斷異?;蛘?,利用規(guī)則的入侵檢測(cè)實(shí)時(shí)性高,能夠檢測(cè)出部分攻擊,但是僅僅利用功能碼解析,反而產(chǎn)生了漏報(bào)行為;Kim等[9]利用了分層誤用檢測(cè)和異常檢測(cè)相互結(jié)合的入侵檢測(cè)方法,該算法使用C4.5構(gòu)建誤用檢測(cè)模型,將正常訓(xùn)練數(shù)據(jù)分成多個(gè)子集,然后使用子集數(shù)據(jù)創(chuàng)建多個(gè)OCSVM模型,該過程雖然避免了內(nèi)部異常點(diǎn)檢測(cè)的難題,但孤立點(diǎn)對(duì)OCSVM的影響卻沒有消除;吳麗云等[10]利用偏最小二乘回歸(Partial Least Squares Regression,PLSR)提取數(shù)據(jù)主成分進(jìn)行特征選擇,構(gòu)造數(shù)據(jù)集,并考慮到支持向量機(jī)(Support Vector Machine,SVM)算法不適用于大樣本數(shù)據(jù)的缺陷,利用SVM在大規(guī)模數(shù)據(jù)上的改進(jìn)核向量機(jī)(Core Vector Machine,CVM)算法,構(gòu)造網(wǎng)絡(luò)入侵檢測(cè)模型。實(shí)驗(yàn)結(jié)果表明,該方法具有較高的精確率、較低的誤報(bào)和漏報(bào)率以及較高的實(shí)時(shí)性,避免了孤立點(diǎn)的影響,但是忽略了內(nèi)部異常點(diǎn)導(dǎo)致的檢測(cè)精度不高的問題。

        為了避免OCSVM對(duì)孤立點(diǎn)敏感的缺點(diǎn)以及內(nèi)部異常點(diǎn)無法檢測(cè)的問題,本文主要從單分類支持向量機(jī)(OCSVM)入手,結(jié)合工控網(wǎng)絡(luò)入侵檢測(cè)的背景,提出了一種基于具有噪聲的密度聚類(Density-Based Spatial Clustering of Applications with Noise,DBSCAN)和K-means聚類與OCSVM算法的組合入侵檢測(cè)方法(DBSCAN K-means One-Class-Support-Vector-Machine,DKOCSVM)來滿足工控網(wǎng)絡(luò)中異常檢測(cè)的需求。

        1 單分類支持向量機(jī)在入侵檢測(cè)中的應(yīng)用

        單分類支持向量機(jī)(OCSVM)算法是SVM在單類分類方面的一種改進(jìn)[12-13]。它在小樣本下存在最好的分類效果和泛化能力;同樣利用了核函數(shù)的方法解決數(shù)據(jù)線性不可分的問題,避免了直接計(jì)算高維空間映射的難題[14-15]。

        OCSVM最大化樣本點(diǎn)和原點(diǎn)之間的距離,以此構(gòu)建超平面[15]。在原點(diǎn)至超平面一側(cè)的數(shù)據(jù)被劃分為一類,超平面外層的被劃分為另一類,圖1給出了OCSVM二維空間中的一個(gè)示例。在圖中,OCSVM為單類別數(shù)據(jù)構(gòu)建模型,來區(qū)分出原點(diǎn)和數(shù)據(jù)樣本。

        OCSVM算法通過單類數(shù)據(jù)集D={x1,x2,…,xn}構(gòu)建決策函數(shù)f(x)=ωTφ(x)-ρ,其中ω為f(x)的法向量,ρ為偏移項(xiàng),φ(x)是樣本在高維空間中的映射。為了將樣本點(diǎn)與原點(diǎn)盡可能分離,OCSVM被簡(jiǎn)化為求解如式(1)的二次規(guī)劃問題。

        其中,εi變量是為了避免函數(shù)過擬合,在目標(biāo)函數(shù)中加入的懲罰項(xiàng),也可以稱作松弛變量;n是訓(xùn)練數(shù)據(jù)集的大小;v則是正則化參數(shù),通常取值范圍為[0,1]。顯然,式(1)是一個(gè)凸二次規(guī)劃問題。為解決式(1)中模型,利用拉格朗日乘數(shù)法,構(gòu)造出的拉格朗日函數(shù)具有如下形式:

        αi和 γi均為拉格朗日乘數(shù)。令式(2)對(duì) ρ、εi、ω 的偏導(dǎo)數(shù)均為0,將這些關(guān)系代入式(2)中,最終可以得到式(1)的對(duì)偶問題(3)。其中,k(xi,xj)表示核函數(shù),引入該函數(shù)是為了解決低維數(shù)據(jù)線性不可分的問題。

        利用OCSVM方法進(jìn)行新樣本的檢測(cè)時(shí),決策函數(shù)通過核函數(shù)可以轉(zhuǎn)化為如下形式:

        當(dāng)f(x)≥0時(shí),該樣本被認(rèn)為是正常樣本,即位于訓(xùn)練數(shù)據(jù)集一側(cè);當(dāng)f(x)<0時(shí),樣本被判定為超平面和原點(diǎn)之間的異常值。

        圖1 OCSVM在二維空間中的分類原理Fig.1 Classification principle of OCSVM in two-dimensional space

        2 K-means聚類

        K-means算法對(duì)需要進(jìn)行聚類的數(shù)據(jù)有一個(gè)基本假設(shè):在每一個(gè)聚類簇中存在類中心點(diǎn),使得該類簇中的所有樣本點(diǎn)到該中心點(diǎn)的距離最小(https://en.wikipedia.org/wiki/K-means_clustering)。K-means聚類方法本質(zhì)上解決的是一個(gè)最小化聚類誤差的優(yōu)化問題。該聚類誤差如式(5)表示:

        當(dāng)滿足聚類誤差最小時(shí),此時(shí)的聚類被認(rèn)為具有最高的類內(nèi)樣本相似度并具有最優(yōu)的聚類結(jié)果。通過以下的迭代步驟可以尋找滿足聚類誤差最小條件下的聚類結(jié)果:1)生成初始聚類中心;2)計(jì)算樣本點(diǎn)到這些中心的距離,距離相近的歸為一類;3)重復(fù)上述過程,直到終止約束。

        K-means聚類算法通過最小化類內(nèi)誤差確定類別,因此可以保證類內(nèi)高聚合性;當(dāng)數(shù)據(jù)分布密集時(shí)聚類效果很好;但是,K-means聚類算法效果與聚類初始中心相關(guān),而且孤立點(diǎn)和噪聲點(diǎn)會(huì)干擾聚類的過程,導(dǎo)致聚類不準(zhǔn)確。

        3 基于密度的聚類(DBSCAN聚類)

        DBSCAN是一種基于密度的空間聚類算法(https://en.wikipedia.org/wiki/DBSCAN)。通常,密度聚類算法從樣本密度的角度來考慮樣本之間的關(guān)系,并且基于密度連通性,樣本不斷擴(kuò)展聚類簇以獲得最終的聚類結(jié)果。

        對(duì)于數(shù)據(jù)集D={x1,x2,…,xn},DBSCAN的目標(biāo)是將上述數(shù)據(jù)集D分成k個(gè)類別以及噪聲點(diǎn)的集合。該算法有2個(gè)重要參數(shù):考察密度時(shí)的鄰域半徑Eps和定義核心點(diǎn)時(shí)候的閾值MinPts。DBSCAN算法將所有分成3種點(diǎn):核心點(diǎn)(在半徑Eps大小內(nèi)含有超過MinPts數(shù)目的點(diǎn))、邊界點(diǎn)(在半徑Eps內(nèi)點(diǎn)的數(shù)量小于MinPts,但是落在核心點(diǎn)的鄰域內(nèi))和噪聲點(diǎn)(既不是核心點(diǎn)也不是邊界點(diǎn))。

        直觀上講,核心點(diǎn)對(duì)應(yīng)著數(shù)據(jù)稠密區(qū)域的點(diǎn)集,邊界點(diǎn)是核心點(diǎn)區(qū)域邊界上的點(diǎn),而噪聲點(diǎn)則為數(shù)據(jù)中稀疏區(qū)域中的點(diǎn),如圖2所示。對(duì)于DBSCAN算法,還有以下3個(gè)重要的概念:1)Eps鄰域。與一個(gè)點(diǎn)的距離小于等于Eps距離的所有點(diǎn)的集合。2)直接密度可達(dá)。如果一個(gè)點(diǎn)在核心點(diǎn)的Eps鄰域內(nèi),則稱該點(diǎn)到核心點(diǎn)是直接密度可達(dá)的。3)密度可達(dá)。對(duì)于多個(gè)點(diǎn)p1,p2,…,pn,pi+1是從pi關(guān)于Eps和MinPts直接密度可達(dá)的,則點(diǎn)pn是p1密度可達(dá)的。

        圖2 噪聲點(diǎn)、邊界點(diǎn)和核心點(diǎn)示意圖Fig.2 Schematic diagram of outlier,boundary and core points

        DBSCAN的基本執(zhí)行步驟為:1)所有點(diǎn)標(biāo)記為核心點(diǎn)、邊界點(diǎn)以及噪聲點(diǎn);2)刪除噪聲點(diǎn);3)為距離在Eps之內(nèi)的所有核心點(diǎn)之間賦予一條邊;4)每組連通的核心點(diǎn)形成一個(gè)簇;5)每個(gè)邊界點(diǎn)指派到一個(gè)與之關(guān)聯(lián)的核心點(diǎn)簇中。

        由于DBSCAN算法是一種基于密度聚類的方法,因此該算法可以根據(jù)數(shù)據(jù)的空間特點(diǎn)選擇出聚類中心和聚類個(gè)數(shù)。雖然不像K-means受限于起始點(diǎn)的選擇,但是鄰域半徑Eps值的確定能夠影響DBSCAN聚類的效果。

        4 改進(jìn)的工業(yè)控制網(wǎng)絡(luò)入侵檢測(cè)方法

        在大部分研究中,研究人員將工業(yè)控制網(wǎng)絡(luò)入侵檢測(cè)作為分類任務(wù)處理。得益于機(jī)器學(xué)習(xí)算法在分類任務(wù)的優(yōu)良效果,能夠分類出正常和異常的數(shù)據(jù)。但是由于機(jī)器學(xué)習(xí)需要正負(fù)樣本共同學(xué)習(xí),而工業(yè)控制網(wǎng)絡(luò)中負(fù)樣本很難獲得,因此實(shí)際該網(wǎng)絡(luò)的入侵檢測(cè)都是基于大量正常樣本構(gòu)建異常入侵檢測(cè)模型,而OCSVM算法能夠完成這種工作。但是在工控網(wǎng)絡(luò)環(huán)境下,利用OCSVM算法構(gòu)建異常入侵檢測(cè)模型卻存在很多缺陷。

        4.1 OCSVM 的缺陷

        雖然OCSVM同SVM一樣,具有比較好的分類效果和泛化能力,但是OCSVM算法在某些數(shù)據(jù)上存在一些分類上的缺陷。

        1)離群點(diǎn)影響決策函數(shù)的生成。

        在OCSVM訓(xùn)練過程中,訓(xùn)練數(shù)據(jù)的一些離群點(diǎn)會(huì)對(duì)決策面的構(gòu)建造成影響。以圖3為例,在圖中,虛線方框中的幾個(gè)樣本點(diǎn)距離絕大部分樣本點(diǎn)較遠(yuǎn),屬于遠(yuǎn)離樣本空間的離群點(diǎn);當(dāng)計(jì)算決策面時(shí),這幾個(gè)點(diǎn)作為支持向量(圖中虛線圓框標(biāo)識(shí))來確定決策面;由于這幾個(gè)支持向量更加靠近原點(diǎn),導(dǎo)致決策面向原點(diǎn)偏移。顯然,決策面如果向樣本點(diǎn)集中的方向偏移(如加粗實(shí)線所示),更加符合OCSVM分類的目的。

        圖3 二維空間下離群點(diǎn)對(duì)于OCSVM算法的影響Fig.3 Influence of outliers on OCSVM algorithm in two-dimensional space

        在文獻(xiàn)[15]中提到了兩種改進(jìn)OCSVM的方法:一種是改變懲罰函數(shù),將懲罰函數(shù)構(gòu)造成與樣本點(diǎn)與樣本分布相關(guān)的函數(shù),這樣可以促使決策平面向密度集中的方向偏移;第二種是通過某種方法剔除離群樣本點(diǎn),直接排除離群點(diǎn)對(duì)決策面構(gòu)造的影響。

        2)內(nèi)部存在的異常數(shù)據(jù)無法檢測(cè)到。

        一般來說,異常點(diǎn)大多數(shù)處于正常點(diǎn)集合的邊界上。但是OCSVM構(gòu)造的是包含絕大部分正常樣本的決策面,如果異常點(diǎn)處于正常數(shù)據(jù)點(diǎn)的內(nèi)部,則通過OCSVM是無法判斷出的,這些點(diǎn)被叫作內(nèi)部(局部)異常點(diǎn)。

        在圖4中由于異常點(diǎn)包含在正常數(shù)據(jù)集內(nèi)部,因而直接使用OCSVM算法無法對(duì)此類點(diǎn)進(jìn)行判斷。

        圖4 正常數(shù)據(jù)集中異常點(diǎn)分布情況示意Fig.4 Distribution of abnormal points in normal data sets

        4.2 本文對(duì)OCSVM的改進(jìn)

        為了實(shí)現(xiàn)在工業(yè)控制網(wǎng)絡(luò)中的異常入侵檢測(cè),同時(shí)也為了解決上述OCSVM算法存在的問題。本文結(jié)合了DBSCAN、K-means和OCSVM方法,旨在提高工業(yè)控制網(wǎng)絡(luò)入侵檢測(cè)中基于OCSVM檢測(cè)方法[5]的檢測(cè)性能。

        1)K-means聚類算法是基于原型聚類的算法之一,是最簡(jiǎn)單也是最常用的聚類算法,而且K-means方法也被廣泛使用在入侵檢測(cè)中[16-17]。利用K-means算法將正常數(shù)據(jù)集進(jìn)行聚類,獲得多個(gè)正常數(shù)據(jù)類簇。在這些類簇的基礎(chǔ)上分別建立OCSVM分類器,可以判斷出一些在類簇之間存在的異常數(shù)據(jù),進(jìn)行樣本檢測(cè)時(shí),K-means通過計(jì)算聚類中心點(diǎn)與檢測(cè)樣本點(diǎn)的距離來判斷屬于哪一個(gè)類簇,方便進(jìn)行算法擴(kuò)展。

        2)利用具有噪聲的基于密度的聚類方法(DBSCAN算法),剔除離群點(diǎn),避免離群點(diǎn)對(duì)K-means和OCSVM算法的影響;而且該算法可以為K-means獲取最好的聚類個(gè)數(shù),解決了K-means聚類數(shù)目難以確定以及對(duì)離群點(diǎn)敏感的問題。但是DBSCAN從整個(gè)樣本進(jìn)行模型更新,難以進(jìn)行擴(kuò)展,因此組合K-means算法對(duì)OCSVM算法進(jìn)行改進(jìn)。

        圖5 DKOCSVM構(gòu)建流程Fig.5 Construction process of DKOCSVM

        組合算法首先使用DBSCAN算法進(jìn)行處理,處理后可以獲得合適的聚類個(gè)數(shù)并且消除訓(xùn)練數(shù)據(jù)集中的離群點(diǎn),減少了離群點(diǎn)對(duì)于OCSVM和K-means的影響,而且為K-means指定了合適的聚類數(shù)。然后,K-means算法將正常樣本數(shù)據(jù)劃分為多個(gè)類簇,利用OCSVM算法為每個(gè)類簇建立單類分類器;當(dāng)利用該模型進(jìn)行數(shù)據(jù)檢測(cè)時(shí),首先判斷新數(shù)據(jù)屬于哪個(gè)類簇,然后利用該類簇對(duì)應(yīng)的單分類器進(jìn)行檢測(cè),這樣可以檢測(cè)出部分內(nèi)部異常點(diǎn)。同樣,K-means和OCSVM都會(huì)受到離群點(diǎn)的影響。

        如圖6所示,在DKOCSVM的工作過程中,算法首先利用DBSCAN算法進(jìn)行訓(xùn)練數(shù)據(jù)集的處理,目的是選取剔除孤立點(diǎn)或離群點(diǎn)的訓(xùn)練數(shù)據(jù),并且獲得合適的聚類個(gè)數(shù)K;然后使用K-means聚類為訓(xùn)練數(shù)據(jù)進(jìn)行聚類,尋找到訓(xùn)練數(shù)據(jù)中的K個(gè)類簇;利用OCSVM算法為每個(gè)類簇建立單分類器。在數(shù)據(jù)測(cè)試中首先判斷該樣本屬于哪個(gè)類簇,然后使用該類簇的分類器進(jìn)行判別。因此,該方法屬于聚類方法和分類方法的組合入侵檢測(cè)方法,滿足實(shí)用性要求。

        實(shí)驗(yàn)結(jié)果表明,利用DBSCAN和K-means組合的方式進(jìn)行工業(yè)控制網(wǎng)絡(luò)數(shù)據(jù)的去離群點(diǎn)和分類,然后構(gòu)造多個(gè)OCSVM入侵檢測(cè)器的方式,可以提高異常檢測(cè)中分類的精度。在組合算法中,DBSCAN算法時(shí)間復(fù)雜度為O(nt),其中n代表著需要聚類樣本的個(gè)數(shù),而t指代尋找到鄰域內(nèi)所有點(diǎn)的時(shí)間消耗,最壞情況下,可以達(dá)到O(n2),但是平均情況下,時(shí)間復(fù)雜度為O(n log n);對(duì)于K-mean算法而言,其時(shí)間復(fù)雜度為O(tnkm),其中t代表算法迭代次數(shù),k代表選擇的聚類個(gè)數(shù),m代表每個(gè)元素的特征數(shù)目;而OCSVM算法求解的是一個(gè)二次規(guī)劃問題,其時(shí)間復(fù)雜度與算法計(jì)算出的支持向量的個(gè)數(shù)相關(guān),也就是說與樣本個(gè)數(shù)存在相關(guān)性。

        圖6 DKOCSVM的入侵檢測(cè)模型Fig.6 Intrusion detection model of DKOCSVM

        5 實(shí)驗(yàn)過程

        5.1 實(shí)驗(yàn)數(shù)據(jù)集概述

        實(shí)驗(yàn)所用工業(yè)控制網(wǎng)絡(luò)數(shù)據(jù)集是密西西比州立大學(xué)公開的工業(yè)控制網(wǎng)絡(luò)安全數(shù)據(jù)集[18]:氣體管道數(shù)據(jù)集(gas pipeline)和儲(chǔ)水罐數(shù)據(jù)集(water)。數(shù)據(jù)集包括網(wǎng)絡(luò)流量,過程控制和過程測(cè)量數(shù)據(jù)特征,這些功能來自使用Modbus應(yīng)用層協(xié)議的兩個(gè)工業(yè)控制系統(tǒng)的一組28次攻擊。這個(gè)數(shù)據(jù)集可以方便和有效地比較SCADA的入侵檢測(cè)解決方案(該數(shù)據(jù)集出自 https://sites.google.com/a/uah.edu/tommy-morrisuah/ics-data-sets)。

        本文使用的數(shù)據(jù)集的組織形式都有兩個(gè)部分:網(wǎng)絡(luò)流量特性和有效內(nèi)容特性;網(wǎng)絡(luò)流量特性與SCADA網(wǎng)絡(luò)通信有關(guān),而有效內(nèi)容特性與具體的工業(yè)控制過程有關(guān)。在有效內(nèi)容特性中,包含著系統(tǒng)的測(cè)量值、關(guān)鍵系統(tǒng)工作狀態(tài)參數(shù)、系統(tǒng)模式等關(guān)鍵信息。

        1)氣體管道數(shù)據(jù)集。氣體管道數(shù)據(jù)集包含了天然氣氣體傳輸管道控制過程的關(guān)鍵數(shù)據(jù),包含有26個(gè)特征。在氣體管道數(shù)據(jù)集中,核心屬性是氣體管道中的壓強(qiáng)。氣體管道數(shù)據(jù)存在三種模式,入侵攻擊大多數(shù)基于三種正常模式構(gòu)建。

        2)儲(chǔ)水罐數(shù)據(jù)集。儲(chǔ)水罐數(shù)據(jù)集模擬了液體在儲(chǔ)水罐中的狀態(tài):當(dāng)液體位于儲(chǔ)水罐高低警戒位置之間時(shí),系統(tǒng)正常;當(dāng)超過最高警戒或低于最低警戒位,系統(tǒng)給出相應(yīng)警報(bào)。該數(shù)據(jù)集包含23個(gè)屬性值,核心屬性是當(dāng)前水位測(cè)量值、最高警戒水位和最低警戒水位。表1羅列出數(shù)據(jù)集中每類攻擊的數(shù)目。

        表1 兩類數(shù)據(jù)集中各種攻擊數(shù)據(jù)數(shù)目Tab.1 Numbers of various attacks in two data sets

        5.2 實(shí)驗(yàn)仿真與參數(shù)調(diào)整

        實(shí)驗(yàn)環(huán)境:Intel Pentium CPU G630 2.70 GHz,2 GB 內(nèi)存,500 GB硬盤,Windows7操作系統(tǒng)。在仿真中,主要采用Python編程語言,實(shí)現(xiàn)SVM和OCSVM算法主要來自機(jī)器學(xué)習(xí)庫sklearn中的SVM模塊,而兩種聚類:DBSCAN和K-means則來自機(jī)器學(xué)習(xí)庫中的cluster模塊。實(shí)驗(yàn)中涉及到的核函數(shù)均采用徑向基函數(shù)(Radical Basis Function,RBF)。

        組合方法DKOCSVM中,需要調(diào)整的參數(shù)為鄰域半徑Eps、核心點(diǎn)閾值MinPts和學(xué)習(xí)率nu;在gas pipline數(shù)據(jù)集中,鄰域半徑設(shè)置為0.2,MinPts為10,學(xué)習(xí)率為0.1;在water數(shù)據(jù)集中,鄰域半徑設(shè)置為0.2,MinPts為25,學(xué)習(xí)率為0.07。

        5.3 實(shí)驗(yàn)方案設(shè)計(jì)

        數(shù)據(jù)集驗(yàn)證 為了比較DKOCSVM算法是否能夠提高工業(yè)控制網(wǎng)絡(luò)入侵檢測(cè)的效率,本文使用工控網(wǎng)絡(luò)數(shù)據(jù)集gas pipeline和water數(shù)據(jù)集進(jìn)行算法的驗(yàn)證。

        對(duì)比實(shí)驗(yàn) 為了進(jìn)行實(shí)驗(yàn)的對(duì)比,本文從二分類SVM(CSVM)、K-means和OCSVM分類器組合、基于K-means的入侵檢測(cè)方法、單分類器OCSVM方法作為對(duì)比算法,來討論DKOCSVM算法在工控入侵檢測(cè)中的整體效果。另外,本文還引入了基于核函數(shù)的單分類方法和基于核主成分分析(Kernel Principal Component Analysis,KPCA)的單分類方法[6]作為對(duì)比實(shí)驗(yàn)(表2、表3中帶*),目的是為了觀察這兩種計(jì)算機(jī)網(wǎng)絡(luò)異常檢測(cè)方法是否適合本文背景下的入侵檢測(cè)模型。

        評(píng)價(jià)標(biāo)準(zhǔn) 在測(cè)試集評(píng)判時(shí),本文通過以下幾種指標(biāo)來進(jìn)行度量:檢測(cè)過程花費(fèi)CPU時(shí)間、整體檢測(cè)率(accuracy)、算法查準(zhǔn)率(precision)、算法誤報(bào)率(False Positive Rate,F(xiàn)PR)、算法漏報(bào)率(False Negative Rate,F(xiàn)NR)。其中accuracy為正確檢測(cè)出的樣本個(gè)數(shù)與樣本總數(shù)的百分比;precision是檢測(cè)出的正常樣本數(shù)占正常樣本總數(shù)的百分比;而FPR為誤報(bào)為異常的正常樣本數(shù)與正常樣本總數(shù)的比值;FNR與FPR類似,是漏報(bào)的異常樣本數(shù)和異常樣本總數(shù)的比值。

        實(shí)驗(yàn)具體方案 1)分別獲得gas pipeline和water數(shù)據(jù)集中的測(cè)試集與訓(xùn)練集;2)為測(cè)試集和訓(xùn)練集重新構(gòu)建標(biāo)簽,當(dāng)數(shù)據(jù)條目為正常時(shí)標(biāo)記為1,反之則為-1;3)選擇訓(xùn)練集中所有正常數(shù)據(jù),作為單分類方法的訓(xùn)練數(shù)據(jù);4)利用單分類方法為該訓(xùn)練數(shù)據(jù)構(gòu)造單分類器,建立單分類模型;5)利用測(cè)試集檢測(cè)單分類器的效果,給出各種評(píng)價(jià)指標(biāo);6)實(shí)驗(yàn)探究特征個(gè)數(shù)對(duì)算法的影響。

        5.4 實(shí)驗(yàn)結(jié)果分析

        實(shí)驗(yàn)結(jié)果(表2和表3所示)表明:二分類C-SVM算法(有監(jiān)督分類)中,由于C-SVM帶有數(shù)據(jù)標(biāo)簽,因而其分類效果要比其他算法總體上要好,但是C-SVM算法要求需要數(shù)據(jù)均衡的正反樣本進(jìn)行模型學(xué)習(xí),實(shí)際網(wǎng)絡(luò)環(huán)境中難以辦到。C-SVM的結(jié)果可以作為衡量其他入侵檢測(cè)方法的尺度。

        傳統(tǒng)基于核的單分類法(Simple One Class)和基于KPCA的單分類法(KPCA One Class)在上述兩類數(shù)據(jù)集上的分類效果都不是很好,從誤報(bào)率和漏報(bào)率來看,它們明顯是將大部分?jǐn)?shù)據(jù)判斷為正例;而且二者的整體花費(fèi)時(shí)間要遠(yuǎn)遠(yuǎn)高于其他算法的花費(fèi)時(shí)間。結(jié)果說明,這兩種計(jì)算機(jī)網(wǎng)絡(luò)異常入侵檢測(cè)并不適合工業(yè)控制網(wǎng)絡(luò)異常入侵檢測(cè)的背景;無法針對(duì)工業(yè)網(wǎng)絡(luò)的特點(diǎn)構(gòu)造分類模型。而這兩種算法都是通過計(jì)算整個(gè)數(shù)據(jù)空間中每?jī)蓚€(gè)樣本的距離來描述樣本的分布,但是從結(jié)果表現(xiàn)看來,并沒有太高的泛化能力。

        基于K-means方法的入侵檢測(cè)方法通過對(duì)正樣本數(shù)據(jù)空間進(jìn)行聚類,然后計(jì)算負(fù)樣本到這些類別中心點(diǎn)的距離來調(diào)整分類邊界,因此該算法的結(jié)果依賴于閾值的選擇。本文就是通過不斷選擇閾值來得到K-means入侵方法最優(yōu)的檢測(cè)效果;K-means和OCSVM組合方法類似于本文提到的DKOCSVM方法,但是沒有考慮到離群點(diǎn)對(duì)組合方法的影響。該組合方法,在gas pipeline數(shù)據(jù)集中的分類效果比原始OCSVM和基于K-means入侵檢測(cè)方法的總體檢測(cè)率要更優(yōu),在water數(shù)據(jù)集中檢測(cè)效果三者大致相同。利用K-means算法可以降低OCSVM訓(xùn)練樣本的數(shù)量,提高了OCSVM分類器的訓(xùn)練速度,但是隨著K-means算法的加入,整體花費(fèi)的時(shí)間比之前要多。

        表2 不同算法在數(shù)據(jù)集gas pipeline上的訓(xùn)練效果Tab.2 Training effect of different algorithms on gas pipline

        表3 不同算法在數(shù)據(jù)集water上的訓(xùn)練效果Tab.3 Training effect of different algorithms on water dataset

        在DKOCSVM算法的實(shí)驗(yàn)效果中,gas數(shù)據(jù)集的檢測(cè)效果得到了明顯的提升,而water數(shù)據(jù)集各個(gè)指標(biāo)基本保持不變。由于gas數(shù)據(jù)中存在明顯的工作模式分布,異常點(diǎn)大多分布在這些模式邊界或邊界與邊界之間,利用DKOCSVM算法可以剔除這些點(diǎn);而water數(shù)據(jù)集中沒有類似的工作模式,因此利用DKOCSVM算法剔除的異常點(diǎn)和孤立點(diǎn)不多,檢測(cè)效果提升幅度不大。

        針對(duì)入侵檢測(cè)算法平衡誤報(bào)率和漏報(bào)率比例的目的,DKOCSVM算法在gas數(shù)據(jù)集中比其他算法更好地平衡二者的比例,盡管與C-SVM相比犧牲了漏報(bào)率;在water數(shù)據(jù)集中,DKOCSVM的性能沒有太大上升,但是也沒有下降??傮w來看,DKOCSVM算法提升了工業(yè)控制網(wǎng)絡(luò)數(shù)據(jù)的總體檢測(cè)率,能夠?yàn)楣I(yè)控制網(wǎng)絡(luò)建立泛化能力好的正常樣本模型,從而構(gòu)建出異常檢測(cè)模型。

        在兩種實(shí)驗(yàn)數(shù)據(jù)集中,兩種數(shù)據(jù)集的特征數(shù)目較少,便于處理,如果其他類別的工控網(wǎng)絡(luò)具有大量特征數(shù)目,就需要進(jìn)行特征選擇。圖7(a)顯示了主成分分析(Principal Component Analysis,PCA)個(gè)數(shù)對(duì)DKOCSVM算法的影響;而圖7(b)中顯示了各種特征選擇方法對(duì)DKOCSVM方法檢測(cè)率的改變。

        圖7(a)展示了主成分分析方法對(duì)算法檢測(cè)率的影響。在gas數(shù)據(jù)集中,利用主成分分析方法進(jìn)行降維處理可以提高算法的檢測(cè)效率,當(dāng)主成分個(gè)數(shù)為11~14時(shí),此時(shí)算法的檢測(cè)率(accuracy)可以分別達(dá)到 91.54%,91.95%,91.86%和91.81%;對(duì)比不使用降維方法的檢測(cè)率91.81%而言,主成分分析降維可以達(dá)到減少特征數(shù)目,并不降低算法效率的目的。對(duì)于water數(shù)據(jù)集,特征降維后其總體檢測(cè)率沒有太大變化。

        圖7(b)是四種特征選擇算法對(duì)DKOCSVM算法的檢測(cè)率比較。VarianceThreshold(VATH)可以剔除數(shù)據(jù)集中特征值全部相同的一列;univariateSelect(UVS)方法利用互信息方法計(jì)算每個(gè)特征與結(jié)果的互信息值,根據(jù)值大小進(jìn)行特征選擇;DTrecursiveSelect(DTS)和ExtralTreesModels(ETM)都采用決策樹的方式來尋找最優(yōu)的特征子集組合。從檢測(cè)結(jié)果來看,前兩種快速的特征選擇方法降低了算法的準(zhǔn)確性,而后兩種樹結(jié)構(gòu)的特征選擇方法最終選擇了數(shù)據(jù)集中的全部特征,因此檢測(cè)率沒有改變。從PCA方法和特征選擇方法的處理結(jié)果來看,采用合適的主成分分析方法和特征選擇方法可以提高DKOCSVM的檢測(cè)效率。

        圖7 主成分分析和特征選擇方法對(duì)DKOCSVM的影響Fig.7 Influence of PCA and feature selection on DKOCSVM

        gas和water數(shù)據(jù)集中相同算法產(chǎn)生的不同結(jié)果表明:不同工業(yè)控制生產(chǎn)過程不同,異常產(chǎn)生的側(cè)重點(diǎn)也有所不同。選擇合適的算法需要人工進(jìn)行測(cè)試、比較和篩選,但是應(yīng)用DKOCSVM算法在兩種數(shù)據(jù)集上都能夠產(chǎn)生理想的檢測(cè)結(jié)果。

        6 結(jié)語

        本文基于工控網(wǎng)絡(luò)入侵檢測(cè)背景,在傳統(tǒng)單分類支持向量機(jī)(OCSVM)方法基礎(chǔ)上,提出一種基于OCSVM的組合分類器DBSCAN_K-means_OCSVM(DKOCSVM)進(jìn)行入侵檢測(cè)。算法首先使用DBSCAN方法處理訓(xùn)練數(shù)據(jù)集,剔除其中的離群點(diǎn)和孤立點(diǎn),其次利用K-means聚類方法將用于訓(xùn)練的正常數(shù)據(jù)集劃分為多個(gè)類簇,最后利用OCSVM算法為每一個(gè)類簇建立一個(gè)單分類器;在進(jìn)行檢測(cè)時(shí),首先判斷檢測(cè)數(shù)據(jù)屬于哪一個(gè)類簇,然后使用該類簇對(duì)應(yīng)的異常檢測(cè)模型進(jìn)行判別。在兩種工控網(wǎng)絡(luò)數(shù)據(jù)集上的實(shí)驗(yàn)表明,在gas pipeline數(shù)據(jù)集上,DKOCSVM算法能夠提高總體檢測(cè)率和查準(zhǔn)率,比傳統(tǒng)OCSVM算法具有更低的誤報(bào)率和漏報(bào)率;在water數(shù)據(jù)集上,數(shù)據(jù)的入侵檢測(cè)效率有略微提升,但是提升沒有g(shù)as數(shù)據(jù)集明顯。算法在OCSVM的基礎(chǔ)上,利用DBSCAN和K-means方法減少了孤立點(diǎn)和內(nèi)部異常點(diǎn)對(duì)分類器的影響??傮w上來說,DKOCSVM對(duì)OCSVM進(jìn)行了改善,提升了OCSVM的檢測(cè)能力。同時(shí),在數(shù)據(jù)維度更高的情況下,可以采用主成分分析的方法提升DKOCSVM的檢測(cè)效果。

        猜你喜歡
        離群分類器聚類
        BP-GA光照分類器在車道線識(shí)別中的應(yīng)用
        基于DBSACN聚類算法的XML文檔聚類
        加權(quán)空-譜與最近鄰分類器相結(jié)合的高光譜圖像分類
        結(jié)合模糊(C+P)均值聚類和SP-V-支持向量機(jī)的TSK分類器
        離群數(shù)據(jù)挖掘在發(fā)現(xiàn)房產(chǎn)銷售潛在客戶中的應(yīng)用
        基于改進(jìn)的遺傳算法的模糊聚類算法
        離群的小雞
        一種層次初始的聚類個(gè)數(shù)自適應(yīng)的聚類方法研究
        應(yīng)用相似度測(cè)量的圖離群點(diǎn)檢測(cè)方法
        基于LLE降維和BP_Adaboost分類器的GIS局部放電模式識(shí)別
        色婷婷综合久久久久中文字幕| 国产乱码一区二区三区精品| 男女调情视频在线观看| 亚洲精品av一区二区| 亚洲av色香蕉一区二区三区| 久久久国产精品va麻豆| 精品国内在视频线2019| 无码人妻精品一区二区三区不卡 | 中文字幕亚洲乱码熟女在线| 欧美性开放bbw| 无码国产亚洲日韩国精品视频一区二区三区 | 中文字幕精品一二三四五六七八| 亚洲综合色成在线播放| 欧美精品一级| 制服丝袜人妻中出第一页| 亚洲一道一本快点视频| 色婷婷久久综合中文久久一本| 中文字幕乱码亚洲一区二区三区| 女优av一区二区三区| 成人免费无码大片a毛片| 亚洲色在线v中文字幕| 久久午夜无码鲁丝片直播午夜精品| 91免费永久国产在线观看| 成 人 网 站 在线 看 免费| 日本一区二区三区在线| 日本一区人妻蜜桃臀中文字幕| 亚洲婷婷久悠悠色悠在线播放 | 国产精品露脸张开双腿| 大屁股流白浆一区二区| 久久99精品久久只有精品| 亚洲乱码av中文一区二区| 少妇愉情理伦片| 亚洲欧美在线观看| 久久精品国产亚洲AⅤ无码| 日本少妇爽的大叫高潮了| 一区二区精品天堂亚洲av| 国产成人自拍高清在线| 国产乱了真实在线观看| 日韩av精品国产av精品| 欧洲综合色| 一区两区三区视频在线观看|