本文為安全知識圖譜技術白皮書《踐行安全知識圖譜,攜手邁進認知智慧》精華解讀系列第三篇——利用知識圖譜助力攻擊畫像與威脅評估。主要利用知識圖譜表示學習技術,對攻擊源或攻擊行為進行威脅評估。
一. 攻擊畫像的痛點
攻擊畫像及風險評估是針對複雜的企業環境,利用採集到的日誌或裝置告警構建相關的威脅圖譜,以圖的形式來刻畫攻擊和攻擊源,然後利用圖的相關方法對攻擊源和企業執行環境進行風險與威脅評估。
企業為了應對網路威脅,通常會部署多個檢測裝置(如網路入侵檢測系統IDS/IPS、全流量檢測和網路應用防護系統WAF等)。由於檢測裝置規則的敏感性,企業安全運營每天需要面臨大量威脅告警關聯分析,海量告警遠遠超出了運營人員的事件排查能力。當前的攻擊檢測裝置缺少對這種事件關聯的分析能力,從而導致高誤報問題,檢測裝置產生的告警日誌通常是低階的、孤立的,安全運營人員需要豐富的安全知識和經驗才能針對告警做出相關地研判,這進一步增加了企業安全運營的挑戰。
因此,在安全大資料湧現與高階威脅對抗的大背景下,將安全知識圖譜應用到企業智慧安全運營中,對提升安全運營的自動化水平,減少對人力投入與專家經驗的依賴,降低威脅分析與響應的週期等方面具有至關重要的作用。
二. 知識圖譜表示學習
在安全知識圖譜的應用中,知識圖譜表示學習具有關鍵作用。知識圖譜表示學習透過讓機器儘可能全面地學習知識,從而表現出類似於人類的行為,同時採用知識圖譜表示方法來表示知識。知識圖譜表示方法是研究計算機表示知識的可行性、有效性的一般方法,是把人類知識表示成機器能處理的資料結構和系統控制結構的策略。
安全知識圖譜借鑑通用知識圖譜的高效知識圖譜表示方法,充分利用安全知識圖譜中的知識,提升安全知識獲取、融合和推理的效能。近年來,基於知識圖譜表示學習方法主要分為兩種:基於結構的知識圖譜表示學習方法和基於語義的表示學習方法。基於結構的知識圖譜表示學習方法大多采用三元組(head,relation,tail可簡寫為h,r,t)表示方法,具有一定的稀疏性,且無法進行語義層面的計算,主要方法有TransE[1]模型以及變體模型TransH[2],TransD[3],TransA[4]和KG2E[5]等。基於語義的表示學習方法往往存在引數多,處理大型知識圖譜效率較差的問題,相對降低複雜度後僅能在部分場景中應用。基於語義的表示學習主要研究工作有RESCAL[6]以及其變體[7-9]。
隨著知識圖譜表示學習技術的不斷髮展,如何有效地獲取全面的知識特徵,更好地融合空間時間維度的知識圖譜表示,同時避免知識的表示學習導致語義缺失的問題,成為此類研究的關鍵。
三. 知識圖譜助力企業威脅評估
圖 1 基於安全知識圖譜的企業威脅風險評估技術
在企業環境中,安全裝置每日產生海量告警,這給安全分析帶來了巨大挑戰。為此,針對企業環境存在的問題,需要透過構建安全屬性圖模型來從不同維度對攻擊源的威脅度進行評估。
威脅建模選用屬性圖對整個企業執行環境進行建模。這裡以IP地址、埠、網段、告警、檔案、日誌等實體為圖模型的節點,邊則表示實體之間的關係,關係通常分為顯式關係與隱式關係。顯式關係是透過對日誌解析直接可以得到的關係,而隱式關係是透過資料探勘方法得到的節點之間暗含的關聯關係。
企業環境中,安全運營人員通常是基於告警資訊識別攻擊者與攻擊行為。針對單一告警,很難做出預判,這就需要一種有效的關聯告警上下文的評估方法來輔助安全分析和運維。為了挖掘告警之間的因果依賴關係,需要構建告警因果關聯圖,並利用圖表示學習方法DeepWalk學習告警的向量表示,詳細過程如圖 2所示。
圖 2 告警關聯圖分析
針對屬性知識圖譜模型,可以參考深度圖神經網路的一些方法,如圖自編碼器等來實現威脅評估。圖自編碼器就是在編碼過程中使用了圖表示學習技術,這裡採用TransE模型來學習圖譜中節點與邊的向量表示。TransE模型屬於翻譯模型:直觀上,將每個三元組例項(head,relation,tail 簡寫為 h,r,t)中的關係relation看作從實體head到實體tail的transform,透過不斷調整head、relation和tail的向量,使(h + r) 儘可能與 tail 相等,即 h + r = t,如圖3所示。
圖3 TransE模型
在當前場景中,head通常表示攻擊源IP,tail表示dip,relation是告警序列的向量表示。透過圖自編碼器的不斷學習,直到滿足目標要求,最終學習到了攻擊源,攻擊行為序列與受害者之間的向量表示,透過對比分析實現對攻擊源和攻擊行為的威脅評估。
四. 總結
本文提出了一種基於安全知識圖譜的攻擊源威脅評估方法,該方法透過提取攻擊者的相關特徵,構建描述攻擊者行為的屬性圖,透過關聯知識圖譜獲取更豐富的安全語義。並利用圖表示學習方法實現攻擊者威脅評估,為安全運營人員提供更準確的結果,減少了企業安全運營中人力的投入。
參考文獻
1. Bordes A, U.N., Garcia-Duran A, et al. . Translating embeddings for modeling multirelational data. in Advances in neural information processing systems. 2013.
2. Feng, J. Knowledge Graph Embedding by Translating on Hyperplanes. in AAAI. 2014.
3. Ji, G., et al. Knowledge Graph Embedding via Dynamic Mapping Matrix. in Meeting of the Association for Computational Linguistics & the International Joint Conference on Natural Language Processing. 2015.
4. Xiao, H., et al., TransA: An Adaptive Approach for Knowledge Graph Embedding. computer science, 2015.
5. He, S., et al. Learning to Represent Knowledge Graphs with Gaussian Embedding. in Acm International. 2015.
6. Nickel, M., V. Tresp, and H.P. Kriegel. A Three-Way Model for Collective Learning on Multi-Relational Data. in International Conference on International Conference on Machine Learning. 2011.
7. Nickel, M., L. Rosasco, and T. Poggio, Holographic Embeddings of Knowledge Graphs. AAAI Press, 2015.
8. Yang, B., et al., Embedding Entities and Relations for Learning and Inference in Knowledge Bases. 2014.
9. Trouillon, T., et al., Complex Embeddings for Simple Link Prediction. JMLR.org, 2016.