高俊
(河南省科學(xué)技術(shù)情報(bào)中心,河南 鄭州450018)
無線局域網(wǎng)(Wireless Local Area Networks,WLAN)可以實(shí)現(xiàn)在局部區(qū)域內(nèi)無線媒體或介質(zhì)進(jìn)行信息傳輸,是計(jì)算機(jī)網(wǎng)絡(luò)和無線通信技術(shù)相結(jié)合的結(jié)果。經(jīng)過不斷的升級(jí)發(fā)展,已經(jīng)被廣泛應(yīng)用于教育行業(yè)、醫(yī)療行業(yè)、金融行業(yè)和人們的生活中。然而,在WLAN 快速發(fā)展、為人們生活和工作帶來極大便利的同時(shí),安全問題也隨之產(chǎn)生,并成為影響其繼續(xù)發(fā)展和普及的一個(gè)重要因素。
調(diào)查研究表明,WLAN 主要存在以下幾個(gè)方面的安全威脅:通過公共WLAN網(wǎng)絡(luò),攻擊者偽裝成合法用戶,接入WLAN非法訪問網(wǎng)絡(luò)資源;一些黑客研制的某種掃描工具使非法接入WLAN變得更加簡(jiǎn)單;在使用WLAN傳輸未被加密的信息或文件時(shí),易被攻擊者截獲或者篡改,甚至造成個(gè)人信息被盜??;還有某些無線設(shè)備的不適當(dāng)配置也有可能造成信息的泄露。因此,有必要研究適用于無線網(wǎng)絡(luò)自動(dòng)化接入安全監(jiān)測(cè)方法。
近年來,也有許多國(guó)內(nèi)外的學(xué)者針對(duì)無線網(wǎng)絡(luò)安全問題提出了一些安全理論、安全方法和安全技術(shù)。文獻(xiàn)[1]提出了無線網(wǎng)絡(luò)中信息安全防范方法,通過對(duì)機(jī)密信息標(biāo)準(zhǔn)化處理建立機(jī)密信息融合的超曲面,并在此基礎(chǔ)上構(gòu)建了RBF神經(jīng)網(wǎng)絡(luò),利用RBF神經(jīng)網(wǎng)絡(luò)對(duì)局域網(wǎng)中機(jī)密信息的相關(guān)度進(jìn)行預(yù)測(cè)實(shí)現(xiàn)信息安全防范,但是該方法計(jì)算過程較繁雜,耗時(shí)長(zhǎng)。文獻(xiàn)[2]提出了家用無線網(wǎng)絡(luò)路由器安全防護(hù)方法,通過監(jiān)測(cè)HTTP 協(xié)議網(wǎng)絡(luò)攻擊行為,將非法行為牽引至影子服務(wù)器,從而降低家用無線路由器的安全風(fēng)險(xiǎn),但是該方法局限性較大,適用于家用無線網(wǎng)絡(luò),在大型無線環(huán)境內(nèi)效果并不理想。國(guó)外專家通過能效技術(shù)找出無線傳感器網(wǎng)絡(luò)中的欺騙攻擊并減輕影響,由于分組傳輸?shù)难舆t和分組丟失會(huì)不必要地浪費(fèi)資源,因此通過減少能耗相關(guān)算法提高了網(wǎng)絡(luò)性能從而提升無線網(wǎng)絡(luò)安全性。
本文總結(jié)以往研究經(jīng)驗(yàn),提出基于K-means算法的無線局域網(wǎng)自動(dòng)化接入過程安全監(jiān)測(cè)方法。在大量的網(wǎng)絡(luò)數(shù)據(jù)中篩選出有效的正常用戶行為數(shù)據(jù),利用K-means算法對(duì)其進(jìn)行安全監(jiān)測(cè),將正常用戶行為與異常行為進(jìn)行歸類劃分,屏蔽或拉黑異常行為用戶,保障正常用戶的上網(wǎng)安全,完成無線局域網(wǎng)自動(dòng)化接入過程安全監(jiān)測(cè),以圖有效保護(hù)用戶上網(wǎng)安全。
針對(duì)當(dāng)前WLAN 環(huán)境中用戶信息數(shù)據(jù)量巨大且結(jié)構(gòu)復(fù)雜的特點(diǎn),要實(shí)現(xiàn)對(duì)不同類型的數(shù)據(jù)進(jìn)行準(zhǔn)確無誤、快速的處理是一件非常困難的事情,這就對(duì)WLAN自動(dòng)化接入安全監(jiān)測(cè)提出了更高的要求[3]。采用高效率的數(shù)據(jù)處理方法,對(duì)數(shù)據(jù)集中具有代表性的數(shù)據(jù)進(jìn)行分析,可以提高網(wǎng)絡(luò)安全檢測(cè)的工作效率。聚類算法是一種將數(shù)據(jù)按照群的形式進(jìn)行分析的算法。將WLAN 環(huán)境中采集到的所有數(shù)據(jù)分為若干個(gè)模式子集,并將相似度較高的數(shù)據(jù)放在同一個(gè)集合內(nèi),所以,每個(gè)集合之間的差異性都是比較大的。
WLAN環(huán)境下實(shí)現(xiàn)自動(dòng)化接入安全監(jiān)測(cè)的主要途徑是通過在網(wǎng)絡(luò)運(yùn)行過程中,隨著運(yùn)行環(huán)境的不斷變化,節(jié)點(diǎn)會(huì)相應(yīng)的插入新的安全監(jiān)測(cè)代碼[4],從而保障整個(gè)網(wǎng)絡(luò)運(yùn)行的安全性。常見的WLAN網(wǎng)絡(luò)攻擊如圖1所示。
K-means 算法是按照數(shù)據(jù)的相似度進(jìn)行分類劃分,將有著相近相似度的數(shù)據(jù)歸為同一類,并且通過計(jì)算各個(gè)數(shù)據(jù)之間相似度的平均值,將其劃分為k個(gè)聚類。
在本文WLAN安全監(jiān)測(cè)中,所要監(jiān)測(cè)的數(shù)據(jù)不僅數(shù)量多,而且類型不統(tǒng)一,可以采用K-means 算法從網(wǎng)絡(luò)大數(shù)據(jù)n個(gè)對(duì)象中隨機(jī)選取k個(gè)對(duì)象作為初始聚類中心,被選取的對(duì)象屬性特征較明顯,且不同于其他對(duì)象。以被選取對(duì)象到初始聚類中心的距離為劃分依據(jù),將符合條件的對(duì)象劃分在同一個(gè)聚類內(nèi)。通過計(jì)算就會(huì)有新的聚類產(chǎn)生,并對(duì)新產(chǎn)生的聚類計(jì)算求平均值,以此類推重復(fù)計(jì)算,則會(huì)有若干個(gè)新的聚類產(chǎn)生和若干個(gè)新的距離出現(xiàn),當(dāng)標(biāo)準(zhǔn)測(cè)度函數(shù)開始收斂時(shí)停止計(jì)算,此時(shí)得到的數(shù)即為最佳準(zhǔn)確度的平均值。
K-means算法是根據(jù)數(shù)據(jù)間的相似度進(jìn)行劃分的一種方法,該算法將采集到的網(wǎng)絡(luò)大數(shù)據(jù)中的n個(gè)對(duì)象分為k個(gè)簇,這些簇之間具有明顯的屬性相似度,并且差異性也有明顯的不同。對(duì)每一個(gè)簇中的數(shù)據(jù)計(jì)算求平均值,得到具有最佳準(zhǔn)確度的簇。通過此算法將WLAN 環(huán)境中所有的數(shù)據(jù)進(jìn)行聚簇分類后,可以得到合法信息的簇和入侵信息的簇,將入侵信息篩選出來,以此達(dá)到保護(hù)WLAN中正常用戶的信息安全性和完整性的目的。
在K-means算法計(jì)算過程中,采用均方差作為標(biāo)準(zhǔn)測(cè)度函數(shù)來求平均值,標(biāo)準(zhǔn)測(cè)度函數(shù)見式(1):
式中,xj表示網(wǎng)絡(luò)中某一數(shù)據(jù)點(diǎn);Ci為聚類中心;mi為聚類的平均值。
K-means 聚類算法的優(yōu)點(diǎn)很多,但是在計(jì)算過程中缺點(diǎn)也很明顯。例如,k值需要在進(jìn)行聚類計(jì)算之前就給出,對(duì)聚類初始中心的依賴性較大,對(duì)于WLAN 環(huán)境下數(shù)據(jù)量巨大的計(jì)算,該算法在計(jì)算過程中要花費(fèi)大量的時(shí)間。這也在一定程度上阻礙了K-means 聚類算法的應(yīng)用范圍。
K-means聚類算法對(duì)數(shù)據(jù)類型為密集型數(shù)據(jù)[5]、所有數(shù)據(jù)之間有明顯的類別差異的這類數(shù)據(jù)進(jìn)行聚類計(jì)算較簡(jiǎn)便,在網(wǎng)絡(luò)安全監(jiān)測(cè)中也可以取得很好的效果。但是在實(shí)際環(huán)境中,安全監(jiān)測(cè)網(wǎng)絡(luò)數(shù)據(jù)包的數(shù)據(jù)通常都是隨機(jī)選取的,尚無顯性的規(guī)律可循,就要對(duì)其進(jìn)行聚類劃分,此時(shí)利用K-means聚類算法來選取聚類中心就比較困難了。因?yàn)檫€沒有確定k的值,所以聚類的結(jié)果也是不確定的。再加上K-means 聚類算法在處理密集型數(shù)據(jù)時(shí)效果較好,對(duì)于離散型數(shù)據(jù)[6]計(jì)算過程較為繁雜,不能很好地處理,大大地限制了其應(yīng)用范圍。
為了更好地監(jiān)測(cè)WLAN 中的異常行為,本文對(duì)Kmeans算法中的數(shù)據(jù)預(yù)處理、初始中心選取和k值確定這三面做出優(yōu)化調(diào)整。
(1) 數(shù)據(jù)預(yù)處理。
網(wǎng)絡(luò)中的大數(shù)據(jù)具有兩種屬性,一是連續(xù)型數(shù)據(jù),另一種是如服務(wù)協(xié)議和服務(wù)名稱一類的離散型數(shù)據(jù)。為了適應(yīng)本文算法,更利于對(duì)數(shù)據(jù)的挖掘,這里將所有離散型數(shù)據(jù)進(jìn)行預(yù)處理,轉(zhuǎn)換為方便計(jì)算的數(shù)值型數(shù)據(jù),對(duì)離散型數(shù)據(jù)的定義過程如下所示:
定義1:在網(wǎng)絡(luò)報(bào)警數(shù)據(jù)庫(kù)D中含有w個(gè)警告記錄集T={T1,T2,…,Tw}(w≥1),由r個(gè)特征屬性構(gòu)成其屬性集X,X={X1,X2,…,Xr}并且滿足原則X=Xc Xd和XcXd=φ,其中Xd為數(shù)值型數(shù)據(jù)。D中的所有警告記錄Ti都是由r維屬性構(gòu)成的,那么則有:Ti=(xi1,xi2,…,xir)。
可以通過計(jì)算所有數(shù)據(jù)之間的距離來計(jì)算數(shù)據(jù)之間的相似度,這里本文采用歐氏距離來計(jì)算。
定義2:如果Ti和Tj為分別為警告記錄中的任意兩條記錄,那么就可以通過歐式距離來計(jì)算Ti與Tj之間的相似度距離Sim(Ti,Tj)為:
其中,Ti與Tj之間的字符型屬性的相似度距離表示為:
其中,q 表示字符型屬性個(gè)數(shù),1≤q≤r,ij,S(xih,xjh)表示第h個(gè)字符屬性的相似度距離。Ti與Tj之間的數(shù)值型屬性的相似度距離為:
式中,p表示數(shù)值型屬性個(gè)數(shù),且有1≤p≤r,i≠1。
定義3:假定聚類集C={Ci}{i=1,2,…,k};Ci={Tf,Tl,…,Tg}為第i個(gè)聚類內(nèi)包含l個(gè)警告記錄。
定義4:ri可表示為ri+rid+ric,其中,rid表示為數(shù)值屬性的聚類中心,其值的大小取決于警告記錄內(nèi)所對(duì)應(yīng)的屬性平均值,即:
由警告記錄內(nèi)屬性頻率最高的值來確定字符屬性聚類中心的值,即:
定義5:通過計(jì)算聚類中心rj的相似度,就可得到Ti和Cj的相似度的值,計(jì)算過程如下:
最小距離為:
定義6:任意兩個(gè)聚類Ci和Cj之間最小相似度距離可以表示為:
包含l 個(gè)數(shù)據(jù)對(duì)象的第Ci類內(nèi)數(shù)據(jù)對(duì)象相似度平均值SWCi可表示為,式中Avg為算數(shù)平均值求解函數(shù):
定義7:按照Ti與類別的最大相似度距離為依據(jù),對(duì)數(shù)據(jù)進(jìn)行劃分。按照與聚類中心距離最近為依據(jù),可得到這個(gè)最大相似度距離為:
定義8:記錄分布密度函數(shù)di=,其中zi=,di的值越大,對(duì)后期聚類的結(jié)果影響就越大。
(2) 初始聚類中心的確定。
由于樣本點(diǎn)的密度和聚類中心的相似度會(huì)對(duì)初始聚類中心的確定產(chǎn)生一定程度的影響,所以這里選擇密度較高、相似度較大的聚類來進(jìn)行計(jì)算,從D中隨機(jī)選取q個(gè)數(shù)據(jù)子集D1,D2,…,Dq,每個(gè)子集含有n'條記錄,n'=(t,n'n),利用FindM(D,q,n')函數(shù),得到r1、r2、r3三個(gè)初始聚類中心。
FindM(D,q,n')函數(shù)計(jì)算過程如下:對(duì)隨機(jī)選取的q個(gè)數(shù)據(jù)子集Dj(1≤j≤q)進(jìn)行遍歷,根據(jù)定義8,可得到Dj各記錄的分布密度為di(1≤i≤n'),rj=Max(di),并根據(jù)定義4得到{rj}的聚類中心設(shè)為r1。根據(jù)定義2計(jì)算Sim(r1,rj),得到Max(Sim(r1,rj))設(shè)為r2。同理,計(jì)算,Sim(r2,rj),r3=Max(Sim(r1,rj)+Sim(r2,rj))輸出初始聚類中心r1、r2、r3。
(3) 新聚類的產(chǎn)生和k值的確定。
通過計(jì)算得到類間相似度距離最小和類內(nèi)相似度最大的結(jié)果[7]。為了使k值能夠按照類內(nèi)相似度距離最小和類間相似度距離最大為標(biāo)準(zhǔn)進(jìn)行劃分,在計(jì)算過程中隨時(shí)變換k的值,計(jì)算過程如圖2所示。
在運(yùn)用K-means算法求解過程中,首先,隨機(jī)選取k個(gè)對(duì)象,根據(jù)每個(gè)對(duì)象與聚類中心距離最近的方式進(jìn)行聚類劃分[8];然后,重復(fù)計(jì)算對(duì)象的聚類中心,當(dāng)準(zhǔn)確度函數(shù)開始收斂時(shí)停止計(jì)算。
基于K-means 聚類算法的WLAN 自動(dòng)化接入安全監(jiān)測(cè)模型如圖3所示。
監(jiān)測(cè)模型可分為兩個(gè)階段來設(shè)計(jì),一是訓(xùn)練階段,另一個(gè)是監(jiān)測(cè)階段。
在監(jiān)測(cè)模型的訓(xùn)練階段,首先要抓取WLAN環(huán)境中的正常行為數(shù)據(jù),將可以反映網(wǎng)絡(luò)狀態(tài)安全的特征數(shù)據(jù)挑選出來,為構(gòu)建安全監(jiān)測(cè)模型準(zhǔn)備所需要的安全行為數(shù)據(jù)集。其次,將抓取到的所有數(shù)據(jù)通過Hash函數(shù)進(jìn)行預(yù)處理,將特征數(shù)據(jù)轉(zhuǎn)化為監(jiān)測(cè)模型可以識(shí)別和處理的數(shù)據(jù)形式以適應(yīng)本文的算法分析,需要最后運(yùn)用K-means 聚類算法計(jì)算預(yù)處理后的特征數(shù)據(jù),完成聚類劃分,構(gòu)建數(shù)據(jù)樹形結(jié)構(gòu),完成對(duì)所有數(shù)據(jù)的訓(xùn)練,從而完成安全行為數(shù)據(jù)基準(zhǔn)庫(kù)的構(gòu)建。
監(jiān)測(cè)模型到了第二階段,也就是監(jiān)測(cè)階段:
首先,要對(duì)WLAN環(huán)境中采集到的正常行為數(shù)據(jù)進(jìn)行監(jiān)控,以確保所選取的待測(cè)特征數(shù)據(jù)是準(zhǔn)確無誤的。
其次,利用Hash函數(shù)對(duì)特征數(shù)據(jù)完成類別轉(zhuǎn)換。然后,將數(shù)據(jù)集里的數(shù)據(jù)按照K-means 聚類算法,選取不同的特征進(jìn)行聚類劃分。利用在訓(xùn)練階段構(gòu)建的樹形結(jié)構(gòu)尋找與k值鄰近的對(duì)象。最后,利用直推式異常檢測(cè)算法計(jì)算特征數(shù)據(jù),再對(duì)比正常行為數(shù)據(jù)基準(zhǔn)庫(kù),得到p 值的結(jié)果,對(duì)比兩次計(jì)算的結(jié)果就可以判斷出接入WLAN的用戶是否存在異常信息。
利用直推式異常檢測(cè)算法可以對(duì)網(wǎng)絡(luò)采集到的原始數(shù)據(jù)通過訓(xùn)練進(jìn)行隨機(jī)性檢測(cè)和置信度計(jì)算,將所得的p值與聚類后的數(shù)據(jù)進(jìn)行對(duì)比分析,如果p值比安全行為數(shù)據(jù)基準(zhǔn)庫(kù)的空間值大,說明其類屬于接入WLAN正常用戶的可能性就越大。
為了驗(yàn)證本文方法在WLAN 自動(dòng)化接入過程中的安全監(jiān)測(cè)性能,以WLAN 網(wǎng)絡(luò)安全評(píng)測(cè)基準(zhǔn)為基礎(chǔ),將文獻(xiàn)[1]、文獻(xiàn)[2]和本文方法對(duì)WLAN自動(dòng)化接入的安全監(jiān)測(cè)進(jìn)行仿真實(shí)驗(yàn)。
在實(shí)驗(yàn)環(huán)境中,記錄的屬性值包括44個(gè),字符屬性包括8個(gè)。在網(wǎng)絡(luò)數(shù)據(jù)庫(kù)中,隨機(jī)抽取5個(gè)數(shù)據(jù)子集作為樣本數(shù)據(jù),其中每個(gè)子集中包含100 個(gè)信息記錄,以此為實(shí)驗(yàn)環(huán)境進(jìn)行仿真實(shí)驗(yàn)測(cè)試。數(shù)據(jù)樣本如表1所示。
表1 數(shù)據(jù)樣本
將文獻(xiàn)[1]、文獻(xiàn)[2]方法與本文方法在監(jiān)測(cè)率、誤檢率、監(jiān)測(cè)時(shí)間上進(jìn)行對(duì)比,實(shí)驗(yàn)結(jié)果如表2-表4所示。
根據(jù)表2-表4建立更為直觀的圖4,可以看出本文方法不管是在監(jiān)測(cè)率、誤檢率、監(jiān)測(cè)時(shí)間方面分別為85.11%、14.89%、126s,結(jié)果都優(yōu)于文獻(xiàn)[1]、文獻(xiàn)[2]方法。其中,文獻(xiàn)[1]方法最差,文獻(xiàn)[2]方法次之。主要是因?yàn)楸疚姆椒ㄔ跀?shù)據(jù)處理方面將不易計(jì)算的離散型數(shù)據(jù)考慮在內(nèi),使影響監(jiān)測(cè)結(jié)果的誤差降到最小。
表2 文獻(xiàn)[1]方法
表3 文獻(xiàn)[2]方法
表4 本文方法
由于無線局域網(wǎng)固有的特性使一些不法分子有機(jī)可乘,因而存在很多的安全隱患,即使目前已經(jīng)有很多關(guān)于這方面的研究,但是都有其狹隘性。本文在此基礎(chǔ)上,提出了基于K-means 算法的無線局域網(wǎng)自動(dòng)化接入安全監(jiān)測(cè)方法。在K-means算法的基礎(chǔ)上對(duì)數(shù)據(jù)預(yù)處理、聚類中心的選取和確定k值等方面做了優(yōu)化改進(jìn),使其計(jì)算過程更簡(jiǎn)便,在實(shí)際應(yīng)用中的范圍更廣,并且可以很好地處理離散型數(shù)據(jù)。以優(yōu)化后的K-means 算法為基礎(chǔ)構(gòu)建WLAN自動(dòng)化接入安全監(jiān)測(cè)模型,將采集到的網(wǎng)絡(luò)數(shù)據(jù)分別進(jìn)行訓(xùn)練和監(jiān)測(cè),并采用直推式異常檢測(cè)算法與正常行為數(shù)據(jù)基準(zhǔn)庫(kù)進(jìn)行對(duì)比,完成WLAN 的安全監(jiān)測(cè)。仿真實(shí)驗(yàn)結(jié)果表明,本文方法監(jiān)測(cè)效率和準(zhǔn)確度較高,在WLAN安全監(jiān)測(cè)方面可以很好地保障正常用戶上網(wǎng)安全。在下一步的研究工作中,將會(huì)不斷完善無線局域網(wǎng)的安全監(jiān)測(cè)方法,不斷增加新的安全策略來保障無線局域網(wǎng)用戶的安全使用。
自動(dòng)化技術(shù)與應(yīng)用2022年10期