唐思宇,李賽飛,張麗杰
(1.西南交通大學(xué) 信息科學(xué)與技術(shù)學(xué)院,四川 成都 611756;2.北方激光研究院有限公司 信息技術(shù)中心,四川 成都 610041)
近年來,信息技術(shù)的突飛猛進(jìn),使得網(wǎng)絡(luò)攻擊對網(wǎng)絡(luò)環(huán)境的威脅日益嚴(yán)重,影響了計算機(jī)的安全使用。同時,網(wǎng)絡(luò)攻擊也朝著新的趨勢發(fā)展,自動化程度和攻擊速度逐漸提高,攻擊行動多變難以捉摸,使得安全專家疲于分析應(yīng)對。傳統(tǒng)的互聯(lián)網(wǎng)信息檢索對信息的獲取缺乏及時性和準(zhǔn)確性,無法滿足信息時代人們的需求。同時,安全知識庫、漏洞庫、安全博客、威脅信息庫等大量有用的安全信息碎片化分散在互聯(lián)網(wǎng)上,這些安全知識未被合理整合利用,難以為安全人員提供快速、有效的知識支撐。而知識圖譜(Knowledge Graph)[1]在信息的基礎(chǔ)上,建立了客觀世界中實體間的關(guān)系,將互聯(lián)網(wǎng)上多源異質(zhì)、動態(tài)的信息進(jìn)行組織、管理及表達(dá),使得網(wǎng)絡(luò)的智能化水平更高,也為數(shù)據(jù)挖掘和知識分析提供了支持。
本文基于對已有數(shù)據(jù)源的分析,構(gòu)建了網(wǎng)絡(luò)安全本體,利用Scrapy 爬蟲框架采集網(wǎng)絡(luò)安全數(shù)據(jù)并進(jìn)行知識抽取,利用已構(gòu)建的網(wǎng)絡(luò)安全本體進(jìn)行實體關(guān)系標(biāo)準(zhǔn)化,然后利用相似函數(shù)和向量空間模型(Vector Space Model,VSM)對實體進(jìn)行對齊、融合,最后利用Neo4j 圖數(shù)據(jù)庫實現(xiàn)網(wǎng)絡(luò)安全知識圖譜的構(gòu)建。
知識圖譜技術(shù)提出后,在眾多領(lǐng)域中廣泛使用。近幾年,對網(wǎng)絡(luò)安全領(lǐng)域知識圖譜的研究也愈發(fā)成熟,但為使網(wǎng)絡(luò)安全知識圖譜真正運用于安全應(yīng)用中,仍需要深入研究。Apache 基于Cisco OpenSOC 推出了知識圖譜項目Metron[2],主要致力于安全監(jiān)控和分析,整合最新的威脅情報。MITRE 公司開發(fā)了安全態(tài)勢感知系統(tǒng)CyGraph[3],主要面向網(wǎng)絡(luò)攻擊態(tài)勢理解和攻擊面識別等任務(wù)。Harshaw 提出了網(wǎng)絡(luò)智能情報平臺Stucco[4],能夠自動化并輕松快速地為分析師提供威脅數(shù)據(jù)。網(wǎng)絡(luò)安全知識圖譜的研究主要可分為網(wǎng)絡(luò)安全本體研究和網(wǎng)絡(luò)安全知識抽取研究。
對于不同的應(yīng)用場景,研究人員開發(fā)了不同的本體。Iannacone 等人[5]提出了一種表示整個網(wǎng)絡(luò)安全領(lǐng)域的本體模型Stucco,并創(chuàng)建一種知識表示形式,促進(jìn)異構(gòu)數(shù)據(jù)源的集成。Shed等人[6]提出了一種統(tǒng)一的網(wǎng)絡(luò)安全本體(Unified Cybersecurity Ontology,UCO),旨在支持網(wǎng)絡(luò)安全系統(tǒng)中的信息集成和網(wǎng)絡(luò)態(tài)勢感知,它集成了來自不同網(wǎng)絡(luò)安全系統(tǒng)的異構(gòu)數(shù)據(jù)和知識模型,以實現(xiàn)信息共享和交換。Jia 等人[7]構(gòu)建了包含攻擊、資產(chǎn)、漏洞、軟件和操作系統(tǒng)5種類型的網(wǎng)絡(luò)安全本體概念,并以此獲得了網(wǎng)絡(luò)安全知識庫。
Balduccini 等人[8]利用支持向量機(jī)提取文本相關(guān)性特征,再利用遺傳算法生成的正則表達(dá)式與本體相結(jié)合,抽取日志文本中的安全實體。Collobert 等人[9]在命名實體識別的通用領(lǐng)域初次利用了深度學(xué)習(xí),并取得了較好的效果。至此以后便廣泛利用深度學(xué)習(xí)來提取實體特征。彭嘉毅等人[10]提出將基于字符特性的雙向長短期記 憶(Bi-directional Long Short-Term Memory,BiLSTM)與條件隨機(jī)場(Conditional Random Field,CRF)相結(jié)合的網(wǎng)絡(luò)安全領(lǐng)域命名實體識別模型,采用主動學(xué)習(xí)方法,使用小批標(biāo)注樣本獲得了良好的結(jié)果。李濤等人[11]提出一種融合對抗主動學(xué)習(xí)的安全知識三元組抽取方法,利用BiLSTM-CRF 模型進(jìn)行實體和關(guān)系的聯(lián)合抽取,實驗表明方案的有效性。
當(dāng)前網(wǎng)絡(luò)安全知識圖譜在本體和知識抽取方面研究較多,對于網(wǎng)絡(luò)安全實體對齊研究較少,本文在網(wǎng)絡(luò)安全實體抽取的基礎(chǔ)上,深入研究了知識融合技術(shù),并對抽取后的網(wǎng)絡(luò)安全實體進(jìn)行消歧對齊。
網(wǎng)絡(luò)安全知識圖譜的構(gòu)建主要包括本體建模、數(shù)據(jù)獲取與知識抽取、知識融合等重要環(huán)節(jié)。其構(gòu)建流程如圖1 所示。
圖1 知識圖譜構(gòu)建流程
網(wǎng)絡(luò)安全本體定義了網(wǎng)絡(luò)安全實體間關(guān)系的表達(dá),可以用于組織、表示以及共享網(wǎng)絡(luò)安全相關(guān)的知識,即表示圖結(jié)構(gòu)的抽象概念結(jié)構(gòu)類。本體的構(gòu)建為后續(xù)網(wǎng)絡(luò)安全知識抽取提供了標(biāo)準(zhǔn)。建立的網(wǎng)絡(luò)安全本體如圖2 所示。
圖2 網(wǎng)絡(luò)安全本體
本體建模參考了各類現(xiàn)行的安全標(biāo)準(zhǔn)規(guī)范,分析了結(jié)構(gòu)化威脅信息表達(dá)(Structured Threat Information eXpression,STIX)公開的高級持續(xù)性威脅(Advanced Persistent Threat,APT)組織報告,利用了STIX 2.1 的結(jié)構(gòu)化語言描述與美國國家漏洞庫中包含的專家知識和邏輯關(guān)系。本體模型主要定義以下8 種實體類型及其之間的關(guān)系類型。
(1)攻擊者。具有對抗行為的入侵活動??梢允莻€人、團(tuán)體或組織。攻擊者通常會使用某些軟件或者攻擊模式去完成攻擊,故攻擊者與軟件,攻擊者與攻擊模式的關(guān)系表示為使用關(guān)系Use。
(2)軟件。攻擊者可用來進(jìn)行攻擊的商業(yè)代碼操作系統(tǒng)實用程序或開源軟件。通常分為惡意軟件和正常工具。軟件與攻擊技術(shù)的關(guān)系表示為實施關(guān)系Implement。
(3)攻擊模式。攻擊者試圖破壞目標(biāo)的方式。如嗅探網(wǎng)絡(luò)流量,攻擊者監(jiān)視公共或多播網(wǎng)絡(luò)節(jié)點之間的網(wǎng)絡(luò)流量,試圖在協(xié)議級別捕獲敏感信息。攻擊者可以通過某種攻擊模式利用存在于目標(biāo)客體的隱患來進(jìn)行攻擊,故攻擊模式與隱患的關(guān)系表示為利用關(guān)系Exploit。
(4)攻擊技術(shù)。攻擊者進(jìn)行攻擊所執(zhí)行的動作。如繞過用戶賬戶控制,攻擊者可能會繞過用戶賬戶控制(User Account Control,UAC)機(jī)制來提升系統(tǒng)中的進(jìn)程權(quán)限。攻擊技術(shù)和攻擊模式在概念的表達(dá)上有交叉,又各具特點,故攻擊技術(shù)與攻擊模式的關(guān)系表示為相似對應(yīng)關(guān)系Same_as。
(5)緩解措施。可以防止技術(shù)成功執(zhí)行的安全建議或措施。緩解措施與攻擊技術(shù)的關(guān)系為緩解關(guān)系Mitigate。
(6)戰(zhàn)術(shù)。攻擊者利用技術(shù)或采取行動的目的。如攻擊者利用發(fā)送網(wǎng)絡(luò)釣魚消息技術(shù)來達(dá)成訪問受害系統(tǒng)戰(zhàn)術(shù)。戰(zhàn)術(shù)與攻擊技術(shù)的關(guān)系表示為實現(xiàn)關(guān)系A(chǔ)ccomplish。
(7)隱患。攻擊者能夠利用的、訪問系統(tǒng)或網(wǎng)絡(luò)的軟件缺陷。通常包括弱點和漏洞。隱患與目標(biāo)客體的關(guān)系表示為存在關(guān)系Exist_in。
(8)目標(biāo)客體。攻擊者的攻擊目標(biāo)。包括應(yīng)用程序、系統(tǒng)和平臺等。
2.2.1 網(wǎng)絡(luò)安全數(shù)據(jù)源
網(wǎng)絡(luò)安全知識圖譜涉及攻擊維、資產(chǎn)維和脆弱維3 個維度的數(shù)據(jù),這些數(shù)據(jù)大多以半結(jié)構(gòu)化的格式存儲并在互聯(lián)網(wǎng)上開放共享。
(1)攻擊維。MITRE 公司構(gòu)建的攻擊行為知識庫(Adversarial Tactics,Techniques,and Common Knowledge,ATT&CK)與通用攻擊模式枚舉和分類(Common Attack Pattern Enumeration and Classification,CAPEC)知識庫為攻擊維數(shù)據(jù)提供了基礎(chǔ)。ATT&CK 通過APT 攻擊組織的可觀測數(shù)據(jù)提供了共性的戰(zhàn)術(shù)意圖和技術(shù)模式,以及攻擊組織和軟件信息。而CAPEC 則更關(guān)注攻擊者對網(wǎng)絡(luò)空間脆弱性的利用,描述了對已知應(yīng)用程序脆弱性的攻擊行為。
(2)資產(chǎn)維。數(shù)據(jù)主要來自通用平臺枚舉(Common Platform Enumeration,CPE)數(shù)據(jù)庫,CPE 為系統(tǒng)和軟硬件設(shè)備提供了結(jié)構(gòu)化命名規(guī)范的描述和標(biāo)識。
(3)脆弱維。公共漏洞和暴露(Common Vulnerabilities and Exposures,CVE)數(shù)據(jù)庫、美國國家漏洞庫收錄了全面、應(yīng)用范圍廣泛、評分方式公認(rèn)合理的漏洞,并且每個漏洞具有唯一的ID 標(biāo)識;通用弱點枚舉(Common Weakness Enumeration,CWE)數(shù)據(jù)庫提供了常見軟件安全弱點列表。
這些知識庫對威脅情報的收集、驗證和凝練往往依賴于專家經(jīng)驗,為網(wǎng)絡(luò)安全知識圖譜的構(gòu)建提供了權(quán)威可靠的保障。另外,還可以從網(wǎng)絡(luò)安全博客、APT 相關(guān)報告、安全公告等文本信息中提取數(shù)據(jù)。
2.2.2 數(shù)據(jù)獲取與知識抽取
知識庫通常以半結(jié)構(gòu)化的Web 網(wǎng)頁形式存在,實體的信息是通過帶有一定結(jié)構(gòu)的記錄塊來展示的,ATT&CK 網(wǎng)站頁面如圖3 所示。圖中展示了軟件實體AndroidOS/MalLocker.B 的相關(guān)信息,上半部分分別展示了AndroidOS/MalLocker.B 的描述介紹和屬性框,下半部分給出了其所能利用的攻擊技術(shù)。數(shù)據(jù)的抽取利用網(wǎng)絡(luò)爬蟲技術(shù),結(jié)合對網(wǎng)頁的人工分析,先將頁面內(nèi)數(shù)據(jù)進(jìn)行分類對齊至網(wǎng)絡(luò)安全本體中的知識類型,再將該數(shù)據(jù)描述轉(zhuǎn)換成結(jié)構(gòu)化的知識表示。另外關(guān)系抽取可直接利用頁面結(jié)構(gòu)特征,也可通過對網(wǎng)站鏈接跳轉(zhuǎn)關(guān)系,抽取出諸如“Use”“Implement”“Exploit”等知識關(guān)系。
圖3 ATT&CK 網(wǎng)站頁面
不同知識庫之間構(gòu)造的知識關(guān)系源自美國國家漏洞庫中的專家知識和邏輯語義。例如,F(xiàn)ireEye 發(fā)布的APT28:At the Center of the Storm[12]報告中分析了APT28 利用CVE-2015-2590、CVE-2015-3043 等漏洞,影響Java、Flash 和Windows 等應(yīng)用程序。其分析使用的邏輯關(guān)系源自NVD 包含的專家知識,如CAPEC-ID(攻擊模式)“利用”CWE-ID(弱點)、CVE-ID(漏洞)“屬于”CWE-ID(弱點)、CVE-ID(漏洞)“影響”CPE-ID(資產(chǎn))等邏輯語義。
本文利用Scrapy 爬蟲框架,基于Xpath 抽取表達(dá)式進(jìn)行數(shù)據(jù)的抽取。在信息抽取部分,對網(wǎng)頁進(jìn)行分類,按照類別構(gòu)建基于Xpath 的數(shù)據(jù)提取規(guī)則,使用提取規(guī)則抽取數(shù)據(jù)。具體抽取流程如表1 所示。
表1 網(wǎng)頁信息抽取流程
(1)實體抽取。對于實體類別的識別,統(tǒng)一資源定位系統(tǒng)(Uniform Resource Locator,URL)是一個較好的區(qū)分性特征。例如,軟件實體AndroidOS/MalLocker.B 的URL 是https://attack.mitre.org/software/S0524/,其中https://attack.mitre.org/為ATT&CK 網(wǎng)站首頁URL,/software/為網(wǎng)頁類別,/S0524/為網(wǎng)站為實體設(shè)置的編號。網(wǎng)頁類別即對應(yīng)著實體類別。再根據(jù)實體詳情頁抽取出實體屬性。不同類型網(wǎng)頁存在不同的結(jié)構(gòu),根據(jù)網(wǎng)頁類型構(gòu)造基于Xpath 數(shù)據(jù)抽取規(guī)則。抽取圖3 右面屬性框內(nèi)容,其網(wǎng)頁可擴(kuò)展標(biāo)記語言(eXtensible Markup Language,XML)部分代碼如圖4 所示。若抽取“ID”屬性,構(gòu)建Xpath 查詢規(guī)則為“//div[@class=”card”]/div[@class=”card-body”]/div[1]/span/text()”;若抽取“ID”屬性的屬性值“S0524”,構(gòu)建Xpath 查詢規(guī)則為“//div[@class=”card”]/div[@class=”card-body”]/div[1]/text()”。抽取的內(nèi)容可能會存在一些符號噪聲,可以利用正則表達(dá)式對內(nèi)容進(jìn)行清洗,最后將抽取出的每個實體名稱以及相對應(yīng)的屬性保存并輸出。
圖4 示例圖3 中右面屬性框?qū)?yīng)XML 部分代碼
(2)關(guān)系抽取。與實體屬性抽取類似,網(wǎng)頁中除包含構(gòu)成實體信息的屬性鍵值對外,部分屬性值還包含相應(yīng)的導(dǎo)航鏈接信息。如果這些包含鏈接信息的屬性值通過URL 分析出另一類實體,則利用預(yù)先定義的本體關(guān)系規(guī)則,將這兩個實體關(guān)聯(lián)起來,本體關(guān)系規(guī)則如表2 所示。
表2 本體關(guān)系規(guī)則
抽取圖3 下面“Techniques Used”屬性列表內(nèi)容,其第二行網(wǎng)頁XML 部分代碼如圖5 所示。根據(jù)Xpath 抽取規(guī)則,能夠獲取第二行第二列“ID”屬性值為“T1402”的標(biāo)簽,其超鏈接信息為,通過URL 分析該鏈接網(wǎng)頁類型為/techniques/,對應(yīng)的實體類型為攻擊技術(shù),再通過頁面跳轉(zhuǎn),獲取該實體的具體信息,最后利用預(yù)先定義的關(guān)系規(guī)則抽取出<實體,關(guān)系,實體>。
圖5 示例圖3 中下面屬性框?qū)?yīng)XML 部分代碼
針對網(wǎng)絡(luò)安全博客、APT 相關(guān)報告、安全公告等非結(jié)構(gòu)化數(shù)據(jù),本文采用實體關(guān)系聯(lián)合抽取方式對其實體間關(guān)系進(jìn)行抽取,采用BiLSTM-CRF 網(wǎng)絡(luò)模型作為基本知識抽取模型,最后對抽取的實體進(jìn)行融合。
在知識融合階段需要對實體進(jìn)行對齊。攻擊組織在不同的廠商分析報告中可能具有不同的名稱,如APT19,其常見名稱有“Codoso”“C0d0so0”“Codoso Team”等。要先考慮基于實體的唯一屬性標(biāo)識的實體對齊,如漏洞的CVE_id 屬性、弱點的CWE_id 屬性等。如果實體沒有唯一的屬性標(biāo)識,則需利用基于相似性函數(shù)特征匹配來實現(xiàn)對齊。常用的相似性函數(shù)包括:(1)基于文本相似性函數(shù)的特征匹配,如基于token 的相似性函數(shù)、基于編輯距離的相似性函數(shù)等;(2)基于結(jié)構(gòu)相似性函數(shù)的特征匹配,如Adard 評分算法、共同鄰居計數(shù)算法和SimRank 算法等。本文采用編輯距離相似性函數(shù)和Jaccard 相似性算法衡量字符串特征,結(jié)合經(jīng)典的VSM 計算上下文的語義特征,綜合得出實體相似度。
2.3.1 表示字符串特征的相似度
編輯距離(Edit Distance,ED)是指將一個字符串轉(zhuǎn)化為另一個字符串所需的最少操作數(shù),操作包括插入、修改、刪除。具體計算公式如下:
式中:n1,n2為兩個實體字符串,其長度分別為為字符串n1到n2之間的編輯距離;為其中較大的字符串長度。本文對編輯距離進(jìn)行歸一化處理,即∈ [0,1]。式(1)中EDSim(n1,n2)為兩個字符串之間的基于編輯距離的相似度,其值越大,表明兩個字符串的編輯距離越小,相似度越高。
Jaccard 相似性算法如下:
2.3.2 表示語義特征的相似度
僅利用字符串相似度去評價實體相似度會存在很大的誤差,本文考慮到實體所處的上下文語義特征,可結(jié)合兩個實體描述屬性中的上下文之間的文本特征計算兩個實體的相似度。對于n1和n2之間的文本特征,利用VSM 進(jìn)行計算,通過空間上的相似性能夠直觀易懂地表達(dá)語義的相似度。
首先,對兩個實體的上下文進(jìn)行預(yù)處理,如分詞、符號去除等;其次,利用詞袋模型(Bag-of-Words,BoW)將兩個實體的文本向量化,并計算兩個向量之間的余弦值作為兩個實體文本語義相似度,計算公式如下:
式中:N1,N2分別為實體n1,n2上下文文本的詞向量;N1·N2為這兩個向量的內(nèi)積;分別為向量N1和向量N2的模;cosSim(n1,n2)為N1,N2的余弦值,用來表示實體n1,n2上下文語義之間的相似度,其值越大,則越相似。
本文將上述式(3)和式(4)兩種相似度的線性組合作為最終兩個實體的相似度,計算公式如下:
式中:α和β為可調(diào)參數(shù);Sim(n1,n2)為最終兩個實體的相似度計算結(jié)果。本文選取2.2 節(jié)中抽取的攻擊者和軟件實體數(shù)據(jù)作為實驗數(shù)據(jù),一共800 條數(shù)據(jù)。實驗結(jié)果使用準(zhǔn)確度、召回率和F1 值進(jìn)行評估,并與基于文本相似性算法和基于結(jié)構(gòu)相似性算法進(jìn)行對比,實驗結(jié)果如表3 所示。
表3 實體對齊實驗結(jié)果
經(jīng)過實驗驗證可以看出,本文實體對齊算法優(yōu)于上述兩種類型算法,其準(zhǔn)確度為85%,召回率為64%,F(xiàn)1 值為73%。將2.2節(jié)中抽取出的實體,先基于實體的唯一屬性標(biāo)識進(jìn)行實體對齊,剩下的利用本文實體對齊算法進(jìn)行實體對齊,最后總體實體對齊結(jié)果如表4 所示。
表4 總體實體對齊結(jié)果
知識圖譜的存儲主要是以關(guān)系數(shù)據(jù)庫和圖數(shù)據(jù)庫兩種方式存儲。本文使用圖數(shù)據(jù)庫Neo4j來存儲知識圖譜數(shù)據(jù)。Neo4j 能夠使用與結(jié)構(gòu)化查詢語言(Structured Query Language,SQL)相似的數(shù)據(jù)庫查詢語言Cypher 語句,對存儲的數(shù)據(jù)進(jìn)行增刪改查等操作;同時Neo4j 提供用于查詢和展示數(shù)據(jù)的Web 操作界面。本文將融合后的數(shù)據(jù)轉(zhuǎn)化為csv 格式后,通過編寫Python 腳本將實體、關(guān)系、屬性數(shù)據(jù)導(dǎo)入圖數(shù)據(jù)庫Neo4j 中。構(gòu)建后的知識圖譜包含4 590 條實體、13 372 條關(guān)系,規(guī)模統(tǒng)計如表5 所示。
表5 知識圖譜規(guī)模統(tǒng)計
如圖6 所示,展示了所構(gòu)建的網(wǎng)絡(luò)安全知識圖譜部分內(nèi)容,其中每一個圓形節(jié)點代表一個實體,連接兩個圓形節(jié)點的線代表這兩個實體之間的關(guān)系,關(guān)系通常是有向的。可以看出圖譜內(nèi)容相對復(fù)雜,然而,其目的并不是一定要查看整張圖,相反,圖譜為分析和查詢提供了一個豐富的框架。除此之外,Neo4j 還能將實體的屬性和屬性值單獨進(jìn)行存儲和展示,如圖7 所示,展示了惡意軟件實體Wiper 的屬性框圖。其中展示了Wiper 的創(chuàng)建時間(Created)、ID、最后修改時間(Last Modified)、作用平臺(Platforms)、類型(Type)、版本號(Version)、名字(Name)、軟件描述(Software_description)等屬性及其屬性值。
圖6 網(wǎng)絡(luò)安全知識圖譜部分展示
圖7 惡意軟件Wiper 屬性框
通過本文構(gòu)建的知識圖譜,安全人員能高效地對網(wǎng)絡(luò)威脅場景進(jìn)行分析。利用Neo4j 自帶的Cypher 查詢語言,通過路徑搜索,能清楚地看到目標(biāo)客體遭受攻擊的所有路徑,包括攻擊者所利用的攻擊軟件和攻擊手段等。當(dāng)示例目標(biāo)客體“cpe:2.3:o:apple:mac_os_x:10.5.1:*:*:*:*:*:*:*”(簡稱cpe1)受到了攻擊時,Cypher 查詢語言如下文所示,其中限定攻擊路徑條數(shù)展示,最終結(jié)果如圖8 所示。
從圖8 可知,攻擊者APT32 和WIRTE 都可以對目標(biāo)客體cpe1 發(fā)起攻擊。APT32 使用(Use)攻擊技術(shù)Software Deployment Tools(軟件部署工具),其中攻擊技術(shù)與攻擊模式CAPEC-187相關(guān)聯(lián)(Same_as),即APT32 可以使用攻擊模式CAPEC-187。攻擊模式CAPEC-187 利用(Exploit)弱點CWE-494,其中弱點CWE-494導(dǎo)致(Cause)漏洞CVE-2008-3438 的發(fā)生,即漏洞CVE-2008-3438 屬于弱點CWE-494。漏洞CVE-2008-3438 存在于(Exist_in)目標(biāo)客體cpe1 中。通過目標(biāo)客體路徑反向搜索,可以得到所有可能的攻擊路徑,安全人員可根據(jù)路徑節(jié)點有針對性地實施緩解措施,從而保護(hù)網(wǎng)絡(luò)安全。
圖8 攻擊路徑查詢
在網(wǎng)絡(luò)環(huán)境中,存在著大量、多源異構(gòu)的網(wǎng)絡(luò)安全數(shù)據(jù),為使其合理整合利用,本文借助Neo4j 圖數(shù)據(jù)庫構(gòu)建了網(wǎng)絡(luò)安全知識圖譜。首先,本文設(shè)計了網(wǎng)絡(luò)安全本體,并在此基礎(chǔ)上,利用Scrapy 爬蟲框架對多源數(shù)據(jù)進(jìn)行采集并抽取出實體、關(guān)系和屬性;其次,利用相似函數(shù)與向量空間模型對實體進(jìn)行對齊、融合,最終構(gòu)建出網(wǎng)絡(luò)安全知識圖譜。網(wǎng)絡(luò)安全知識圖譜的構(gòu)建一方面有利于為安全技術(shù)人員提供技術(shù)支持,另一方面為后續(xù)網(wǎng)絡(luò)安全應(yīng)用場景提供參考。
本文針對網(wǎng)絡(luò)安全實體進(jìn)行了實體對齊算法研究,實驗證明,該方法具有良好的性能,但由于本文抽取出的數(shù)據(jù)量相對較少,對于更加復(fù)雜的應(yīng)用場景的表現(xiàn)還有待考證,并且算法的可移植性有待進(jìn)一步提高。因此,今后將針對這些問題做進(jìn)一步的研究,同時對于網(wǎng)絡(luò)安全知識圖譜自動化構(gòu)建程度和應(yīng)用開發(fā)等方面有待進(jìn)一步完善。