基于圖數(shù)據(jù)庫的系統(tǒng)日志圖譜模型構(gòu)建與分析_第1頁
基于圖數(shù)據(jù)庫的系統(tǒng)日志圖譜模型構(gòu)建與分析_第2頁
基于圖數(shù)據(jù)庫的系統(tǒng)日志圖譜模型構(gòu)建與分析_第3頁
基于圖數(shù)據(jù)庫的系統(tǒng)日志圖譜模型構(gòu)建與分析_第4頁
基于圖數(shù)據(jù)庫的系統(tǒng)日志圖譜模型構(gòu)建與分析_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

日志分析技術(shù)以網(wǎng)絡(luò)環(huán)境中各類設(shè)備產(chǎn)生的記錄為目標(biāo),通過自動化分析網(wǎng)絡(luò)中的各類改變以發(fā)現(xiàn)網(wǎng)絡(luò)威脅并及時(shí)發(fā)出警報(bào),可顯著提高計(jì)算機(jī)系統(tǒng)的防護(hù)能力。目前成熟的日志分析技術(shù)已經(jīng)能夠準(zhǔn)確地檢測出漏洞利用、病毒植入或異常系統(tǒng)行為等事件。然而,隨著高級持續(xù)性威脅(AdvancedPersistentThreat,APT)的出現(xiàn),傳統(tǒng)日志分析技術(shù)的局限性也隨之體現(xiàn):一方面,其主要信息來源為日志數(shù)據(jù),維度相對單一;另一方面,其難以表示數(shù)據(jù)中異常事件的關(guān)聯(lián)性。為提升關(guān)聯(lián)能力,研究人員開始將圖的思想融入日志分析。相比于文本數(shù)據(jù),將日志中的事件和關(guān)系轉(zhuǎn)換為節(jié)點(diǎn)和邊以構(gòu)成圖結(jié)構(gòu)能直觀體現(xiàn)出數(shù)據(jù)間的關(guān)聯(lián)性。針對網(wǎng)絡(luò)日志文件提出一種方法,將日志實(shí)體材料化為圖結(jié)構(gòu),并通過Neo4j數(shù)據(jù)庫驅(qū)動以提供查詢和可視化。朱元慶等人基于系統(tǒng)日志的派生關(guān)系將日志轉(zhuǎn)化為無向圖,并應(yīng)用XGBoost算法優(yōu)化圖中各邊的權(quán)重值。但該工作構(gòu)建的日志圖中關(guān)系較為單一。薛見新分析了基于終端側(cè)、系統(tǒng)日志和應(yīng)用程序日志的關(guān)聯(lián)、網(wǎng)絡(luò)側(cè)和終端側(cè)的關(guān)聯(lián)3個(gè)維度的攻擊溯源日志圖構(gòu)建技術(shù)。余真奇提出了一種按起源圖思想構(gòu)建系統(tǒng)日志圖的方法。為豐富信息來源,研究人員將圖進(jìn)一步擴(kuò)展為圖譜。圖結(jié)構(gòu)除能建模日志中的復(fù)雜事件和關(guān)系外,也能有效地處理多源數(shù)據(jù)的集成和關(guān)聯(lián),即形成圖譜。MITRE組織構(gòu)建了一個(gè)知識圖譜“CyGraph”,其將網(wǎng)絡(luò)設(shè)施、安全態(tài)勢、威脅和任務(wù)依賴知識與日志數(shù)據(jù)融合為一個(gè)全局模型。討論了一種通過語義表示將日志實(shí)體鏈接到外部知識的方法,但并未包含威脅情報(bào)這一外部知識。研究較好地彌補(bǔ)了這一不足。他們提出一種能夠集成多源威脅情報(bào)的網(wǎng)絡(luò)安全知識圖譜,并以日志數(shù)據(jù)為對象進(jìn)行了推理分析。Kurniawan等人提出了一種基于知識圖譜的日志分析框架,其基于語義網(wǎng)融入了多種威脅檢測技術(shù),并提供了內(nèi)部系統(tǒng)知識和外部安全知識的上下文關(guān)聯(lián)。陶源等人提出網(wǎng)絡(luò)安全等級保護(hù)日志分析圖譜模型,構(gòu)建了幾種將等保測評數(shù)據(jù)與系統(tǒng)日志相融合的理論分析框架。目前圖譜相關(guān)研究大多用其構(gòu)建的模型直接對原始日志或經(jīng)過簡單關(guān)聯(lián)的日志圖進(jìn)行分析。我們認(rèn)為,前述兩個(gè)方向的研究思路可以進(jìn)行有效結(jié)合,以形成更加完整的圖譜模型。為驗(yàn)證此觀點(diǎn),本文提出了一種基于圖數(shù)據(jù)庫的系統(tǒng)日志圖譜模型。一方面,其對系統(tǒng)日志內(nèi)部的多種關(guān)系進(jìn)行建模,將文本數(shù)據(jù)轉(zhuǎn)換為更直觀易懂的圖數(shù)據(jù);另一方面,該模型實(shí)現(xiàn)了日志與外部多維知識的有效融合,便于分析人員以全局視角研究網(wǎng)絡(luò)安全事件。1圖譜模型設(shè)計(jì)知識圖譜是一種結(jié)構(gòu)化的語義知識庫,用于描述現(xiàn)實(shí)世界中的概念及其相互關(guān)系。其基本組成單位是“實(shí)體—關(guān)系—實(shí)體”三元組。如圖1所示,基于一篇綜述網(wǎng)絡(luò)安全知識圖譜應(yīng)用場景的文獻(xiàn)[12]提出的4維圖譜結(jié)構(gòu),本章將以行為數(shù)據(jù)維度為核心,輔以安全知識、威脅情報(bào)和環(huán)境數(shù)據(jù)3個(gè)維度,設(shè)計(jì)并構(gòu)建日志圖譜模型。圖1通用網(wǎng)絡(luò)安全知識圖譜結(jié)構(gòu)1.1安全知識安全知識庫通常是為個(gè)人、政府、安全產(chǎn)品和服務(wù)社區(qū)開發(fā)特定威脅模型和方法的基礎(chǔ)。在本模型中,其作用是從抽象層面描述或標(biāo)記系統(tǒng)日志所代表的行為。2020年,來自麻省理工學(xué)院的研究團(tuán)隊(duì)構(gòu)建了一個(gè)綜合網(wǎng)絡(luò)安全知識圖模型,并命名為“BRON”。如圖2所示(圖中數(shù)字代表實(shí)體內(nèi)的節(jié)點(diǎn)數(shù)量),BRON將對抗戰(zhàn)術(shù)技術(shù)和常識矩陣(AdversarialTacticsTechniquesandCommonKnowledge,ATT&CK)、通用攻擊模式枚舉和分類(CommonAttackPatternEnumerationandClassification,CAPEC)、通用弱點(diǎn)枚舉(CommonWeaknessEnumeration,CWE)以及通用漏洞披露(CommonVulnerabilitiesandExposures,CVE)等知識庫依次關(guān)聯(lián),形成一種由高維戰(zhàn)術(shù)至低維漏洞的層次結(jié)構(gòu)。鑒于BRON已經(jīng)開源,本文圖譜模型直接將其作為“安全知識”這一維度的知識。圖2BRON知識圖內(nèi)部結(jié)構(gòu)1.2威脅情報(bào)威脅情報(bào)(CyberThreatIntelligence,CTI)是一種基于證據(jù)的知識,包括上下文、機(jī)制、標(biāo)示、含義和建議,這些知識與資產(chǎn)所面臨的威脅或危害相關(guān),可用于指導(dǎo)應(yīng)對威脅或危害的決策。在本模型中,它的作用是在理論層面指導(dǎo)基于日志的異常事件關(guān)聯(lián)。由于威脅情報(bào)的提取和分析并非本文的研究重點(diǎn),故我們在試驗(yàn)圖譜模型時(shí)引入了若干常見攻擊的“戰(zhàn)術(shù)技術(shù)過程(TacticsTechniques

Procedures,TTPs)”描述作為威脅情報(bào)。1.3環(huán)境數(shù)據(jù)環(huán)境數(shù)據(jù)是指圖譜模型具體應(yīng)用環(huán)境的數(shù)據(jù)。一般以目標(biāo)系統(tǒng)的網(wǎng)絡(luò)拓?fù)鋱D為基礎(chǔ),加入設(shè)備對應(yīng)的操作系統(tǒng)、IP地址等屬性構(gòu)成。其在本模型中的作用是以對目標(biāo)系統(tǒng)的物理組成與結(jié)構(gòu)進(jìn)行建模。本文實(shí)驗(yàn)環(huán)境的網(wǎng)絡(luò)拓?fù)鋵⒃诘?章中給出。1.4行為數(shù)據(jù)行為數(shù)據(jù)是目標(biāo)系統(tǒng)在實(shí)際工作過程中產(chǎn)生行為的記錄。本文模型的行為數(shù)據(jù)由Sysmon生成,其是一款由微軟開發(fā)的日志傳感器,能監(jiān)控系統(tǒng)的動態(tài)行為并記錄于日志。Sysmon日志是由多種字段信息構(gòu)成的結(jié)構(gòu)化數(shù)據(jù),我們從中篩選出圖結(jié)構(gòu)化所需的主要字段,如表1所示。表1Sysmon日志主要字段信息將文本格式的日志轉(zhuǎn)換為圖數(shù)據(jù)結(jié)構(gòu)的關(guān)鍵在于梳理日志中的關(guān)聯(lián)關(guān)系。除較為明顯的時(shí)間關(guān)系外,我們還挖掘出了另外3種關(guān)聯(lián)關(guān)系:進(jìn)程—日志、進(jìn)程—進(jìn)程、父進(jìn)程—子進(jìn)程。基于這些關(guān)系,我們可以有效地構(gòu)建出Sysmon日志圖。(1)日志—日志(Syslog-Syslog)。“日志—日志”關(guān)系可基于日志的生成時(shí)間進(jìn)行構(gòu)建。我們首先根據(jù)Hostname字段對日志分類,然后按時(shí)間順序?qū)⑷罩竟?jié)點(diǎn)進(jìn)行串聯(lián),如圖3所示。圖3“日志—日志”關(guān)系內(nèi)部結(jié)構(gòu)(2)進(jìn)程—日志(Process-Syslog)。“進(jìn)程—日志”關(guān)系隱藏在日志的ProcessGuid字段內(nèi)容中。實(shí)際上,一個(gè)進(jìn)程包含多條日志,同一進(jìn)程下的日志有著相同的ProcessGuid。為更清楚地表示該關(guān)系,我們將“進(jìn)程”這一抽象概念進(jìn)行了實(shí)體化:首先提取出所有ProcessGuid,并創(chuàng)建對應(yīng)數(shù)量的“進(jìn)程”節(jié)點(diǎn)進(jìn)行一一綁定;之后將每個(gè)進(jìn)程所包含的日志節(jié)點(diǎn)與之相連,形成圖4所示的“進(jìn)程—日志”關(guān)系。這樣一個(gè)進(jìn)程內(nèi)的所有日志便可通過一個(gè)節(jié)點(diǎn)統(tǒng)一表示,大大減少了后續(xù)構(gòu)建進(jìn)程間關(guān)系時(shí)的連線數(shù)量。圖4“進(jìn)程—日志”關(guān)系內(nèi)部結(jié)構(gòu)(3)進(jìn)程—進(jìn)程(Process-Process)?!斑M(jìn)程—進(jìn)程”關(guān)系包含在EventID為“10”的日志中。根據(jù)Sysmon對事件編號的定義,10號事件為“進(jìn)程訪問”,當(dāng)一個(gè)進(jìn)程訪問另一個(gè)進(jìn)程時(shí)便會產(chǎn)生這類日志。具體而言,10號事件日志獨(dú)有SourceProcessGuid和TargetProcessGuid兩個(gè)字段,分別用于記錄源進(jìn)程和目標(biāo)進(jìn)程的ProcessGuid,據(jù)此可以構(gòu)建進(jìn)程間的訪問關(guān)系。同時(shí),由于10號事件日志自身沒有ProcessGuid,故無法與進(jìn)程實(shí)體相連。為避免其成為孤立節(jié)點(diǎn),我們設(shè)計(jì)了圖5所示結(jié)構(gòu),即將其插入到“進(jìn)程—進(jìn)程”關(guān)系中間。圖5“進(jìn)程—進(jìn)程”關(guān)系內(nèi)部結(jié)構(gòu)(4)父進(jìn)程—子進(jìn)程(Parentp-Chidp)?!案高M(jìn)程—子進(jìn)程”關(guān)系包含在EventID為“1”的日志中。根據(jù)Sysmon對事件編號的定義,1號事件為“進(jìn)程創(chuàng)建”,當(dāng)一個(gè)進(jìn)程創(chuàng)建另一個(gè)新進(jìn)程時(shí)便會產(chǎn)生這類日志。具體而言,1號事件日志獨(dú)有ParentProcessGuid字段,記錄了創(chuàng)建該進(jìn)程的父進(jìn)程的ProcessGuid,據(jù)此可以構(gòu)建進(jìn)程間的父子關(guān)系,如圖6所示。圖6“父進(jìn)程—子進(jìn)程”關(guān)系內(nèi)部結(jié)構(gòu)此外,為探究“父進(jìn)程—子進(jìn)程”關(guān)系是否包含于“進(jìn)程—進(jìn)程”關(guān)系,我們通過統(tǒng)計(jì)兼具兩種關(guān)系的進(jìn)程組的數(shù)量,分別計(jì)算出兩組日志數(shù)據(jù)集中兩種關(guān)系的重疊率。表2數(shù)據(jù)表明,這兩種關(guān)系僅有少量重疊,應(yīng)被視為獨(dú)立的兩種關(guān)系,分別進(jìn)行建模。表2“父進(jìn)程—子進(jìn)程”與“進(jìn)程—進(jìn)程”重疊情況1.5圖譜融合前四節(jié)分別探討論述了圖譜中各個(gè)維度的內(nèi)部關(guān)系。本節(jié)我們定義了表3所示的維度間關(guān)系對各維度進(jìn)行關(guān)聯(lián),以構(gòu)成完整的圖譜模型。表3圖譜模型維度間的關(guān)聯(lián)關(guān)系本文圖譜模型的完整結(jié)構(gòu)如圖7所示(BRON的內(nèi)部結(jié)構(gòu)在此省略),其呈現(xiàn)出分層結(jié)構(gòu),旨在實(shí)現(xiàn)高維威脅情報(bào)與低維設(shè)備資產(chǎn)(Asset)之間的相互映射。模型中實(shí)體與關(guān)系的數(shù)據(jù)庫文件的具體編寫將在第4章中舉例說明。圖7網(wǎng)絡(luò)安全日志圖譜模型結(jié)構(gòu)2實(shí)驗(yàn)環(huán)境2.1網(wǎng)絡(luò)拓?fù)浔疚膶?shí)驗(yàn)的靶場主要由3個(gè)部分組成,其拓?fù)湫畔⑷鐖D8所示。(1)數(shù)據(jù)生成區(qū)。數(shù)據(jù)生成區(qū)以服務(wù)器為物理基礎(chǔ),由服務(wù)器上運(yùn)行的若干虛擬機(jī)具體組成。其中每臺虛擬機(jī)均安裝了日志傳感器Sysmon和日志轉(zhuǎn)發(fā)軟件Nxlog。此外,“服務(wù)器1”所管轄的局域網(wǎng)被特別配置為了“域”,可由域管理員賬號統(tǒng)一訪問和管理。(2)攻擊端。攻擊端設(shè)定為一臺已接入服務(wù)器3所管轄局域網(wǎng)內(nèi)的KaliLinux主機(jī)。(3)數(shù)據(jù)匯總分析端。數(shù)據(jù)匯總分析端由一臺通過軟件防火墻與實(shí)驗(yàn)環(huán)境相隔離的主機(jī)構(gòu)成,是本文圖譜模型的實(shí)際部署位置。2.2仿真攻擊本文實(shí)驗(yàn)的日志數(shù)據(jù)集中包含兩種攻擊,主要步驟如表4、表5所示。表4橫向移動(Lateralmovement)攻擊步驟表5文件竊取(Steal)攻擊步驟3圖譜模型實(shí)驗(yàn)與評估在實(shí)際開發(fā)過程中,可通過圖數(shù)據(jù)庫來驅(qū)動日志圖譜模型。圖數(shù)據(jù)庫一般由“實(shí)體”和“關(guān)系”兩種文件組成,文件中的每行代表實(shí)體的一個(gè)節(jié)點(diǎn)或關(guān)系的一條邊,每列代表實(shí)體或關(guān)系的一種屬性。圖8實(shí)驗(yàn)靶場網(wǎng)絡(luò)拓?fù)鋱D本文選擇ArangoDB圖數(shù)據(jù)庫來驅(qū)動模型的構(gòu)建與實(shí)驗(yàn)。以“威脅情報(bào)”為例,圖7中實(shí)體“CTI”的部分實(shí)現(xiàn)如圖9所示。其中“_key”屬性是數(shù)據(jù)庫規(guī)定的節(jié)點(diǎn)唯一標(biāo)識符,其余如戰(zhàn)術(shù)名和攻擊指令模板等為自定義實(shí)體屬性;圖7中實(shí)體內(nèi)關(guān)系“CTI-CTI”和實(shí)體間關(guān)系“CTI-TTP”的部分實(shí)現(xiàn)如圖10所示。其中規(guī)定“_from”和“_to”屬性分別用于記錄邊的開始和結(jié)束節(jié)點(diǎn),格式為“實(shí)體名/節(jié)點(diǎn)標(biāo)識符”。圖9圖譜模型實(shí)體文件編寫圖10圖譜模型關(guān)系文件編寫3.1算法與實(shí)驗(yàn)結(jié)果本文圖譜的層次結(jié)構(gòu)代表其有著較大的深度,此時(shí)基于廣度優(yōu)先搜索(Breadth-FirstSearch,BFS)的圖遍歷算法具備更好的適用性和搜索效率,故我們基于該算法進(jìn)行相關(guān)實(shí)驗(yàn)。算法流程如下:以“橫向移動”為例,攻擊過程中,某主機(jī)的安全軟件將數(shù)據(jù)集中17465號日志記錄的命令行操作(向外發(fā)送了一個(gè)未知應(yīng)用程序)定義為異常事件,于是我們以該日志節(jié)點(diǎn)為遍歷起點(diǎn)進(jìn)行事件關(guān)聯(lián)。關(guān)聯(lián)過程分為3步,結(jié)果如圖11所示。圖11“橫向移動”攻擊事件關(guān)聯(lián)結(jié)果(1)日志層向上遍歷至CTI層。該步驟旨在將異常日志映射到相應(yīng)的攻擊過程上。設(shè)定BFS深度為3,搜索路徑為“Syslog-TTP”“TechniqueMitigation”(BRON內(nèi)部關(guān)系)和“CTI-TTP”關(guān)系。遍歷結(jié)果顯示,該日志與44號ATT&CK技術(shù)有映射關(guān)系。該技術(shù)屬于遠(yuǎn)程服務(wù)利用技術(shù),可設(shè)置11號等緩解措施進(jìn)行防御。并且CTI中記錄的橫向移動攻擊的第2步也使用了該技術(shù)。(2)CTI層橫向遍歷。該步驟旨在獲取CTI中對應(yīng)的完整攻擊過程。設(shè)定BFS深度為1,搜索路徑為“CTI-CTI”關(guān)系。遍歷結(jié)果顯示,CTI中橫向移動相關(guān)的攻擊過程共有3步。(3)CTI層向下遍歷至資產(chǎn)層。該步驟旨在關(guān)聯(lián)攻擊事件,還原攻擊全貌。設(shè)定BFS深度為6,搜索路徑依次為“CTI-TTP”“TechniqueMitigation”“Syslog-TTP”“Process-Syslog”“Parentp-Childp”和“Asset-Process”關(guān)系。遍歷結(jié)果顯示,黑客在CTC備機(jī)(asset/9)和主機(jī)(asset/8)間進(jìn)行了橫向移動。通過分析關(guān)聯(lián)結(jié)果中的詳細(xì)信息得出,由于CTC主備機(jī)同屬一個(gè)域內(nèi),橫向移動第1步通過網(wǎng)絡(luò)共享發(fā)現(xiàn)CTC主機(jī)(asset/8);第2步利用網(wǎng)絡(luò)共享服務(wù)從CTC備機(jī)(asset/9)向主機(jī)發(fā)送代理程序文件;第3步通過備機(jī)(asset/9)遠(yuǎn)程運(yùn)行代理程序,建立攻擊端與主機(jī)間的代理連接,實(shí)現(xiàn)橫向移動。此外,還發(fā)現(xiàn)CTC備機(jī)上與攻擊事件相關(guān)的3個(gè)進(jìn)程(process/741,894,1055)均來自同一個(gè)父進(jìn)程(process/884),經(jīng)驗(yàn)證該父進(jìn)程是建立CTC備機(jī)與攻擊端之間代理連接的進(jìn)程,即黑客初始接入的位置。3.2圖譜評估對圖進(jìn)行評估可以幫助我們了解和描述圖的特征和性質(zhì),從而更好地理解和分析圖數(shù)據(jù)。本文從基本指標(biāo)和查詢性能兩個(gè)方面對

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論