李力恒,王曉磊
(黑龍江中醫(yī)藥大學(xué) 醫(yī)學(xué)信息工程學(xué)院,黑龍江 哈爾濱 150040)
計算機(jī)與互聯(lián)網(wǎng)的持續(xù)發(fā)展使得用戶數(shù)據(jù)信息不斷增加,開發(fā)網(wǎng)絡(luò)下的信息可被隨時訪問,網(wǎng)絡(luò)信息安全問題也越來越受關(guān)注,開放網(wǎng)絡(luò)的權(quán)限訪問問題更加重要[1]。為避免用戶隱私數(shù)據(jù)被非法用戶訪問,要對數(shù)據(jù)信息的訪問權(quán)限進(jìn)行一定的權(quán)限控制,在確保對資源瀏覽獲取有效訪問權(quán)限的同時防止非法用戶進(jìn)行權(quán)限訪問,避免部分隱私信息的非授權(quán)傳播[2]。因此,數(shù)據(jù)挖掘和入侵檢測技術(shù)也不斷提高。
傳統(tǒng)的實用性挖掘方法僅將所統(tǒng)計獲取的數(shù)據(jù)信息進(jìn)行已有系統(tǒng)攻擊狀況的比較,如文獻(xiàn)[3]中的基于譜聚類的訪問控制異常權(quán)限配置挖掘方法,此種情況與信息安全準(zhǔn)則相悖,且此種方法的匹配效率較低,同時對于某些未知信息或現(xiàn)有入侵方式的變更無法進(jìn)行精確地挖掘檢測與分析。文獻(xiàn)[4]提出一種基于SOM聚類的多模態(tài)醫(yī)學(xué)圖像大數(shù)據(jù)挖掘算法,醫(yī)學(xué)圖像數(shù)據(jù)自身冗余度不再無限攀升,幀率重疊行為得到有效控制。文獻(xiàn)[5]提出了一種復(fù)雜高維數(shù)據(jù)中異常點挖掘算法,從算法精度、ROC曲線面積及運行時間3個角度分析了8個典型數(shù)據(jù)集,挖掘其中的高維數(shù)據(jù)異常點。文獻(xiàn)[6]提出了一種Android系統(tǒng)中的權(quán)限異常檢測方法,該方法通過FP-growth算法挖掘所配置的各個權(quán)限之間的關(guān)聯(lián)性,根據(jù)關(guān)聯(lián)性構(gòu)建FP-tree檢測模型,對權(quán)限進(jìn)行惡意性判決。然而上述幾種方法忽略了權(quán)限配置過程中包含的錯誤權(quán)限,使對異常權(quán)限的挖掘時間大大增加。文獻(xiàn)[7]設(shè)計了一種挖掘加權(quán)最大頻繁序列的算法,該算法利用頻繁項出現(xiàn)的頻率賦予不同頻繁序列不同的權(quán)重,通過引入頻繁加權(quán)序列的定義篩選出最大頻繁序列,使挖掘結(jié)果具有反單調(diào)性,提高了挖掘準(zhǔn)確性。文獻(xiàn)[8]提出了一種基于函數(shù)調(diào)用關(guān)系的應(yīng)用權(quán)限泄露漏洞挖掘方法,該方法分析了常見的權(quán)限泄露漏洞的形成原理,在分析可疑路徑的基礎(chǔ)上,對其中的動態(tài)暴露組進(jìn)行偵查。然而上述2種方法在挖掘過程中具有很大的盲目性,導(dǎo)致挖掘效率較低。文獻(xiàn)[9]設(shè)計了一種大規(guī)模高維數(shù)據(jù)集中局部異常數(shù)據(jù)挖掘算法,該算法將FFD技術(shù)應(yīng)用于異常信息挖掘中,利用FFD的強(qiáng)控制能力實現(xiàn)數(shù)據(jù)傳輸與挖掘進(jìn)程的數(shù)據(jù)互通,結(jié)合FIFO挖掘思想實現(xiàn)數(shù)據(jù)的本地化與異常數(shù)據(jù)挖掘。文獻(xiàn)[10]提出了一種基于改進(jìn)Eclat算法的資源池節(jié)點異常模式挖掘方法,利用Eclat算法通過轉(zhuǎn)換資源池節(jié)點數(shù)據(jù)格式、建立非頻繁項集減少序列的連接次數(shù),構(gòu)建信息存儲體,再利用關(guān)聯(lián)規(guī)則算法挖掘其中各信息之間的關(guān)聯(lián),篩選出其中的異常模式。雖然上述2種方法在挖掘效率方面優(yōu)勢較為明顯,但由于均是先將數(shù)據(jù)進(jìn)行處理或建立儲存體,導(dǎo)致挖掘結(jié)果的準(zhǔn)確率較低。
針對現(xiàn)有異常權(quán)限配置挖掘算法存在的挖掘時間長、效率低、精度差的問題,本文提出一種NetLinX開放網(wǎng)絡(luò)下異常權(quán)限配置挖掘算法。首先對挖掘數(shù)據(jù)進(jìn)行數(shù)據(jù)預(yù)處理,數(shù)據(jù)凈化、會話與用戶識別及路徑補(bǔ)充處理,降低數(shù)據(jù)挖掘的冗雜程度,經(jīng)過識別排除其他干擾數(shù)據(jù)影響,再進(jìn)一步進(jìn)行異常權(quán)限配置的檢測,提高了挖掘系統(tǒng)的效率,最后將檢測后的數(shù)據(jù)信息進(jìn)行挖掘,綜合利用 lncLOF與OPTICS 方式進(jìn)行數(shù)據(jù)挖掘,減少挖掘信息數(shù)據(jù)量,縮減挖掘時長, 進(jìn)而提升整體異常權(quán)限配置挖掘效果。
權(quán)限配置數(shù)據(jù)預(yù)處理的主要目的是將NetLinX開放網(wǎng)絡(luò)下的數(shù)據(jù)信息轉(zhuǎn)化為較為準(zhǔn)確可靠、便于挖掘的數(shù)據(jù)。這一過程以縮短挖掘時間,提高挖掘效率,該過程包括數(shù)據(jù)凈化、會話和用戶識別、路徑補(bǔ)充3個部分。
在數(shù)據(jù)凈化過程中,需進(jìn)行關(guān)聯(lián)規(guī)則與系統(tǒng)訪問的初始化設(shè)計,并檢測其有效性是否能夠較為精準(zhǔn)的顯示出用戶對于網(wǎng)絡(luò)信息的訪問流程[11]。首先,利用運行系統(tǒng)下載文件,在下載過程中相應(yīng)增加記錄數(shù)量。一般情況下,用戶下載的HTML頁面會產(chǎn)生多條記錄,由于頁面中存在其他數(shù)據(jù)信息的使用,圖文下載過程中會出現(xiàn)增加記錄的下載,此時需要進(jìn)行用戶頁面請求,與代表意圖相匹配,并同時應(yīng)用于用戶網(wǎng)絡(luò)信息的訪問與數(shù)據(jù)統(tǒng)計。在訪問后,確保所挖掘的數(shù)據(jù)具備任務(wù)所需的挖掘意義,同時對于無關(guān)數(shù)據(jù)與冗余信息進(jìn)行系統(tǒng)消除,并相應(yīng)的進(jìn)行記錄的特級刪減[12]。在確立請求之后,對其數(shù)據(jù)信息進(jìn)行保留分析處理,同時定義剪切規(guī)則編制,預(yù)先設(shè)定專門的相應(yīng)網(wǎng)站進(jìn)行數(shù)據(jù)分類,并建立對應(yīng)規(guī)則信息庫,根據(jù)所需挖掘檢測的網(wǎng)站分類進(jìn)行規(guī)則信息庫的數(shù)據(jù)清理,也可根據(jù)自身需求進(jìn)行信息刪減,完成整體數(shù)據(jù)凈化過程。
利用用戶多次訪問記錄進(jìn)行單個會話的劃分,根據(jù)數(shù)據(jù)超時原則檢測2個頁面請求之間的時差是否超出規(guī)定界限,如超過,則開始新的會話。此外,識別過程需利用不斷變化的本地存儲與系統(tǒng)服務(wù)器,基于站點進(jìn)行啟發(fā)規(guī)則的技術(shù)識別,并驗證用戶地址是否相同。如果用戶的訪問記錄或規(guī)則系統(tǒng)發(fā)生改變,則每個系統(tǒng)服務(wù)器代表不同的訪問用戶,接著將訪問系統(tǒng)與設(shè)置站點結(jié)構(gòu)拓?fù)湎嘟Y(jié)合,構(gòu)建中心系統(tǒng)服務(wù)器訪問瀏覽途徑。若請求頁用戶與所訪問頁面無超鏈接聯(lián)系,則存在另一個擁有同樣用戶地址的用戶。在請求頁面相同的情況下,采取識別過濾方法,濾除用戶同時使用2種網(wǎng)絡(luò)進(jìn)行訪問或不經(jīng)過站點直接進(jìn)行輸入連接的情況[13],用戶識別結(jié)構(gòu)如圖1所示。

圖 1 用戶識別結(jié)構(gòu)圖Fig.1 User identification structure
在訪問過程中會出現(xiàn)訪問是否重要的請求確定記錄申請,在此情形下,需要將網(wǎng)絡(luò)記錄中不存在卻同時顯示用戶行為的信息補(bǔ)充,以此來完成對數(shù)據(jù)的預(yù)處理。若當(dāng)前所接收的請求與上一次的用戶頁面之間無超鏈接關(guān)系,則用戶存在使用按鈕調(diào)節(jié)緩存至頁面的情況,此時應(yīng)采用檢索引擎進(jìn)行請求確定頁數(shù)的指引,若在用戶訪問多條頁面中都存在包含當(dāng)前頁的連接請求,則將設(shè)定站點結(jié)構(gòu)進(jìn)行頁面代替,并通過此種方式將所遺漏的頁面請求補(bǔ)充至用戶會話頁面[14]。
在對數(shù)據(jù)預(yù)處理后,對權(quán)限配置過程的異常情況進(jìn)行檢測,對異常權(quán)限配置進(jìn)行規(guī)則匹配,再利用UPA繁復(fù)對權(quán)限信息進(jìn)行用戶相似度的聚類,由此獲得相似用戶訪問的集合。但在規(guī)則匹配和異常權(quán)限配置過程前,需對權(quán)限配置信息進(jìn)行預(yù)處理。這一預(yù)處理過程的對象為權(quán)限配置信息,將其劃分為不同的類簇并判斷異常權(quán)限信息的位置。這一過程能夠避免挖掘過程的盲目性,排除了其他數(shù)據(jù)的干擾,有效提高挖掘效率和精度。
在將異常權(quán)限配置進(jìn)行檢測之前,需對其進(jìn)行信息預(yù)處理,設(shè)定獨立的類簇種族,并構(gòu)造指數(shù)模式向量,利用指數(shù)模式向量中的不同參數(shù)判定異常權(quán)限的所在區(qū)域。若相對應(yīng)的位置模式向量的參數(shù)都為1,則指數(shù)模式向量中此參數(shù)存在位置也為1,剩余選取位置皆為0[15]。
將預(yù)先設(shè)置的異常權(quán)限配置信息進(jìn)行數(shù)據(jù)規(guī)則篩選,并將篩選結(jié)果進(jìn)行集合組排列。若某個權(quán)限被其中一個特定用戶所訪問,則賦予此匹配權(quán)限用戶的存在比值小于指定閾值距離a,并將此位置設(shè)定為正確位置[16]。若某個權(quán)限被多個應(yīng)用用戶所使用,則當(dāng)前存在的用戶占取全部用戶的配備比值小于指定閾值。除此以外,當(dāng)剩余包括該權(quán)限特征的指定模式向量的交集存在2種情況:
1) 指定為該模式向量的子集,并設(shè)定權(quán)限配置為正常權(quán)限配置,不加以配置處理。
2) 若無指定為該模式向量的子集,并設(shè)定權(quán)限配置為異常權(quán)限配置,將此權(quán)限配置列入異常權(quán)限配置候選組中,并在各個權(quán)限配置方形陣中設(shè)置相應(yīng)位置為0。若在未被授權(quán)的用戶中出現(xiàn)比值小于指定閾值的情況,則將此類數(shù)據(jù)同時歸入異常權(quán)限配置數(shù)據(jù)集中,并在各個權(quán)限配置方形陣中設(shè)置相應(yīng)位置為1。
依據(jù)用戶與權(quán)限方形陣采取聚類方式進(jìn)行異常權(quán)限信息配置,不斷轉(zhuǎn)換方形陣中的配置規(guī)則,并得到數(shù)據(jù)轉(zhuǎn)置陣,利用類聚模式進(jìn)行交叉類聚匹配,獲取類聚結(jié)果后根據(jù)所選取的規(guī)則制造所需的異常權(quán)限配置數(shù)據(jù)集[17]。
在對全部結(jié)果進(jìn)行綜合收集處理后,獲取新的用戶權(quán)限方形陣,并將該陣作為異常權(quán)限配置的輸入框數(shù)據(jù)源實行綜合執(zhí)行,最終達(dá)到異常權(quán)限配置檢測后的交集數(shù)據(jù)為空時停止配置。
將以上檢測出的異常權(quán)限配置進(jìn)行挖掘,在某個數(shù)據(jù)集中,利用異常數(shù)據(jù)集定義,將少數(shù)數(shù)據(jù)進(jìn)行綜合數(shù)據(jù)算法挖掘處理,可進(jìn)一步降低挖掘時間,進(jìn)而提高整體挖掘效率。
在算法的起始進(jìn)行OPTICS方法處理,將原始集合中的大量密集數(shù)據(jù)進(jìn)行聚類處理,并將松散數(shù)據(jù)集轉(zhuǎn)換為異常種簇,并持續(xù)分析處理,在異常種簇的數(shù)據(jù)中進(jìn)行內(nèi)部離群因子的計算[18]。接著對新加入的數(shù)據(jù)進(jìn)行OPTICS方法計算,記錄新加入數(shù)據(jù)與中心種簇之間的距離關(guān)系,記下哪個種簇離中心的距離最小。若此距離小于預(yù)定的數(shù)值參數(shù)Q,則可將該數(shù)據(jù)直接添加至該種簇中。若這些新添入的數(shù)據(jù)無法滿足正常種簇的條件,則將組合成新的種簇[19]。最后,比較以上計算出的離群因子,并選擇出異常數(shù)據(jù)的代表參數(shù)。具體過程如下:
1) 進(jìn)行算法數(shù)據(jù)輸入,設(shè)置總體數(shù)據(jù)集,其中需要進(jìn)行輸出的異常數(shù)據(jù)的整體數(shù)量為k。
2) 調(diào)節(jié)OPTICS與IncLOF方法,將輸入的數(shù)據(jù)集進(jìn)行類聚處理,并將橫坐標(biāo)設(shè)定為結(jié)果數(shù)據(jù)中的序列,縱坐標(biāo)設(shè)定為可達(dá)距離。
3) 按照可達(dá)距離設(shè)置的特定參數(shù)閾值r在縱坐標(biāo)中沿著平行于橫坐標(biāo)的位置進(jìn)行直線設(shè)置,在直線組合成的點集中劃分陡峰與密集數(shù)據(jù)綜合位置,陡增的峰尖為邊緣點,并沿不同的陡峰中心進(jìn)行縱向切割,2個相近峰間形成常種簇[20]。
4) 當(dāng)出現(xiàn)大量數(shù)據(jù)時,分別計算每個種簇的中心對象與系統(tǒng)中心對象的距離,并記錄下最小距離,若最小距離小于預(yù)先設(shè)定的閾值距離a,則將組合成一個新式異常種簇,并持續(xù)進(jìn)行以上步驟的操作,直至全部新增數(shù)據(jù)都被放置至種簇中[21]。
5) 最終進(jìn)行離群因子的LOF計算,根據(jù)其大小進(jìn)行數(shù)據(jù)排序運算并輸出,輸出結(jié)果則為所需異常權(quán)限配置數(shù)據(jù)。其輸出公式為z=ak+Q。
為檢測NetLinX開放網(wǎng)絡(luò)下異常權(quán)限配置挖掘算法的實際應(yīng)用效果,將該算法與傳統(tǒng)算法進(jìn)行對比,從挖掘精確度和挖掘效率2個角度分析不同挖掘算法的有效性。設(shè)定實驗參數(shù)如表1所示。

表 1 實驗參數(shù)表Tab.1 Experimental parameter table
將NetLinX開放網(wǎng)絡(luò)下異常權(quán)限配置挖掘算法的挖掘結(jié)果與文獻(xiàn)[3]中的基于譜聚類的訪問控制異常權(quán)限配置挖掘算法及文獻(xiàn)[5]中的Android系統(tǒng)中權(quán)限異常檢測算法的挖掘效果進(jìn)行比較,得到的挖掘精確度對比與挖掘算法效率對比。挖掘精確度對比如圖2所示。

圖 2 挖掘精確度對比圖Fig.2 Mining accuracy comparison chart
從圖2可知,在相同參數(shù)條件下,由于本文算法采取獨立模型形式,在挖掘過程中減少了其他因素的阻礙,并選用Jaccard距離測試降低了環(huán)境因素影響,進(jìn)一步提高了整體算法的挖掘力度,進(jìn)而促使本文算法挖掘精度高于傳統(tǒng)算法。而文獻(xiàn)[3]算法受其他因素影響較大,無法確保系統(tǒng)正常運行,導(dǎo)致挖掘精確度較低。挖掘算法效率對比如圖3所示。

圖 3 挖掘算法效率對比圖Fig.3 Mining algorithm efficiency comparison chart
從圖3可知,當(dāng)挖掘時間為20 s時,本文挖掘算法效率為52%,而文獻(xiàn)[5]算法的挖掘效率僅為15%。此種差異形成的原因為本文算法利用Smooth識別方法,對初始數(shù)據(jù)進(jìn)行識別,一定程度上降低了挖掘系統(tǒng)的識別壓力,減少了挖掘時間,提高整體挖掘效率。
在此后的挖掘中, 隨挖掘時間的增加, 本文挖掘算法的挖掘效率持續(xù)高于傳統(tǒng)算法的挖掘效率, 造成此種差異的原因在于本文挖掘算法相較傳統(tǒng)挖掘算法, 采用孤立點查詢, 排除非測試點的干擾, 能夠更有效的完成挖掘任務(wù)。 而文獻(xiàn)[5]算法的挖掘數(shù)據(jù)較為繁雜, 對于挖掘數(shù)據(jù)的分類整理效果較差。
經(jīng)過以上的對比分析可知,本文挖掘算法的挖掘精確度與挖掘效率高于傳統(tǒng)算法,在較大程度上阻止了非測試因素與其他干擾因素的影響,降低了數(shù)據(jù)冗雜度,提高了挖掘的整體效率,具備更加廣闊的使用空間。
相較于傳統(tǒng)算法,本文算法在較大程度上排除了其他數(shù)據(jù)的干擾,降低了數(shù)據(jù)存在的數(shù)量度,進(jìn)而提高了挖掘的效率,能夠較為清晰地提供數(shù)據(jù)來源,減少挖掘時間,為使用者提供便利的挖掘,具備更加優(yōu)越的發(fā)展空間與使用市場。然而,現(xiàn)有挖掘算法在權(quán)限配置過程包含的錯誤權(quán)限的問題暫時并未得到解決,定向挖掘結(jié)果還未達(dá)到理想狀態(tài)。因此,在今后的研究中,將進(jìn)一步提高本方法的定位挖掘處理能力,擴(kuò)大該方法的應(yīng)用范圍。