本發(fā)明屬于信息安全領域,具體涉及一種基于特征矩陣表示學習的apt攻擊檢測系統(tǒng)。
背景技術:
1、高級持續(xù)性威脅(advanced?persistent?threat,apt)是一種具有組織性、特定目標以及長時間持續(xù)性的新型網(wǎng)絡攻擊,攻擊者采用多種技術手段長期監(jiān)控目標行為,竊取敏感信息,直至實現(xiàn)特定目的,對企業(yè)和組織的網(wǎng)絡安全構(gòu)成重大威脅。目前,針對apt攻擊的解決方案主要包括基于溯源圖(provenance?graph)的apt攻擊檢測方法、針對apt攻擊的異常行為檢測方法和基于先驗知識的階段性apt攻擊技術檢測方法等等,這些方案的目的均是對系統(tǒng)中實體的惡意或異常行為進行有效識別與篩選。
2、基于溯源圖的apt攻擊檢測方法通過構(gòu)建溯源圖來描述實體的特征與它們之間的交互行為,系統(tǒng)化分析攻擊者可能的行動路徑。但隨著網(wǎng)絡規(guī)模的增加,溯源圖的復雜度呈指數(shù)級增長,每個攻擊路徑都需要通過圖中的多個節(jié)點進行推理和計算,消耗大量的計算資源。針對apt攻擊的異常行為檢測方法通過建模系統(tǒng)正常行為圖來檢測異常行為,該方法雖然在一定程度上能夠檢測到apt攻擊,但也產(chǎn)生大量誤警,引起告警疲勞。為了更好地應對apt攻擊,大量研究人員對apt攻擊進行階段性分析和建模,基于先驗知識的階段性apt攻擊技術檢測方法也因此應運而生,其通過匹配apt攻擊模型中每個階段采用的技術來檢測apt攻擊,但是由于apt攻擊技術種類繁多且迭代迅速,因此這種檢測方法難以應用到實際場景中。
3、另外,在實際應用場景中,尤其是在大型網(wǎng)絡環(huán)境下,對于apt攻擊的檢測變得尤為復雜且具有挑戰(zhàn)性。大型網(wǎng)絡環(huán)境一般包括多個子網(wǎng)、復雜的服務架構(gòu)、以及多種業(yè)務和應用層級,采用集中式架構(gòu)的apt攻擊檢測方法要求各級設備將系統(tǒng)日志上傳到中心服務器進行集中處檢測和處理。雖然這種方法簡化管理、配置和維護,但是其對集中平臺的性能要求過高,存在性能瓶頸、可擴展性差和數(shù)據(jù)的收集與處理成本高等問題。采用分布式架構(gòu)的apt攻擊檢測方法利用多個分布式節(jié)點和處理單元來實現(xiàn)數(shù)據(jù)收集、分析和響應。相比于集中式架構(gòu),雖然分布式架構(gòu)在面對大型網(wǎng)絡環(huán)境時有著更加顯著的優(yōu)勢,但其要求各個分布式節(jié)點在本地分析系統(tǒng)日志、建模并與其他節(jié)點進行任務分配和數(shù)據(jù)同步,這可能對節(jié)點本身的性能產(chǎn)生較大影響。綜上所述,在實際應用場景中,現(xiàn)存的apt攻擊檢測方法存在數(shù)據(jù)的傳輸和計算成本較高,檢測誤警率較高,并且難以檢測未知攻擊的問題。
技術實現(xiàn)思路
1、為了解決現(xiàn)有技術中所存在的上述問題,本發(fā)明提供了一種基于特征矩陣表示學習的apt攻擊檢測系統(tǒng)。
2、本發(fā)明要解決的技術問題通過以下技術方案實現(xiàn):
3、第一方面,本發(fā)明提供了一種基于特征矩陣表示學習的apt攻擊檢測系統(tǒng),所述系統(tǒng)包括:特征分析模塊、異常分析模塊和數(shù)據(jù)預處理模塊;
4、所述特征分析模塊,用于實時分析系統(tǒng)日志和網(wǎng)絡流量,以更新系統(tǒng)中每個實體對應的特征向量;還用于將同一子網(wǎng)內(nèi)不同節(jié)點上對應的相同實體的特征向量進行聚合,得到子網(wǎng)特征矩陣;
5、所述異常分析模塊,用于根據(jù)訓練完成的異常檢測模型對所述子網(wǎng)特征矩陣進行檢測,得到檢測結(jié)果;其中,所述異常檢測模型基于隨機森林算法構(gòu)建得到;還用于根據(jù)所述檢測結(jié)果將實體對應的語義信息分別存儲至每個子網(wǎng)的簇頭語義庫以及所述系統(tǒng)的中心語義庫中;
6、所述數(shù)據(jù)預處理模塊,用于對待檢測程序進行語義分析,得到待檢測語義信息;還用于將所述待檢測語義信息與所述簇頭語義庫和所述中心語義庫分別進行匹配,得到所述待檢測程序的檢測結(jié)果。
7、可選地,所述特征分析模塊包括:特征分析子模塊;
8、所述特征分析子模塊,用于初始化所述系統(tǒng)中每個實體對應的特征向量;還用于更新每個所述實體對應的特征向量。
9、可選地,所述特征分析模塊還包括:矩陣聚合子模塊;
10、所述矩陣聚合子模塊,用于將所述同一子網(wǎng)內(nèi)不同節(jié)點上對應的相同實體的特征向量以及對應的子網(wǎng)號進行聚合,得到所述子網(wǎng)特征矩陣。
11、可選地,所述特征分析模塊還包括:事件保存子模塊;
12、所述事件保存子模塊,用于保存使得所述實體對應的特征向量產(chǎn)生變化的事件;其中,所述事件以雙重鄰接表的形式存儲于數(shù)據(jù)庫。
13、可選地,所述異常分析模塊包括:檢測子模塊;
14、所述檢測子模塊,用于根據(jù)訓練完成的所述異常檢測模型對所述子網(wǎng)特征矩陣進行檢測,得到所述檢測結(jié)果;
15、所述檢測子模塊,還用于在所述檢測結(jié)果中存在異常情況時將所述檢測結(jié)果報告向?qū)墓?jié)點,并提取所述檢測結(jié)果中的實體的異常行為特征,獲取所述異常行為特征的語義信息并分別存儲至所述簇頭語義庫以及所述中心語義庫中。
16、可選地,所述異常分析模塊還包括:溯源子模塊;
17、所述溯源子模塊,用于當所述檢測結(jié)果中存在異常情況根據(jù)所述數(shù)據(jù)庫中的事件構(gòu)建溯源圖;其中,所述溯源圖包括異常情況對應的實體的行為路徑。
18、可選地,所述異常檢測模型的訓練過程表示如下:
19、獲取原始訓練集;其中,所述原始訓練集中包括多個訓練特征向量;
20、每次訓練所述異常檢測模型中的一棵未訓練過的決策樹時,基于bootstrap采樣法從所述原始訓練集中有放回地抽取多次樣本,得到子數(shù)據(jù)集;
21、利用所述子數(shù)據(jù)集訓練一棵未訓練過的決策樹,直至所述異常檢測模型中的所有決策樹均經(jīng)過訓練,得到訓練后的所述異常檢測模型;
22、利用k折交叉驗證法對訓練后的所述異常檢測模型進行評估;
23、當訓練后的所述異常檢測模型滿足預設要求時,將訓練后的所述異常檢測模型作為訓練完成的所述異常檢測模型;
24、當訓練后的所述異常檢測模型未滿足所述預設要求時,調(diào)整訓練后的所述異常檢測模型中的參數(shù)。
25、可選地,所述數(shù)據(jù)預處理模塊包括:語義分析子模塊;
26、所述語義分析子模塊,用于利用解析器將所述待檢測程序轉(zhuǎn)換為抽象語法樹;
27、所述語義分析子模塊,還用于利用圖嵌入技術對所述抽象語法樹進行處理,得到所述待檢測語義信息。
28、可選地,所述數(shù)據(jù)預處理模塊包括:匹配子模塊;
29、所述匹配子模塊,用于在所述待檢測語義信息與所述簇頭語義庫匹配成功時,判斷所述待檢測程序為惡意程序,并采取阻斷措施;
30、所述匹配子模塊,還用于在所述待檢測語義信息與所述簇頭語義庫匹配失敗時,將所述待檢測程序與所述中心語義庫進行匹配;
31、所述匹配子模塊,還用于在所述待檢測語義信息與所述中心語義庫匹配成功時,判斷所述待檢測程序為可疑程序;
32、所述匹配子模塊,還用于在所述待檢測語義信息與所述中心語義庫匹配失敗時,判斷所述待檢測程序為良性程序。
33、本發(fā)明的實施例提供的技術方案可以包括以下有益效果:
34、在上述技術方案中,通過在節(jié)點本地分析系統(tǒng)日志和網(wǎng)絡流量,并用特征向量表示每一個實體的特征向量,并聚合這些特征向量為子網(wǎng)特征矩陣以行異常檢測,實現(xiàn)降低數(shù)據(jù)的傳輸與計算成本的同時從全局的特征向量進行分析檢測;在此基礎上,本發(fā)明基于隨機森林算法構(gòu)建異常檢測模型,在滿足實際應用場景中對apt攻擊檢測的真陽率要求的同時大大降低了檢測誤警率;此外,本發(fā)明在加入了語義分析,通過待檢測語音信息和簇頭語義庫和中心語義庫進行識別匹配,能夠及時發(fā)現(xiàn)惡意程序,提高了模型健壯性。
35、以下將結(jié)合附圖及實施例對本發(fā)明做進一步詳細說明。