• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Windows日志分析的終端安全研究

      2018-03-30 03:25:32李春強(qiáng)夏偉
      網(wǎng)絡(luò)空間安全 2018年9期

      李春強(qiáng) 夏偉

      摘 要:網(wǎng)絡(luò)安全已經(jīng)上升到關(guān)系國(guó)家主權(quán)戰(zhàn)略問題,受到廣泛的重視。近年越來越多的新型攻擊方式不斷涌現(xiàn),對(duì)于這些無法防范的安全威脅,經(jīng)過正確配置和記錄的系統(tǒng)日志便發(fā)揮出其價(jià)值。尤其對(duì)于大型企業(yè),其系統(tǒng)日志是冗雜且數(shù)量龐大,完整性也經(jīng)常遭到人為的破壞。論文介紹了Windows操作系統(tǒng)的日志結(jié)構(gòu),利用已有的日志分析輔助工具和批量處理工具,討論如何更高效地利用系統(tǒng)日志完成安全事件的溯源,并查找系統(tǒng)未知漏洞以進(jìn)行修補(bǔ),最終給出系統(tǒng)日志分析的基本模型。

      關(guān)鍵詞:日志分析;終端安全; 企業(yè)內(nèi)網(wǎng)安全

      中圖分類號(hào):TP393.08 文獻(xiàn)標(biāo)識(shí)碼:A

      Abstract: Network security has risen to the relationship between national sovereignty strategic issues, and has been widely attention. Recently more and more completely new attacking methods appeared on the network. The event log is getting valuable because we cant defend those threats. But the event log of a system is redundant and in a large amount, especially for enterprise. And the integrality of the log is always destroyed factitiously. This passage will introduce the struct of Windows event log and discuss about how to originate the source of the security accident and find vulnerabilities to repair. Finally, will give out basic model of system log analysis.

      Key words: event log analysis; terminal security; corporation intranet security

      1 引言

      內(nèi)網(wǎng)安全是企業(yè)信息安全的重要組成部分,而日志審計(jì)也是安全審計(jì)中最為核心的一部分,日志審計(jì)中很大一部分比重是終端日志審計(jì)。然而,Windows操作系統(tǒng)的日志結(jié)構(gòu)復(fù)雜,對(duì)其進(jìn)行統(tǒng)一且合理的自動(dòng)化分析成為終端安全的重點(diǎn)和難點(diǎn),本文提出一種分析方式,可以有效地整理和分析Windows日志。

      2 日志分析工具現(xiàn)狀

      已經(jīng)有研究團(tuán)隊(duì)開發(fā)出了自動(dòng)化的日志分析工具。這些工具不限于針對(duì)Windows系統(tǒng)的日志分析,主流針對(duì)的是中間件,如Apache、Nginx、Tomcat等Web中間件,它們可以很方便地得出其中的可疑事件或入侵事件,如XSS攻擊、SQL注入等。對(duì)于Windows日志分析較為知名的有軟件Event Log Analyzer、Splunk等。

      2.1 Event Log Analyzer

      一款綜合了日志收集與分析、合法性檢查(信息系統(tǒng)安全性是否符合標(biāo)準(zhǔn))的日志分析工具,能夠?qū)θ罩沮厔?shì)進(jìn)行繪圖,可統(tǒng)計(jì)所有分級(jí)事件的數(shù)目,它以報(bào)表的形式反饋用戶重點(diǎn)關(guān)注的內(nèi)容,不限于Windows日志,也包含Linux/Unix系統(tǒng)和中間件日志。

      2.2 Splunk

      依賴SPL(搜索處理語言)進(jìn)行數(shù)據(jù)搜索的一款日志分析軟件,用戶使用SPL來生成自己需要的報(bào)表,它支持大量第三方插件,目前其APP商店中有300多款輔助日志分析的插件,且都是開箱即用的,功能十分豐富,可自由定制。Splunk也對(duì)軟件使用和如何編寫插件提供了豐富的文檔。

      3 Windows操作系統(tǒng)日志結(jié)構(gòu)

      3.1日志文件分布和格式

      微軟從Windows Vista開始使用EVTX格式記錄日志,可以使用事件查看器將其導(dǎo)出為多種格式(XML、CSV、TXT等),推薦XML格式。XML格式導(dǎo)出的內(nèi)容不包括事件查看器對(duì)事件的解析文本。而TXT格式則是將所有事件的解析文本全部保存。Windows系統(tǒng)大部分日志保存在%SystemRoot%\winevt\Logs中,用戶可自行導(dǎo)出到任何位置,除此之外,系統(tǒng)中仍有一部分日志以純文本形式(.log)存放在零散的位置,由于系統(tǒng)清理軟件可能定期刪除它們,其存在不穩(wěn)定。但我們不能忽視其在日志安全性審計(jì)中的價(jià)值。如C:\Windows\Logs\CBS\CBS.log,該文件記錄了系統(tǒng)實(shí)用工具SFC(System File Check系統(tǒng)完整性檢查工具)的運(yùn)行日志。部分病毒會(huì)修改或刪除關(guān)鍵的系統(tǒng)文件,SFC檢查時(shí)會(huì)在日志中記錄相關(guān)信息。

      3.2 日志內(nèi)容和分類

      主流針對(duì)Windows日志的研究從事件ID入手,然而對(duì)于Windows日志而言事件ID并非事件的唯一標(biāo)識(shí),有時(shí)具有相同事件ID的事件卻顯然從分類上沒有關(guān)聯(lián),對(duì)于Windows中的日志,應(yīng)當(dāng)從三方面進(jìn)行分類:事件頻道、事件源、事件ID。事件頻道即事件查看器中列舉出的每一個(gè)事件容器,每個(gè)頻道對(duì)應(yīng)著一個(gè)EVTX文件,里面記錄若干不同事件源、不同事件ID的事件。事件源即產(chǎn)生此事件的組件,事件源內(nèi)事件的ID是唯一的。事件源不一定來自系統(tǒng)組件,其他應(yīng)用程序也可以將事件記錄到系統(tǒng)日志中。事件ID即一個(gè)事件源內(nèi)部的事件標(biāo)識(shí)(事件源內(nèi)唯一),可在此范圍內(nèi)依據(jù)此ID對(duì)篩選事件,此處應(yīng)當(dāng)指出:Windows系統(tǒng)中事件的ID并非一成不變,相同的事件在不同版本系統(tǒng)中可能存在差異。事件查看器的Windows日志文件夾中列出了幾個(gè)重要的事件頻道Application、Setup、System、Security、Forwarded Event。Forwarded Event在未設(shè)置事件轉(zhuǎn)發(fā)時(shí)一般為空。Setup主要負(fù)責(zé)記錄系統(tǒng)安裝補(bǔ)丁包的情況,將一個(gè)頻道的事件導(dǎo)出為XML格式后,可以觀察到:一個(gè)事件就是一個(gè)Event元素,其下包含兩個(gè)子元素System、Event Data(個(gè)別情況除外)。System中部分元素及其含義對(duì)照如表1所示。

      3.3日志事件源及ID號(hào)

      Application中需要重點(diǎn)關(guān)注的事件[1],如表2所示。

      Security頻道中的事件需要重點(diǎn)關(guān)注的事件[2],如表3所示。

      System頻道中需要重點(diǎn)關(guān)注的事件[1],如表4所示。

      表格說明1[3]:此事件記錄了文件篩選器的注冊(cè)過程。文件篩選器主要用于過濾對(duì)文件讀寫的操作,殺毒軟件依賴此功能攔截病毒和木馬。它具有一定的時(shí)序,操作系統(tǒng)使用系統(tǒng)棧存儲(chǔ)每個(gè)文件系統(tǒng)篩選器的實(shí)例,其中殺毒軟件的篩選器實(shí)例應(yīng)當(dāng)在棧中較高的位置以監(jiān)視整個(gè)文件系統(tǒng)。高度較低的幾個(gè)常見文件篩選器是(從高到低):Storqosoft、Wcifs、CldFlt,F(xiàn)ileCrypt、Luafv、Npsvctrig、Wof、FileInfo。

      4 Windows日志過濾和分析

      Windows每天都要產(chǎn)生很多不同類型的日志,當(dāng)日志來源于運(yùn)行了幾周甚至幾個(gè)月的終端,就必須對(duì)日志進(jìn)行“清洗”以除去那些對(duì)安全性分析無關(guān)的事件。

      4.1事件冗余度和低頻事件

      Windows中幾乎所有事件都具有一定冗余度,對(duì)于一個(gè)事件本身而言,在不分析時(shí)序關(guān)系時(shí)可以不關(guān)心System中的數(shù)據(jù),只要對(duì)比EventData便可知兩個(gè)事件是否相同。將這些事件依據(jù)ID分類,就能得到在給定的事件集中各個(gè)類型事件的冗余度了,現(xiàn)將日志的冗余度定義為日志的R屬性。在Python中利用xml.dom解析包很容易對(duì)導(dǎo)出為XML的事件集進(jìn)行分析并計(jì)算其冗余度,對(duì)于冗余度本身,設(shè)定一定比例標(biāo)識(shí),如表5所示。

      “$”的數(shù)目越多,冗余的程度越大。最終得到形式如同圖1的事件冗余度信息。

      注:ID為事件ID, SUM(Types)是事件md5值的取值數(shù)目。SUM(Events)是此ID下總計(jì)的事件數(shù)。P是事件源名稱,T為任務(wù)類型(System元素中的Task字段的值),最后的數(shù)字是哈希值為該值的事件數(shù)目。

      Note: ID=Event ID, SUM(Types) = counts of md5 values. SUM(EVENTS) = count of event with this ID。P=Event source,T=Task type. The number at the last is total of this type of event.

      從結(jié)果我們可以看出,Windows中很多事件的冗余度都是相當(dāng)大的。在系統(tǒng)日志中,System頻道事件ID為7016的事件,冗余度達(dá)到了100%,事件重復(fù)了超過8000次。對(duì)于這樣的事件,如果和相同事件源中其他事件沒有時(shí)序關(guān)系,它們顯然不具備任何分析價(jià)值。

      另外,若所有終端都處在相同的網(wǎng)絡(luò)環(huán)境下,它們中高頻事件的種類和比例應(yīng)當(dāng)類似。除此之外可以直接從事件的來源入手,如那些來源于Windows Search的事件顯然沒有研究的價(jià)值。如果一個(gè)事件源中不同ID的事件具有時(shí)序關(guān)系,在事件查看器中依據(jù)來源篩選事件時(shí),一定有十分明顯的時(shí)序關(guān)系,如圖1所示。

      圖1中4624、4627、4672的時(shí)序關(guān)系是很明顯的,對(duì)于不明顯的我們可以借助Python解析已導(dǎo)出的XML格式事件來分析。對(duì)于高頻事件,我們應(yīng)當(dāng)予以過濾,而對(duì)于低頻事件,我們應(yīng)當(dāng)予以重視。相對(duì)于安全事件,系統(tǒng)產(chǎn)生的日常運(yùn)行日志中只有很少的一部分包含我們需要關(guān)心的安全事件。實(shí)際上絕大多數(shù)入侵事件、病毒感染等都不那么容易觸發(fā)系統(tǒng)事件,所以低頻的事件更能反饋安全問題。部分低頻事件甚至能指出入侵者以何種方式入侵系統(tǒng),通過分析這類事件,我們可以亡羊補(bǔ)牢。除了Windows日志文件夾中四個(gè)最重要的頻道,應(yīng)用程序和服務(wù)日志在必要的時(shí)候也應(yīng)予以關(guān)注。

      4.2 實(shí)例:從日志看出入侵事件

      部分安全事件在日志中是能夠反映出來的,但不能過度依賴Windows自身記錄的日志去追蹤所有安全事件,這是不現(xiàn)實(shí)的。

      4.2.1 Wannacry勒索病毒侵入系統(tǒng)后的日志特征

      Wannacry是2017年5月12日爆發(fā)的利用Windows系統(tǒng)445端口傳播的蠕蟲,它利用MS17-010漏洞在全球范圍內(nèi)肆虐,入侵系統(tǒng)后加密用戶數(shù)據(jù),必須交付一定的贖金才能解鎖文件。一般情況下,Wannacry病毒入侵系統(tǒng)后,沒有明顯的特征事件可以指出病毒何時(shí)入侵,雖然在日志中沒有明顯的蹤跡可循,但不意味著它在日志中永遠(yuǎn)不會(huì)留下蹤跡。在某種極端的情況下,病毒在C:\Windows\下釋放的病毒程序tasksche.exe會(huì)出現(xiàn)軟件并行配置不正確的情況,此時(shí)在Application頻道會(huì)記錄此事件,事件源為Side by Side。

      4.2.2 Hydra暴力破解遠(yuǎn)程桌面服務(wù)用戶名和密碼

      Windows遠(yuǎn)程桌面服務(wù)可以幫助系統(tǒng)管理員遠(yuǎn)程登錄計(jì)算機(jī),只要提供正確的用戶名和密碼就可以成功登錄并執(zhí)行任意操作。如果登錄用戶使用了弱口令,使用Kali下提供的密碼爆破軟件Hydra即可對(duì)登錄密碼進(jìn)行爆破。證了此過程:靶機(jī)為Windows 7,用戶名為test,密碼為123456。嘗試的用戶名為:a,b,…… r,s,test,嘗試的密碼為:1,12,123,…,123456。在暴力破解用戶名和登錄密碼成功后,在事件查看器\應(yīng)用程序和服務(wù)日志\Microsoft\Windows\TerminalServices-RemoteConnectionManager\Operational下我們可以很明顯的看到每一次爆破行為嘗試的用戶名。

      4.3 日志分析方法

      鑒于Windows日志分析的特殊性,這里給出日志分析的一般模型以供參考。

      實(shí)質(zhì)上,對(duì)于Windows系統(tǒng)日志的分析就在特征庫匹配和無關(guān)事件的索引上,但由于Windows日志的特殊性,很難做到所有日志都使用自動(dòng)化分析工具分析,對(duì)于部分日志仍需人工分析。

      5 使用Sysmon追蹤入侵行為

      Windows事件記錄在真正的入侵行為發(fā)生后作用有限,無法溯源攻擊行為發(fā)生的過程。對(duì)此,需要更全面的日志記錄工具。

      5.1 Sysmon簡(jiǎn)介

      Sysmon是Wininternals公司提供的免費(fèi)系統(tǒng)調(diào)試工具集Sysinternals中的一個(gè)命令行工具,用戶給定XML格式的過濾規(guī)則文件后,便可以根據(jù)此規(guī)則收集系統(tǒng)中發(fā)生的事件。目前Sysmon最新的版本為v8.0,使用自己的驅(qū)動(dòng)程序來保證對(duì)事件的完整收集,如表7所示[4]。

      安裝Sysmon服務(wù)時(shí),使用命令:sysmon.exe -i -accepteula C:\SysmonConfig.xml

      服務(wù)安裝后Sysmon會(huì)將日志記錄在應(yīng)用程序和服務(wù)日志\Microsoft\Windows\Sysmon文件夾中。更新配置文件時(shí)使用此命令:sysmon.exe -c C:\SysmonConfig.xml。

      如圖給出配置文件的一般形式[5],如圖3所示。

      合理地構(gòu)造此XML文件,可以讓Sysmon在不影響系統(tǒng)性能的前提下記錄最有用的日志從而在源頭實(shí)現(xiàn)了對(duì)日志的“清洗”。這里給出一個(gè)建議的過濾規(guī)則:此過濾規(guī)則由安全團(tuán)隊(duì)SwiftOnSecurity總結(jié)得到,可以在此基礎(chǔ)上進(jìn)行修改以適應(yīng)安裝了不同類型應(yīng)用的系統(tǒng):

      https://github.com/SwiftOnSecurity/sysmon-config/blob/master/sysmonconfig-export.xml[3] 。

      5.2 實(shí)例:使用Sysmon追蹤對(duì)系統(tǒng)的攻擊行為

      5.2.1 Sysmon追蹤利用MS17-010漏洞的攻擊行為

      在靶機(jī)為Windows 7并且配置了Sysmon的情況下,使用Metasploit利用MS17-010漏洞攻擊靶機(jī)445端口后,Sysmon記錄下了事件。

      (1)攻擊者連接靶機(jī)的445、135端口。

      (2)攻擊者發(fā)起大量到445端口的連接。

      (3)被注入的線程以NT AUTHOITY\SYSTEM權(quán)限啟動(dòng)應(yīng)用,如果后滲透部分是回彈shell,則會(huì)啟動(dòng)cmd.exe。

      (4)攻擊結(jié)束后,445端口最后一個(gè)鏈接指向攻擊者metasploit回彈窗口。

      以上是攻擊行為和正常的文件共享不同,正常的行為中,共享雙方先使用llmnr(鏈路本地多播名稱解析)協(xié)議獲取雙方的IP地址,通常文件傳輸時(shí)只有一次445端口的連接。

      從Sysmon記錄的日志來看,甚至能追蹤到攻擊者的IP地址(Kali系統(tǒng)),如圖4所示。

      從圖4中可以看出,Sysmon記錄的信息相當(dāng)全面,甚至有對(duì)連接端口協(xié)議的解析,借助這些信息,甚至可以溯源得到未知的攻擊手段。

      5.2.2 Sysmon追蹤利用MS17-11882漏洞的攻擊行為

      此漏洞屬于Office辦公軟件系列漏洞,同樣在靶機(jī)為Windows 7并且配置了Sysmon的情況下,使用Metasploit攻擊靶機(jī)后,Sysmon記錄下了事件。

      (1)用戶打開Word文檔,由explorer.exe創(chuàng)建了WinWord.exe進(jìn)程。

      (2)由svchost.exe -k DcomLaunch創(chuàng)建EQNEDT32.EXE -Embedding進(jìn)程。

      (3)由EQNEDT32.EXE -Embedding進(jìn)程創(chuàng)建mshta.exe進(jìn)程(關(guān)鍵,EQUEDT32.EXE中存在遠(yuǎn)程任意代碼執(zhí)行漏洞)。

      (4)mshta.exe創(chuàng)建hta文件,后與攻擊者137端口進(jìn)行一次通信并創(chuàng)建兩個(gè)PowerShell隱藏進(jìn)程。

      (5)第二個(gè)Powershell進(jìn)程和攻擊者住進(jìn)程進(jìn)行一次通信,目的端口為攻擊者msfconsole的回彈窗口,并創(chuàng)建cmd.exe進(jìn)程。

      同樣,根據(jù)Sysmon記錄下的相關(guān)信息,我們?nèi)匀豢梢院茌p松的溯源得到攻擊者的IP地址,如圖5所示。

      除此之外,設(shè)想如果此漏洞屬于未知威脅,從Sysmon記錄下進(jìn)程建時(shí)命令行的信息甚至可以得到入侵行為更具體的信息。

      在成功獲得系統(tǒng)Shell后,還可以記錄入侵者的進(jìn)一步行為,如圖7所示。

      6 結(jié)束語

      對(duì)于Windows操作系統(tǒng)日志審計(jì)的自動(dòng)化仍然需要很多工作去做,隨著Windows系統(tǒng)的更新和升級(jí),本方案也需要隨之做出相關(guān)調(diào)整和改變,希望本文引出更多針對(duì)Windows操作系統(tǒng)日志分析的研究。

      參考文獻(xiàn)

      [1] “The Top 10 Windows Event ID's Used To Catch Hackers In The Act”, Michael Gough, 2016-4-20.

      [2] The top 10 Windows logs event IDs used. Michael Gough, 2016-4-22.

      [3] https://docs.microsoft.com/zh-cn/windows-hardware/drivers/ifs/index, 2018/11/18.

      [4] “RSA Conference 2017 How to Go from Responding to Hunting with Sysinternals Sysmon”, Mark Russinovich, 2017-2-13.

      [5] “RSA Conference 2016 Tracking Hackers on Your Network with Sysinternals Sysmon”, Mark Russinovich, 2016-2-29.

      [6] 史春濤.基于Windows平臺(tái)的日志分析系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D]. 2010.

      [7] 潘建華.基于Windows平臺(tái)的電子信息挖掘分析系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].廈門大學(xué), 2009.

      [8] 鮑一丹.基于Windows平臺(tái)的日志提取與分析[D].吉林大學(xué), 2008.

      [9] 王錫強(qiáng).基于日志的網(wǎng)絡(luò)安全審計(jì)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].山東大學(xué), 2007.

      [10] 李承.基于防火墻日志的網(wǎng)絡(luò)安全審計(jì)系統(tǒng)研究與實(shí)現(xiàn)[J].計(jì)算機(jī)工程, 2002, 28(6):17-19.

      五指山市| 康保县| 唐河县| 金乡县| 龙井市| 乐至县| 裕民县| 吴忠市| 辰溪县| 福建省| 武山县| 长岭县| 巫溪县| 宁城县| 海伦市| 兴城市| 新昌县| 十堰市| 怀宁县| 阜宁县| 南京市| 涟水县| 甘南县| 寻甸| 西宁市| 华亭县| 阿尔山市| 岳西县| 靖边县| 三原县| 马尔康县| 天等县| 南部县| 夏津县| 信宜市| 十堰市| 新密市| 米林县| 广西| 敦煌市| 靖西县|