雷 璟
(中國(guó)電子科學(xué)研究院,北京 100041)
網(wǎng)絡(luò)安全體系經(jīng)過(guò)了傳統(tǒng)的“非黑即白”的兩代體系發(fā)展,目前已經(jīng)發(fā)展到通過(guò)查找行為的方式來(lái)判斷用戶的行為是否可疑。第一代網(wǎng)絡(luò)安全體系是通過(guò)“黑名單”的方式來(lái)對(duì)病毒木馬進(jìn)行查殺。第二代網(wǎng)絡(luò)安全體系是采用“白名單”的機(jī)制來(lái)判斷用戶的行為是否可信。第三代網(wǎng)絡(luò)安全體系則是運(yùn)用大數(shù)據(jù)、人工智能、機(jī)器學(xué)習(xí)等技術(shù)手段對(duì)用戶的行為數(shù)據(jù)進(jìn)行采集、分析和研判,對(duì)用戶的異常行為進(jìn)行預(yù)警。
開(kāi)展用戶行為特征提取及安全預(yù)警建模技術(shù)的研究,通過(guò)突破用戶行為特征提取技術(shù)、用戶行為建模技術(shù)、用戶異常行為感知和檢測(cè)技術(shù),旨在提取用戶行為特征和建立用戶行為模型,用于識(shí)別和篩選異常的或特定類型的訪客,以便盡早發(fā)現(xiàn)異常行為訪客的攻擊威脅并進(jìn)行安全預(yù)警和重點(diǎn)監(jiān)測(cè),變“被動(dòng)防御”為“主動(dòng)防御”,提升網(wǎng)絡(luò)的安全防護(hù)水平。
本文通過(guò)對(duì)基于異常行為感知的安全預(yù)警技術(shù)的國(guó)內(nèi)外研究現(xiàn)狀進(jìn)行分析,總結(jié)出來(lái)存在的主要問(wèn)題。提出了一種新的面向聚類模式評(píng)估的行為特征提取方法、一種基于會(huì)話關(guān)聯(lián)分析的異常用戶行為檢測(cè)方法,能夠?qū)崿F(xiàn)對(duì)用戶異常行為的感知與判斷,對(duì)網(wǎng)絡(luò)異常行為進(jìn)行安全告警和追蹤分析,為各業(yè)務(wù)部門以及管理者提供輔助決策支持。
網(wǎng)絡(luò)用戶行為分析的研究最早由Denning提出了異常檢測(cè)的思想。異常檢測(cè)是根據(jù)處理系統(tǒng)的審計(jì)日志,然后按照處理結(jié)果來(lái)判斷異常出線與否,最后對(duì)結(jié)果進(jìn)行統(tǒng)計(jì)。王景中等人提出了網(wǎng)絡(luò)異常行為自動(dòng)識(shí)別技術(shù)。通過(guò)讓網(wǎng)絡(luò)自己學(xué)習(xí)異常行為的識(shí)別,并將新的異常行為存入異常行為特征庫(kù)當(dāng)中,以便網(wǎng)絡(luò)進(jìn)行異常檢測(cè)。傳統(tǒng)的基于監(jiān)督學(xué)習(xí)的建模方法[1-2]是在特定的場(chǎng)景下來(lái)建立一些準(zhǔn)確的用戶行為模型,為了獲得足夠的訓(xùn)練樣本,需要通過(guò)手工的方式去標(biāo)記用戶的行為序列,帶來(lái)了很大的人力成本。
后來(lái),人們又提出了基于無(wú)(半)監(jiān)督的建模方法[3-4]。這類方法能夠自動(dòng)或半自動(dòng)地構(gòu)建用戶的行為模型,減少了人力成本,算法的適用性也得到增強(qiáng)。
綜合國(guó)內(nèi)外相關(guān)資料和已有的產(chǎn)品可以看出,網(wǎng)絡(luò)用戶行為分析安全預(yù)警技術(shù)能夠發(fā)現(xiàn)網(wǎng)絡(luò)當(dāng)中的一些異常情況,有利于網(wǎng)絡(luò)的自我保護(hù)。在提高系統(tǒng)自主管理能力、降低網(wǎng)絡(luò)異常狀況的復(fù)雜性等方面顯現(xiàn)出了強(qiáng)大的優(yōu)勢(shì)。而自動(dòng)識(shí)別技術(shù)則從智能識(shí)別的角度識(shí)別網(wǎng)絡(luò)當(dāng)中一些未知的異常行為,并將新的異常行為添加在異常行為庫(kù)當(dāng)中。因此,網(wǎng)絡(luò)用戶行為分析安全預(yù)警技術(shù)將有效地防御網(wǎng)絡(luò)當(dāng)中常見(jiàn)的、未知的網(wǎng)絡(luò)異常。
描述網(wǎng)絡(luò)用戶行為的特征量種類繁多,包括網(wǎng)絡(luò)流量數(shù)據(jù)特征、用戶操作信息特征、主機(jī)行為特征等大類。
針對(duì)不同類型的行為特征數(shù)據(jù)可以采用不同的特征提取技術(shù),下面分別介紹一下。
(1)依據(jù)網(wǎng)絡(luò)通信行為進(jìn)行特征提取
網(wǎng)絡(luò)通信流量數(shù)據(jù)通常是通信行為的具體反映,比較常見(jiàn)的數(shù)據(jù)特征提取方法是直接提取部分的通信數(shù)據(jù),同時(shí)處理數(shù)據(jù)也就得到入侵檢測(cè)系統(tǒng)的輸入特征。
列舉個(gè)例子,如果黑客是通過(guò)功能碼來(lái)執(zhí)行對(duì)某個(gè)網(wǎng)站發(fā)起惡意攻擊的操作,通過(guò)解析異常行為的通信模式,選擇黑客的12個(gè)行為特征量,作為入侵檢測(cè)系統(tǒng)的輸入。網(wǎng)絡(luò)通信行為選擇特征量如表1所示。
表1 網(wǎng)絡(luò)通信行為選擇特征量
據(jù)此可以根據(jù)各種網(wǎng)絡(luò)攻擊行為,對(duì)各種網(wǎng)絡(luò)行為進(jìn)行特征提取,判斷其行為是否異常。
(2)基于網(wǎng)絡(luò)流量結(jié)構(gòu)穩(wěn)定性的行為特征提取
通過(guò)網(wǎng)絡(luò)流量的各個(gè)屬性上的變化可以反映出網(wǎng)絡(luò)的穩(wěn)定性,正常情況下網(wǎng)絡(luò)流量的各屬性在屬性值上具有較穩(wěn)定的分布。如果網(wǎng)絡(luò)流量發(fā)生擾亂或者突然變化幅度很大,則有可能在某些方面出現(xiàn)了異常,比如網(wǎng)絡(luò)被攻擊或惡意破壞。
2.1.2行為特征處理技術(shù)
從理論上來(lái)說(shuō),為了避免不同服務(wù)器、不同時(shí)間段帶來(lái)的差異,數(shù)據(jù)集最好是同一個(gè)服務(wù)器在一段較小的時(shí)間窗口內(nèi)的用戶記錄。但是,這樣會(huì)導(dǎo)致用戶行為數(shù)據(jù)集的稀疏,也會(huì)導(dǎo)致智能檢測(cè)算法的性能不佳。因此,需要對(duì)輸入的行為特征向量進(jìn)行處理,可以通過(guò)歸一化和區(qū)間對(duì)齊兩種方式進(jìn)行處理。
歸一化處理方法是對(duì)用戶在不同特定條件下的表現(xiàn)與該條件下的正常表現(xiàn)進(jìn)行比較,來(lái)判斷用戶行為是否異常,進(jìn)行歸一化特征處理。
而區(qū)間對(duì)齊處理方法則是通過(guò)對(duì)用戶行為進(jìn)行橫向和縱向的比較檢測(cè),橫向檢測(cè)是指將待檢測(cè)用戶與其他用戶行為進(jìn)行比較,而縱向檢測(cè)是指將用戶當(dāng)前行為與歷史行為進(jìn)行比較檢測(cè)。
用戶行為模型構(gòu)建是指構(gòu)建一個(gè)貼近真實(shí)實(shí)體對(duì)象行為的模型,并按照這種模型方便地構(gòu)造出一個(gè)行為上真實(shí)的虛擬實(shí)體對(duì)象[5]。網(wǎng)絡(luò)用戶行為模型構(gòu)建首先要從網(wǎng)絡(luò)中采集用戶行為數(shù)據(jù),對(duì)采集到的原始數(shù)據(jù)進(jìn)行預(yù)處理;然后對(duì)數(shù)據(jù)進(jìn)行分析處理,選擇行為構(gòu)建模型和算法,建立用戶的行為模型,用于識(shí)別和篩選攻擊者、特定類型的用戶。
網(wǎng)絡(luò)用戶行為分析常用方法包括正常行為的聚類分析方法,異常行為的分析方法,還有基于異常與正常行為之間相異度的方法[6-7]。
網(wǎng)絡(luò)用戶行為模型構(gòu)建主要包括以下方法:依據(jù)用戶的行為規(guī)則進(jìn)行行為建模、依據(jù)目標(biāo)對(duì)象進(jìn)行用戶行為建模、基于流特征統(tǒng)計(jì)的網(wǎng)絡(luò)用戶行為建模、基于模糊時(shí)序關(guān)聯(lián)模式的用戶行為建模和基于隱馬爾可夫的用戶行為建模方法。
其中,基于隱馬爾可夫的用戶行為建模方法是Xiang與Gong在文獻(xiàn)[8]中提出了一種新的行為建模與異常檢測(cè)方法。這種方法不僅解決了行為的時(shí)變問(wèn)題,而且能夠進(jìn)行實(shí)時(shí)的異常檢測(cè)。
網(wǎng)絡(luò)用戶行為異常檢測(cè)技術(shù)采用誤用檢測(cè)和異常檢測(cè)相結(jié)合的方法。誤用檢測(cè)是指通過(guò)異常行為的特征庫(kù),采用特征匹配的方法確定異常事件。誤用檢測(cè)的優(yōu)點(diǎn)是檢測(cè)的誤報(bào)率低,檢測(cè)快,但誤用檢測(cè)通常不能發(fā)現(xiàn)異常事件特征庫(kù)中沒(méi)有事先指定的異常行為,所以無(wú)法檢測(cè)層出不窮的新異常。異常檢測(cè)是指對(duì)用戶正常的行為習(xí)慣進(jìn)行建模,然后將用戶當(dāng)前的行為特征與行為模型庫(kù)中的特征進(jìn)行比較,如果兩者的偏差足夠大,則說(shuō)明發(fā)生了異常,然后更新網(wǎng)絡(luò)異常特征庫(kù)。誤用檢測(cè)的關(guān)鍵之處是建立盡可能全面的異常行為特征庫(kù),其比對(duì)檢測(cè)算法并不復(fù)雜。而異常檢測(cè)的關(guān)鍵之處不僅僅是建立正常行為模型,計(jì)算當(dāng)前行為的偏離度以及判斷是否屬于異常也是關(guān)鍵。
行為特征提取及安全預(yù)警系統(tǒng)的系統(tǒng)架構(gòu)如圖1所示。在系統(tǒng)架構(gòu)中,數(shù)據(jù)采集與預(yù)處理模塊,主要負(fù)責(zé)實(shí)時(shí)采集用戶行為數(shù)據(jù)源的數(shù)據(jù)。采集數(shù)據(jù)之后,進(jìn)行數(shù)據(jù)識(shí)別、數(shù)據(jù)清洗、數(shù)據(jù)離散化、歸一化和區(qū)間對(duì)齊等預(yù)處理工作。
圖1 系統(tǒng)架構(gòu)圖
用戶行為歷史數(shù)據(jù)按主題建立數(shù)據(jù)倉(cāng)庫(kù)和數(shù)據(jù)集市后用于用戶行為分析和行為特征提取與建模;用戶行為實(shí)時(shí)數(shù)據(jù)用于異常檢測(cè)與預(yù)警,并進(jìn)行存檔成為用戶行為歷史數(shù)據(jù)。
用戶行為分析、特征提取與建模以及異常檢測(cè)與預(yù)警模塊是整個(gè)架構(gòu)中的核心部分,其中用戶行為分析模塊主要進(jìn)行用戶行為習(xí)慣分析、用戶動(dòng)態(tài)分析、頁(yè)面訪問(wèn)分析、用戶關(guān)聯(lián)分析、用戶來(lái)源分析和用戶分布分析,分析結(jié)果以文字、表格和圖形的方式呈現(xiàn)給網(wǎng)絡(luò)安全管理員。
行為特征提取與建模模塊先對(duì)用戶行為歷史數(shù)據(jù)進(jìn)行用戶行為特征分類提取。在特征分類提取的基礎(chǔ)上,對(duì)特征進(jìn)行統(tǒng)一化、歸一化、時(shí)空對(duì)齊等處理工作。然后面向用戶行為建模需求構(gòu)建候選特征集,在候選特征集中采用基于鄰域分析的方法對(duì)特征進(jìn)行加權(quán)選擇。最后,采用基于行為規(guī)則、基于分析對(duì)象、模糊時(shí)序關(guān)聯(lián)和隱馬爾可夫等行為建模方法對(duì)用戶行為建模,并將模型結(jié)果存儲(chǔ)在行為模式庫(kù)中。
異常檢測(cè)與預(yù)警模塊采用誤用檢測(cè)和異常檢測(cè)相結(jié)合的兩層混合異常檢測(cè)模型,使用基于簇中心位置變化的異常檢測(cè)方法和基于K近鄰的異常檢測(cè)算法將用戶實(shí)時(shí)行為數(shù)據(jù)與行為模式庫(kù)中的模式進(jìn)行比對(duì)與檢測(cè),并將異常結(jié)果報(bào)告給界面模塊。
界面模塊負(fù)責(zé)完成監(jiān)聽(tīng)的結(jié)果可視化顯示、模式挖掘的結(jié)果顯示、異常分析報(bào)告顯示以及用戶命令的輸入等工作。系統(tǒng)配置和系統(tǒng)管理模塊負(fù)責(zé)系統(tǒng)中各種參數(shù)的設(shè)置、對(duì)數(shù)據(jù)庫(kù)的管理和維護(hù)等工作。
3.2.1用戶行為信息采集模塊
通過(guò)對(duì)網(wǎng)站頁(yè)面的廣告區(qū)域、菜單區(qū)域、商品列表、商品詳情頁(yè)、訂單填寫(xiě)頁(yè)、專題活動(dòng)頁(yè)等的數(shù)據(jù)統(tǒng)計(jì),了解用戶對(duì)某個(gè)功能、某個(gè)區(qū)域或某個(gè)活動(dòng)的使用程度和參與程度,從而實(shí)時(shí)采集用戶行為數(shù)據(jù),同時(shí)收集Web訪問(wèn)日志,將兩類數(shù)據(jù)流組合,輸出為用戶行為分析原始數(shù)據(jù)集。
通過(guò)網(wǎng)站前端交換機(jī)旁路導(dǎo)出網(wǎng)站訪問(wèn)流量,從網(wǎng)絡(luò)IP層、TCP/UDP層、應(yīng)用層各層對(duì)訪問(wèn)流量數(shù)據(jù)包進(jìn)行基于WAF和入侵檢測(cè)的流量分析。
3.2.2用戶行為分析模塊
用戶行為分析模塊主要包含行為習(xí)慣分析、用戶來(lái)源分析、用戶分布分析、用戶動(dòng)態(tài)分析、關(guān)聯(lián)分析、頁(yè)面訪問(wèn)分析等分析功能。
其中,行為習(xí)慣分析是通過(guò)用戶的行為進(jìn)行分析,如查看產(chǎn)品詳情、搜索行為、點(diǎn)擊關(guān)注某款產(chǎn)品的關(guān)注按鈕、購(gòu)買某種產(chǎn)品等這些行為以及行為觸發(fā)的人、時(shí)間、頻率分析出用戶最近在關(guān)注什么、對(duì)哪一類產(chǎn)品感興趣,哪種行業(yè)有偏好,分析結(jié)果以用戶標(biāo)簽形式展現(xiàn)出來(lái),可按特征標(biāo)簽進(jìn)行用戶分群,根據(jù)分群信息可以提取出這類用戶群體的產(chǎn)品偏好方向,定位用戶的真實(shí)產(chǎn)品需求。
用戶來(lái)源分析是在信息采集功能的基礎(chǔ)上,對(duì)處理過(guò)的用戶行為信息按時(shí)間、地區(qū)、行業(yè)、來(lái)源方式等條件對(duì)平臺(tái)訪問(wèn)量、訪問(wèn)量占比、瀏覽量、平均訪問(wèn)頁(yè)面數(shù)、平均訪問(wèn)時(shí)長(zhǎng)、跳出率等數(shù)據(jù)進(jìn)行統(tǒng)計(jì),分析結(jié)果以曲線圖加明細(xì)表方式展現(xiàn)。
用戶分布分析是對(duì)用戶的訪問(wèn)IP,主機(jī)域名、行業(yè)分類等屬性信息及頁(yè)面訪問(wèn)情況、平臺(tái)交易情況等行為信息進(jìn)行多維度分析。
用戶動(dòng)態(tài)分析是對(duì)用戶歷史訪問(wèn)記錄從用戶黏性、活躍性、發(fā)展?jié)摿?、產(chǎn)出四個(gè)角度進(jìn)行綜合分析,分析結(jié)果以圖表形式展示。
關(guān)聯(lián)分析是快速幫助客戶找到其共同愛(ài)好的產(chǎn)品,方便客戶購(gòu)買更多其所需要的產(chǎn)品,關(guān)聯(lián)分析可擴(kuò)大產(chǎn)品的營(yíng)銷面提高銷售額。
頁(yè)面訪問(wèn)分析針對(duì)每個(gè)頁(yè)面的訪問(wèn)情況進(jìn)行統(tǒng)計(jì),識(shí)別出常見(jiàn)退出頁(yè)面、異常頁(yè)面、最受歡迎頁(yè)面,優(yōu)化頁(yè)面設(shè)計(jì)和展現(xiàn)內(nèi)容提供參考,從而改善用戶體驗(yàn)。
3.2.3行為特征提取與建模模塊
首先得到用戶行為源數(shù)據(jù),對(duì)這些行為數(shù)據(jù)進(jìn)行數(shù)據(jù)預(yù)處理,得到處理后的用戶行為數(shù)據(jù),該過(guò)程主要包括數(shù)據(jù)清洗、數(shù)據(jù)離散化、用戶識(shí)別、訪問(wèn)次數(shù)統(tǒng)計(jì)、購(gòu)買次數(shù)統(tǒng)計(jì)、用戶數(shù)據(jù)匹配、本次瀏覽后是否購(gòu)買屬性識(shí)別、冗余數(shù)據(jù)刪除、研究對(duì)象選擇等。數(shù)據(jù)預(yù)處理是為噪音數(shù)據(jù)消除,缺失數(shù)據(jù)補(bǔ)全,數(shù)據(jù)歸一化處理,區(qū)間對(duì)齊處理以及一些不能直接得到的屬性轉(zhuǎn)化等,使得結(jié)果更加準(zhǔn)確。第二步需要提取用戶行為特征并得到用戶行為特征庫(kù)。用戶行為特征提取采用加權(quán)特征選擇技術(shù),主要分為基于信息熵的候選特征集構(gòu)建、基于鄰域分析的加權(quán)特征選擇和規(guī)則提取幾個(gè)步驟。然后將用戶的行為特征構(gòu)建為一個(gè)行為特征庫(kù),用于用戶行為新數(shù)據(jù)的匹配。
3.2.4管理界面模塊
管理界面模塊是用戶和網(wǎng)絡(luò)用戶行為分析系統(tǒng)進(jìn)行交互的主要手段。用戶通過(guò)圖形化界面,可以對(duì)當(dāng)前系統(tǒng)狀態(tài)進(jìn)行配置,了解當(dāng)前行為分析系統(tǒng)所能分析的網(wǎng)絡(luò)用戶行為,并制定各種分析策略;而分析系統(tǒng)則將分析結(jié)果以各種圖像或表格的形式顯示給用戶。管理界面模塊的設(shè)計(jì)主要分為用戶訪問(wèn)記錄展示界面,用戶行為統(tǒng)計(jì)分析界面,行為特征庫(kù)界面,異常行為報(bào)警界面等。
本文分析了基于異常行為感知的安全預(yù)警技術(shù)的國(guó)內(nèi)外發(fā)展現(xiàn)狀,提出了行為特征提取及安全預(yù)警建模相關(guān)關(guān)鍵技術(shù)、系統(tǒng)具體實(shí)現(xiàn)方案。針對(duì)傳統(tǒng)預(yù)警模型無(wú)法自動(dòng)優(yōu)化的缺點(diǎn),將機(jī)器學(xué)習(xí)與模型優(yōu)化相結(jié)合,引入專家系統(tǒng),設(shè)立原始庫(kù)和模型庫(kù),將經(jīng)過(guò)確認(rèn)的模型特征與結(jié)果存入案例庫(kù),通過(guò)機(jī)器迭代對(duì)案例庫(kù)中的特征和結(jié)構(gòu)進(jìn)行分析,調(diào)整預(yù)警模型權(quán)重與閾值,以及指標(biāo)隨機(jī)組合,從而實(shí)現(xiàn)模型的自動(dòng)優(yōu)化和實(shí)用化。