知識點,如何應用“安全知識圖譜”識別內部威脅?

綠盟科技發表於2020-03-18

一、背景

內部威脅(Insider Threat)是指內部人利用獲得的信任做出對授信組織合法利益不得的行為,這些利益包括企業的經濟利益、業務執行、對外服務以及授信主體聲譽等。內部威脅不僅僅是組織合法成員的有意或無意導致的組織利益損失,還包括一些外部偽裝成內部成員的攻擊。現在內網威脅檢測分為網路側與終端側,網路側檢查主要全流量,IPS/IDS, 終端側主要是EDR、蜜罐等,還有現在流行的UEBA,每天會產生大量的告警資訊,而對於安全人員來說人工處理這種級別的告警是不現實的,通常一些真實的攻擊事件會被淹沒在告警中。在日常運維中威脅評估就顯得尤為重要。

1、安全知識圖譜

安全知識圖譜(Cyber Security Knowledge Graph)是知識圖譜在網路安全領域的實際應用,包括基於本體論構建的安全知識本體架構,以及通過威脅建模等方式對多源異構的網路安全領域資訊( Heterogeneous Cyber Security Information)進行加工、處理、整合,轉化成為的結構化的智慧安全領域知識庫。對於內網資料來說,告警資料與流量資料缺少相關的語義,而安全知識圖譜融入了已經的安全知識,能大大提高威脅識別與評估的準備性。

2、圖嵌入

圖嵌入(Graph Embedding,也叫Network Embedding)是一種將圖資料(通常為高維稠密的矩陣)對映為低微稠密向量的過程,能夠很好地解決圖資料難以高效輸入機器學習演算法的問題。知識圖譜屬於異構圖資料,即節點與邊不止一種型別。利用圖嵌入技術可以高效的實現知識圖譜分析。

傳統的威脅評估方法,一般是攻擊目標構建相應的攻擊圖來量化,一方面針對大規模資料構建攻擊圖的複雜性比較高,同時攻擊圖考慮維度比較侷限。為此針對已構建的安全知識圖譜提出一種基於圖嵌入的威脅評估方法。首先以安全知識圖譜為輸入,利用圖神經網路(編碼器),對圖的頂點生成嵌入向量,其中融入了結構威脅評估及屬性評估。然後利用圖神經網路學習每一個節點對某一個節點的威脅度,並聚合得到該節點的威脅度,再通過結構威脅評估(中心度)進行調整,如此迭代最終得到圖譜中每個節點的威脅度排序。


二、相關技術介紹

1、智慧安全知識圖譜

智慧安全知識圖譜[9](Intelligent Cyber Security Knowledge Graph)是知識圖譜在網路安全領域的實際應用,包括基於本體論構建的安全知識本體架構,以及通過威脅建模等方式對多源異構的網路安全領域資訊(Heterogeneous Cyber Security Information)進行加工、處理、整合,轉化成為的結構化的智慧安全領域知識庫。

針對資訊保安領域知識圖譜構建的兩個關鍵要素,構建了威脅元語言模型對威脅知識的結構化描述,包括概念、實體、屬性的定義以及知識關係的定義。研究中依據STIX2.0以及領域專家知識,構建三層安全知識圖譜,如下圖所示。知識圖譜輔助安全事件分析、安全合規標準、APT追蹤溯源等實際業務場景所需的資料表示和語義關係。

知識點,如何應用“安全知識圖譜”識別內部威脅?

圖2.1 安全知識圖譜

其中資訊層為知識圖譜從外界抽取的知識實體,知識層和智慧層為資訊保安領域關鍵概念及這些概念之間的邏輯語義關係。

在威脅元語言模型中,威脅實體構建和實體關係是兩個最為關鍵兩個步驟。

2、圖嵌入

知識圖譜最大的特點是具有語義資訊,然而構建好的內網安全知識圖譜如何應用到內網威脅識別中。這就需要一些圖分析方法,傳統的圖分析方法主要是:路徑分析(可達性,最短路徑,k-out),社群發現等。利用圖模型做內網威脅識別,一個很直接的方法是利用社群發現[4,5,6]方法對威脅主體進行社群劃分,把威脅度高的攻擊主體劃到一起,從而實現威脅識別。理論上這種方法是可行的,因為構建的實體與實體之間的關聯和行為在社群內關係緊密,而在社群間關係稀疏。

而現有社群發現方法一方面只考慮頂點的鄰居關聯,忽略了潛在的近鄰關係,同時,社群發現的複雜度較高,不適合大規模圖分析。

為了對這種高維圖模型進行降維,圖嵌入技術應運而生,圖嵌入的本質是在儘量保證圖模型的結構特性的情況下把高維圖資料對映到低維向量空間。發展到現在圖嵌入技術已經不僅僅是一種降維方法,與深度學習相結合後圖嵌入技術可以具有更復雜的圖計算與圖挖掘功能。

知識點,如何應用“安全知識圖譜”識別內部威脅?

圖2.2 圖嵌入流程

首先圖2.2(a)中是使用者行為,從知識圖譜的角度可以抽象成圖2.2(b)中的圖模型。在當前推薦系統和安全領域都比較常見,而對於抽象的圖模型如何利用圖嵌入技術處理呢?首先,DeepWalk[1,2,3]將隨機遊走得到的節點序列當做句子,從截斷的隨機遊走序列中得到網路的部分資訊,再經過部分資訊來學習節點的潛在表示。該方法藉助語言建模word2vec中的一個模型,Skip-gram來學習節點的向量表示。將網路中的節點模擬為語言模型中的單詞,而節點的序列(可由隨機遊走得到)模擬為語言中的句子,作為Skip-gram的輸入。可以看出在表示圖模型中圖嵌入技術有天然的優勢,因為它本身把多維圖模型對映到同一向量空間,頂點之間的關聯關係可以通過頂點向量的相似度計算,任一頂點與其他頂點的潛在關係都可以很快的計算出來。

當前已有一些針對社群發現的圖嵌入技術[6,7]。社群嵌入可以描述其成員節點在低維空間中的分佈情況,所以這次不能簡單的把社群看成一個向量,而是低維空間中的分佈(高斯混合分佈)。

一方面,節點嵌入可以幫助改進社群檢測,從而輸出良好的社群以適應更好的社群嵌入,另一方面,社群嵌入可以通過引入A Community-aware 高階近似性來優化節點嵌入。在這指導下,提出了一個新的社群嵌入框架,如圖2.3所示。

知識點,如何應用“安全知識圖譜”識別內部威脅?

圖2.3  大流量攻擊的次數變化


三、基於安全知識圖譜的內網威脅識別

基於知識圖譜的內網威脅主要包括三部分:圖模型構建、圖嵌入和威脅評估。針對內網威脅已經有一些檢測元件,但是通常這些檢測裝置之間缺少關聯性,需要安全人員組合不同元件的告警利用經驗分析,而圖模型本身具有很強的關聯性,可以有效關聯多源資料,並且易於下鑽。

1、圖模型構建

圖模型的構建主要是確實圖中的實體與關係,實體的選擇通常比較容易確定,通常以IP、埠、網段、告警、檔案、日誌等實體為主,而關係通常分為顯示關係與隱式關係,顯示關係是直接可以得到的關係,而隱式關係是通過資料探勘方法得到的一些資料中暗含的關聯關係。

(1)實體構建

實體的構建根據場景的不同會有不同選擇,可以參照STIX2.0中的十二個物件域的劃分,以及當前世界範圍內對安全元素描述的使用較為廣泛的標準來確定實體,本文只介紹幾個核心實體型別:

攻擊模式:攻擊發起者使用的策略、技術和程式,參考:通用攻擊模式列舉和分類(CAPEC)、MITRE公司的PRE-ATT&CK、ATT&CK、Kill Chain

目標客體:攻擊目標資產,參考:通用平臺列舉(CPE)

威脅主體:攻擊發起者,可以是個人、團體和組織,參考:威脅代理風險評估(TARA)中的威脅代理庫

戰役:針對具體目標的一系列惡意行為或攻擊

威脅指示器:在檢測或取證中,具有高置信度的威脅物件或特徵資訊。

內網環境中的威脅主體是指攻擊的發起者,通常指兩類,一類是組織內部人員由於個人原因有意或無意的造成的違規行為;一類是外部使用者偽裝成內部使用者進行一些攻擊行為。目標客體通常是攻擊的目標,通常是網段、埠、終端及檔案等。攻擊模式包含已有的一些通用攻擊策略相關知識,如果攻擊鏈,att&ck等,現在一些威脅檢測元件產生的告警資訊已經包含了部分相關知識。

(2)關係構建

關係的構建包括直接關係與間接關係構建。直接關係比較容易得到,內網環境中通常能通過日誌、沙箱、原始流量和外部資料直接得到的關係對,例如,檔案訪問域名,域名解析IP,檔案訪問IP等。

間接關係是通過間接關聯得到的關係,比如使用同一種攻擊工具的攻擊者有一定的相似性,檔案與檔案通過相似度計算得到的相似性等等都屬於間接關係。這樣通過直接關係與間接關係的構建就構成了內網安全知識圖譜。

2、動態威脅評估

在內網環境中,不同的檢測元件每天會產生大量的威脅告警,對於安全人員來說人工處理這麼大量的告警是不現實的,但是真實的告警往往又會被這些大量的誤報所淹沒,有效的威脅評估可能給安全人員提供處理威脅的優先順序,從大量的告警中選擇最有可能的告警。現在威脅評估的指標較多,而且實體的威脅程度是隨著時間動態變化的,比如某個攻擊源發現了一個高危漏洞後,它本身的威脅程式就變大。準確的威脅評估是內網日常運維所急需的。

(1)初始威脅度

週期性

週期性指標主要用來對告警資料的產生原因進行判斷,一般被蠕蟲或者木馬感染的主機會週期性地傳送攻擊報文,其每隔一段時間傳送的攻擊報文數量和內容也都相似,這樣的攻擊報文雖然對網路安全也構成一定的威脅,但由於其傳送報文數量一定、內容相似以及具有周期性傳送的特點,相對於具有突發性、攻擊手段多樣性的人為的主動攻擊,更容易防範,其造成的威脅也相對較低。為此,我們需要判斷告警資訊是否具有周期性,並從中減小具有周期性木馬等惡意程式碼產生的告警威脅,提高對突發事件威脅性的計算。

考慮週期性計算的複雜程度,如果要進行較為精確的週期性計算,花費時間較長,而週期性只是多項指標中的一項;而如果計算太為簡單,又不能夠體現出指標的作用。綜合考慮其計算量和指標的精確度,現將攻擊週期性的計算方法定義如下。

對攻擊源的不同型別的攻擊次數以小時為單位進行分時間的統計,對每一項統計值進行方差值的計算,如果方差值大於設定閾值,則認為該類攻擊手段的攻擊不具有周期性,小於設定閾值,則認為該類攻擊手段實施的攻擊具有周期性。

漏洞

主要採用CVSS[8]評價系統(Common Vulnerability Scoring System)中的Temporal Metrics作為評分參考,該評分能夠描述攻擊者利用該漏洞後造成的影響程度和難易程度,漏洞的Temporal 評分越大,說明利用該漏洞產生的威脅就越大;Temporal評分越小,說明利用該漏洞產生的威脅就越小。知識圖譜實體的威脅值的計算方法如下公式所示,其中a為圖中的節點,TVL(a)代表節點的威脅值,Temporal Score(ra)代表a對應的漏洞的Temporal評分。動作節點的威脅值定義如下:

知識點,如何應用“安全知識圖譜”識別內部威脅?

目標客體重要性

目標客體由於其重要性不同,被攻擊後造成的危害程度也不同。例如,一些不重要的FTP伺服器、WEB伺服器或者蜜罐節點可能被賦予1的重要性,而一些重要的資料儲存伺服器和總控伺服器被賦予9的重要性;和CVSS的Temporal評分一樣,主機的重要性可以設定為0-10區間的分數。目標客體的威脅值定義如下:

知識點,如何應用“安全知識圖譜”識別內部威脅?

出於簡化分析考慮,暫定每個目標客體的威脅值都為相關主機的主機重要性的平均值,並未考慮主機上的細分業務和主機不同許可權對威脅值產生的影響。主機的重要性越高,攻擊者所產生的威脅就越大。

(2)威脅評估

對於已有的這些威脅評估,是從不同維度來解決威脅評估問題,那麼不同角度的評估如如何融合優化成為威脅評估的問題。為此,基於已構構建的知識圖譜進行分析,利用圖嵌入把不同維度的威脅評估對映到同一空間中,在考慮更多特徵及威脅的影響情況下,在同一空間對不同實體進行威脅評估,無論是效率和精度上都比傳統方法有很大提升。

知識點,如何應用“安全知識圖譜”識別內部威脅?

圖3.1 基於知識圖譜的威脅評估框架

基於圖嵌入技術,已經可以由知識圖譜這種離散模型轉換成特徵向量這種連續表示。然後基於圖的結構特性和相關屬性特徵進行威脅評估,結構特徵比如圖的中心性,因為在圖模型中,中心節點通常表示圖的中心特性,中心節點對其他所有節點的影響最大,尤其是在威脅傳播過程中的影響也最大。

知識點,如何應用“安全知識圖譜”識別內部威脅?

圖3.2 利用圖神經網路計算主體威脅值

傳統的威脅評估方法,一般是攻擊目標構建相應的攻擊圖來量化,一方面針對大規模資料構建攻擊圖的複雜性比較高,同時攻擊圖考慮維度比較侷限。為此針對已構建的安全知識圖譜提出一種基於圖嵌入的威脅評估方法。首先以安全知識圖譜為輸入,利用圖神經網路(編碼器),對圖的頂點生成嵌入向量,其中融入了結構威脅評估及屬性評估,然後利用圖神經網路訓練每個節點對某一節點的威脅度權值,經過不斷的迭代最終生成返回知識圖譜中節點的威脅度排名。

下面介紹評估模型的核心,知識圖譜中包括多種實體,實體中的直接與間接關係表示著威脅傳遞,比如攻擊者擁有攻擊工具,那麼該實體的威脅度就會增加,攻擊者距離目標資產的距離近,那麼該攻擊者的威脅度就會增加等等,中心度是指圖中,處理中心度上的攻擊者的威脅度越大。在圖神經網路中融合一跳或多跳近似訓練知識圖譜中不同的實體聚合的權值,然後生成新的威脅值,再利用中心度進行調整,進入下一層學習,直到滿足終止條件。


四、總結

目前,知識圖譜在推薦,檢索領域已經得到了廣泛應用,但在安全領域知識圖譜的應用還處理探索階段。但是圖模型已經在安全領域多個場景得到應用並取得了不錯的效果,安全知識圖譜在原有的圖模型中融入了更多的知識,為檢測、分析與響應提供了更多的語義資訊。未來知識圖譜在安全領域將會有更多的應用。


參考文獻:

[1].Perozzi B , Al-Rfou R , Skiena S . DeepWalk: Online Learning of Social Representations[J]. 2014.  

[2].Jian T, Meng Q, Wang M, et al. LINE: Large-scale Information Network Embedding[C]// International Conference on World Wide Web. 2015.

[3]. Grover A , Leskovec J . node2vec: Scalable Feature Learning for Networks[J]. 2016.

[4].Newman M E J , Girvan M . Finding and Evaluating Community Structure in Networks[J]. Physical Review E, 2004, 69(2 Pt 2):026113.

[5].https://blog.csdn.net/ztf312/article/details/80680263.

[6]. Wang X , Cui P , Wang J , et al. Community Preserving Network Embedding[C]// The 31st AAAI Conference on Artificial Intelligence. 2017.

[7].Cavallari S , Zheng V W , Cai H , et al. Learning Community Embedding with Community Detection and Node Embedding on Graphs[C]// the 2017 ACM. ACM, 2017.

[8].Pengsu C, Lingyu W, Jajodia S, et al.Aggregating CVSS Base Scores for Semantics-rich Network Security Metrics [A].// 2012 IEEE 31st Symposium on Reliable Distributed Systems (SRDS) [C], Irvine, CA: IEEE Press, 2012: 31-40.

[9].基於知識圖譜的APT組織追蹤治理,https://mp.weixin.qq.com/s/CluHeu1oy7DneBuR0cXZSQ

相關文章