王 健
(唐山市熱力集團(tuán)有限公司,河北 唐山 063000)
現(xiàn)代社會(huì)的發(fā)展已經(jīng)離不開網(wǎng)絡(luò)化與數(shù)字化,很多企業(yè)為了獲取有價(jià)值的工業(yè)經(jīng)濟(jì)數(shù)據(jù)庫資源企圖通過非法的手段來獲取到相應(yīng)的信息。因此,數(shù)據(jù)庫安全已經(jīng)成為社會(huì)各界發(fā)展當(dāng)初普遍重視的問題。然而在傳統(tǒng)意識(shí)中,人們往往疏忽系統(tǒng)內(nèi)部的防范而只注重系統(tǒng)外部的入侵。由此可見,研究數(shù)據(jù)庫系統(tǒng)內(nèi)部攻擊的檢測(cè)方法更具價(jià)值性。本文試圖找到區(qū)別于針對(duì)操作系統(tǒng)和計(jì)算機(jī)網(wǎng)絡(luò)的傳統(tǒng)檢測(cè)方法的新型檢測(cè)法,即針對(duì)數(shù)據(jù)庫系統(tǒng)的檢測(cè)方法[1]。
早期檢測(cè)方法,主要有:通過挖掘數(shù)據(jù)間的依賴性從中找到不符合常態(tài)性依賴的異常檢測(cè)的方法中,Kamra從中找到通過尋求并拒絕偏離于交互用戶正常配置的一種方法。而佛吉亞則是利用用戶所融合的信息源以及信度產(chǎn)生的更新頻率而尋找到異常的一種檢測(cè)方法。這些方法固然能夠解決一些問題,然而錯(cuò)誤率較高,不能做到精準(zhǔn)檢測(cè)。
很多學(xué)者將深入學(xué)習(xí)以及機(jī)器學(xué)習(xí)等理論方法,用于數(shù)據(jù)庫的異常檢測(cè)。然而,該種方法建模過程較復(fù)雜且實(shí)時(shí)更新速度慢。后來斯奈等人又提出將關(guān)聯(lián)規(guī)則以及聚類分析運(yùn)用到檢測(cè)數(shù)據(jù)庫方法中來。布德等人則提出,將學(xué)習(xí)分類器系統(tǒng)以及神經(jīng)網(wǎng)絡(luò)應(yīng)用到數(shù)據(jù)庫的入侵檢測(cè),但最終所提出的密度聚類檢測(cè)方法則更加符合數(shù)據(jù)庫中用戶的行為特征,特別是對(duì)于異?;臋z測(cè)形態(tài),能夠比較穩(wěn)定檢測(cè)樣本。但值得注意的是,在應(yīng)用密度聚類檢測(cè)方法的同時(shí),對(duì)于做監(jiān)測(cè)的樣板也會(huì)因?yàn)榫垲惒环€(wěn)定而出現(xiàn)檢測(cè)誤差[2]。
集成學(xué)習(xí)方法,在近年來已被應(yīng)用于數(shù)據(jù)庫的異常檢測(cè)當(dāng)中。它的檢測(cè)性能較為穩(wěn)定,準(zhǔn)確率較高。很多學(xué)者為了將其進(jìn)一步完善而將改進(jìn)后的決策樹作為集成學(xué)習(xí)方法的補(bǔ)充,目的就是為了進(jìn)一步提升檢測(cè)的準(zhǔn)確率。
通過以上分析,傳統(tǒng)的數(shù)據(jù)庫異常檢測(cè)方法,方法單一且準(zhǔn)確率較低,所以,利用密度聚類與集成學(xué)習(xí)的數(shù)據(jù)庫異常檢測(cè)方法能夠更為精準(zhǔn)地對(duì)數(shù)據(jù)庫情況進(jìn)行檢測(cè)。
該方法是一種較為獨(dú)立的密度聚類算法,它是在原有的基于密度空間聚類的計(jì)算方法所做出的進(jìn)一步改進(jìn),能實(shí)現(xiàn)對(duì)不同密度的聚類結(jié)構(gòu)分析,其方法便是通過有序的排列創(chuàng)設(shè)出任意一種密度的聚類[3]。
該方法的計(jì)算核心切中于簇序的排列,以及聚類臨近領(lǐng)域的半徑值范圍,在這個(gè)范圍中至少會(huì)有其他對(duì)象,這時(shí)的領(lǐng)域值ε便會(huì)通過任意的對(duì)象p,而求得所容納的對(duì)象數(shù)量。其中,最為關(guān)鍵的便是核心距離以及可達(dá)距離兩個(gè)閾值范圍。有了這兩個(gè)數(shù)據(jù),便能計(jì)算得出與之相關(guān)的聚類簇排序,該方法是通過排序而得出對(duì)于數(shù)據(jù)結(jié)構(gòu)的一種聚類觀察方法。
利用樣本中點(diǎn)在局部中所分布的狀態(tài),以及它與離群之間的距離程度,所運(yùn)用到的檢測(cè)方法,是基于密度的離群狀態(tài)而得出的。在數(shù)據(jù)庫中,每一個(gè)聚點(diǎn)因?yàn)殡x群產(chǎn)生一定的分布,這個(gè)大小會(huì)界定在與數(shù)值1之間的關(guān)系性上。當(dāng)該距離大于1時(shí),則將被認(rèn)定為離群因子,小于1,則為正常點(diǎn)。該方法通常會(huì)結(jié)合聚類方法來計(jì)算得出離群點(diǎn),進(jìn)而得出局部離群因子。
工業(yè)經(jīng)濟(jì)數(shù)據(jù)庫異常檢測(cè)方法是以融合密度聚類方法與集成學(xué)習(xí)而形成的綜合性異常檢測(cè)法,具體檢測(cè)流程如圖1所示。主要過程包括數(shù)據(jù)預(yù)處理、訓(xùn)練、學(xué)習(xí)模型構(gòu)建以及異常檢測(cè)[4]。
通過圖1可知,首先要進(jìn)行數(shù)據(jù)預(yù)處理。該方法主要為了能夠提取用戶的行為特征值,并將其處理為界定于0~1之間的數(shù)據(jù)型數(shù)據(jù),便于通過聚類與集成學(xué)習(xí)綜合方法所便于使用。其次是訓(xùn)練。現(xiàn)在的目的是為了得到不同規(guī)模的訓(xùn)練數(shù)據(jù)包。這樣在密度聚類方法中便可計(jì)算得出相應(yīng)的模型,已取得先驗(yàn)知識(shí)。再通過聚類方法分析便能得到簇的數(shù)據(jù)。對(duì)于未能形成簇的數(shù)據(jù),則可通過集成學(xué)習(xí)模型來做后續(xù)處理。再有,學(xué)習(xí)模型構(gòu)建。在該模型構(gòu)建的過程中,可采用個(gè)別分類器,將原有的數(shù)據(jù)模型通過集成學(xué)習(xí)的方法組合形成新的模型,并對(duì)其特征進(jìn)行分類計(jì)算及對(duì)所得到的結(jié)果實(shí)施特征性存儲(chǔ)。最后是檢測(cè)。將新的用戶與數(shù)據(jù)庫中所存儲(chǔ)的特征庫數(shù)據(jù)進(jìn)行匹配,進(jìn)而檢測(cè)用戶行為的異常與否。
數(shù)據(jù)只有經(jīng)過預(yù)處理,才可進(jìn)一步的分析,利用元組來描述用戶的行為。這些描述的元素包括用戶的標(biāo)識(shí)以及查詢的類型和相應(yīng)的語句條數(shù)等各種元素信息。這些信息會(huì)經(jīng)過密度計(jì)類以及集成學(xué)習(xí)進(jìn)行數(shù)值處理,然后進(jìn)行統(tǒng)一性轉(zhuǎn)化。具體的處理方式包括:對(duì)于連續(xù)性數(shù)據(jù)要保持?jǐn)?shù)據(jù)的原面貌;對(duì)于離散型、非數(shù)值型數(shù)據(jù),則通過所建立的全局散列表來分析數(shù)據(jù),從中得出映射值,該映射值同一元素,只能擁有一個(gè)映射值;對(duì)于元組型數(shù)據(jù)首先要對(duì)整體數(shù)值進(jìn)行映射,才能對(duì)元組本身進(jìn)行數(shù)值映射。
在訓(xùn)練階段,通過融合密度聚類方法以及集成學(xué)習(xí)數(shù)據(jù)分析的方法來對(duì)數(shù)據(jù)進(jìn)行檢驗(yàn)。首先利用OPTICS 算法分別對(duì)最大值與最小值進(jìn)行聚類,在最小值當(dāng)中運(yùn)用聚類的方法得出先驗(yàn)知識(shí)。它通過參數(shù)的輸入計(jì)算得出該數(shù)據(jù)值與可達(dá)核心部分的距離,并進(jìn)行輸入,然后通過不同的公式方法得出可到達(dá)的距離值并轉(zhuǎn)換為排序方式,進(jìn)而得出數(shù)據(jù)點(diǎn)。這些數(shù)據(jù)點(diǎn)會(huì)形成聚類簇,再結(jié)合運(yùn)用局部離群因子的計(jì)算方法而求得點(diǎn)距離群程度[5]。
習(xí)模型包含了多個(gè)個(gè)體分類器,以組合成集成學(xué)習(xí)模型整體感應(yīng)器。它包括分類器、決策數(shù)以及多層感知器等。在學(xué)習(xí)模型中所進(jìn)行各個(gè)分類器的測(cè)試,最終通過學(xué)習(xí)模型中的投票方式來獲取到分類結(jié)果,這樣能夠大大提升測(cè)試的精準(zhǔn)性。此外,也可通過迭代修正測(cè)試數(shù)據(jù)集權(quán)重的方式,來減少誤差。具體如圖2所示。
對(duì)于以往階段所檢測(cè)到的正常用戶信息進(jìn)行特征提取,并將其錄入到正常行為記錄表當(dāng)中。同樣對(duì)于異常行為特征的信息,則需保存到異常行為記錄表當(dāng)中。這些不同的數(shù)據(jù)信息,分別會(huì)將與新用戶進(jìn)行相應(yīng)的匹配。未能匹配成功的數(shù)據(jù)或?qū)τ谛碌臄?shù)據(jù)則由集成學(xué)習(xí)模塊進(jìn)行處理。具體如圖3所示。
為了能使實(shí)驗(yàn)所進(jìn)行的測(cè)試數(shù)據(jù)準(zhǔn)確,依據(jù)以往學(xué)者所提出的數(shù)據(jù)生成原理而擬定生成實(shí)驗(yàn)所需要的測(cè)試數(shù)據(jù)集。首先構(gòu)建生成用于實(shí)驗(yàn)所用的符合高斯分布的數(shù)據(jù)產(chǎn)生模擬器,并將用戶的行為數(shù)據(jù)信息進(jìn)行檢測(cè)。對(duì)于用戶中的正常行為或異常行為,則通過不同的記錄方式進(jìn)行模擬。用戶的正常行為會(huì)通過隨機(jī)的方式來創(chuàng)建簇中心。而異常的行為則會(huì)利用課題中產(chǎn)生的模擬器來創(chuàng)建更加分散的數(shù)據(jù)信息[6]。這些信息會(huì)由多個(gè)二維數(shù)據(jù)構(gòu)成數(shù)據(jù)集合點(diǎn),具體如圖4所示。
利用設(shè)計(jì)的模擬器產(chǎn)生的30 000條工業(yè)經(jīng)濟(jì)測(cè)試數(shù)據(jù)集而形成。在所進(jìn)行測(cè)試的數(shù)據(jù)集中,每一條記錄都含有7個(gè)屬性元組。并標(biāo)有所對(duì)應(yīng)的“正?!被颉爱惓!睒?biāo)簽。通過分析得知密度聚類對(duì)于研究方案中的數(shù)據(jù)有著非常重要的影響,它的分類主要有相應(yīng)的參數(shù)所推斷的結(jié)果而形成對(duì)用戶的數(shù)據(jù)信息正常與否的檢測(cè)測(cè)試。所測(cè)試的結(jié)果顯示利用密度計(jì)類的檢測(cè)方法,對(duì)于數(shù)據(jù)信息的聚集效果是比較顯著的。具體如圖5所示。
通過圖5與圖4的數(shù)據(jù)分析可以得知融合密度聚類與集成學(xué)習(xí)工業(yè)經(jīng)濟(jì)數(shù)據(jù)庫異常方法檢測(cè)所形成的模擬器,對(duì)于數(shù)據(jù)分析有著較高的精準(zhǔn)度。這種復(fù)合型模擬器的檢測(cè)方法是利用于個(gè)體分類器的聚集所形成它與個(gè)體分類器相比在性能上有著較大幅度的提高。有了密度聚類與集成學(xué)習(xí)的綜合性組合,誤報(bào)率明顯有所下降,這也可作為檢測(cè)系統(tǒng)的最主要策略。
基于密度聚類與集成學(xué)習(xí)的工業(yè)經(jīng)濟(jì)數(shù)據(jù)庫異常檢測(cè)方法對(duì)于用戶的數(shù)據(jù)預(yù)處理以及收集構(gòu)建用戶行為特征等聚類算法等,都能進(jìn)行精準(zhǔn)性分析。并可以此為特征創(chuàng)建用戶行為特征庫,以用于用戶行為正常與否的檢測(cè),通過數(shù)據(jù)行為的測(cè)試可以得出該方案對(duì)于檢測(cè)用戶的異常行為有著較高的精準(zhǔn)度,因此值得推廣。