1.監控你本身系統的運行狀態,看有沒有可疑的程序在運行。
2.分析一個惡意軟件,就分析Exp2或Exp3中生成後門軟件;分析工具儘可能使用原生指令或sysinternals,systracer套件。
3.假定未來工做中你以爲本身的主機有問題,就能夠用實驗中的這個思路,先整個系統監控看能不能找到可疑對象,再對可疑對象進行進一步分析,好確認其具體的行爲與性質。html
2.1系統運行監控(2分)
(1)使用如計劃任務,每隔一分鐘記錄本身的電腦有哪些程序在聯網,鏈接的外部IP是哪裏。運行一段時間並分析該文件,綜述一下分析結果。目標就是找出全部連網的程序,連了哪裏,大約幹了什麼(不抓包的狀況下只能猜),你以爲它這麼幹合適不。若是想進一步分析的,能夠有針對性的抓包。
(2)安裝配置sysinternals裏的sysmon工具,設置合理的配置文件,監控本身主機的重點事可疑行爲。
實際日誌的分析還須要發揮下本身的創造力,結合之前學過的知識如linux的文本處理指令等進行。分析的難點在於從大量數據中理出規律、找出問題。這都依賴對結果過濾、統計、分類等進一步處理,這就得你們會什麼用什麼了。linux
2.2惡意軟件分析(1.5分)
分析該軟件在(1)啓動回連,(2)安裝到目標機(3)及其餘任意操做時,該後門軟件
(3)讀取、添加、刪除了哪些註冊表項
(4)讀取、添加、刪除了哪些文件
(5)鏈接了哪些外部IP,傳輸了什麼數據(抓包分析)chrome
使用schtasks指令監控系統運行:
(1)在D盤下新建一個文本文檔,輸入下列內容後,改名爲netstatlog.batshell
date /t >> D:\netstatlog.txt time /t >> D:\netstatlog.txt netstat -bn >> D:\netstatlog.txt
以管理員身份運行powershell,輸入指令schtasks /create /TN netstat /sc MINUTE /MO 2 /TR "d:\netstatlog.bat"
,建立一個每隔兩分鐘記錄計算機聯網狀況的任務
短期記錄與分析:
這些迴環地址的能夠拋棄,重點關注別的地址連接:
由443,80端口能夠猜想應該是連接某些服務器,簡單查詢了一下:
但僅僅憑藉這幾個IP地址,並不能有實質性的瞭解,因此還須要進一步監測分析。windows
長時間記錄與分析:(操做細節詳見學姐博客)
服務器
從圖表中能夠看出:ali213_box.exe運行次數最多,查了一下是遊俠雲盒(果真是遊戲軟件)tcp
(1)下載並安裝,建立配置文件,並放到Sysmon.exe目錄中。注意:這裏老師給的代碼須要修改:<Sysmon schemaversion="3.10">
中的3.10要根據實際修改,個人版本是4.20,因此修改成
<Sysmon schemaversion="3.10"> <!-- Capture all hashes --> <HashAlgorithms>*</HashAlgorithms> <EventFiltering> <!-- Log all drivers except if the signature --> <!-- contains Microsoft or Windows --> <DriverLoad onmatch="exclude"> <Signature condition="contains">microsoft</Signature> <Signature condition="contains">windows</Signature> </DriverLoad> <NetworkConnect onmatch="exclude"> <Image condition="end with">chrome.exe</Image> <Image condition="end with">iexplorer.exe</Image> <SourcePort condition="is">137</SourcePort> <SourceIp condition="is">127.0.0.1</SourceIp> </NetworkConnect> <CreateRemoteThread onmatch="include"> <TargetImage condition="end with">explorer.exe</TargetImage> <TargetImage condition="end with">svchost.exe</TargetImage> <TargetImage condition="end with">winlogon.exe</TargetImage> <SourceImage condition="end with">powershell.exe</SourceImage> </CreateRemoteThread> </EventFiltering> </Sysmon>
(2)以管理員身份運行powershell,在對應路徑下運行.\Sysmon.exe -i .\Sysmoncfg.txt,以安裝Sysmon
(3)在事件查看器中的應用程序和服務日誌下,查看Microsoft->Windows->Sysmon->Operational
。
(4)後門程序運行分析:
根據這則日誌:能夠發現是個人後門程序,經過本地端口58024向IP爲192.168.43.56的5313端口發送TCP請求連接。工具
(1)使用virscan分析惡意軟件:
查看其行爲分析:
該後門用了kernel32.dll
和msvcrt.dll
兩個連接:kernel32.dll是Windows 9x/Me中很是重要的32位動態連接庫文件,屬於內核級文件。它控制着系統的內存管理、數據的輸入輸出操做和中斷處理,當Windows啓動時,kernel32.dll就駐留在內存中特定的寫保護區域,使別的程序沒法佔用這個內存區域。而msvcrt.dll是微軟在windows操做系統中提供的C語言運行庫執行文件(Microsoft Visual C Runtime Library),其中提供了printf,malloc,strcpy等C語言庫函數的具體運行實現,而且爲使用C/C++(Vc)編譯的程序提供了初始化(如獲取命令行參數)以及退出等功能,咱們基本上每一個C程序都會用到。學習
(1)使用systracer工具分析惡意軟件
我分別建立了三個快照:
1.初始狀態,2.成功回連,3.遠程操做,4.結束連接:
快照分析
(1)對比第一張和第二張不難發現:
1.增長了後門程序並獲取了windows桌面權限,還有不少增長或刪減的鍵值,增長或刪減的.dll文件。
2.經過TCP創建了連接。
(2)二,三兩張比較:發現其中有大量文件被刪除後加載,或加載後再刪除,大膽猜想可能和獲取權限調用有關
(3)3、四比較:結束TCP連接,並新增迴環
(2)使用wireshark分析:在惡意軟件回連時,能夠用wireshark捕捉通訊內容。
先輸入表達式ip.addr==192.168.43.56and tcp過濾掉不須要的內容接着就能夠看到惡意軟件回連的通訊信息,能夠看到先進行了TCP三次握手:
着能夠看到攻擊機向靶機傳送代碼:
(3)使用Process Explorer分析惡意軟件:打開TCP/IP信息
這是實時運行時出現的線程,咱們嘗試KIll掉,咱們會發現Kali機也失去了連接:
若是在工做中懷疑一臺主機上有惡意代碼,但只是猜測,全部想監控下系統一每天的到底在幹些什麼。請設計下你想監控的操做有哪些,用什麼方法來監控。
(1)咱們可使用一些工具幫助本身監測系統,能夠實時監控電腦上的端口信息,若是受到懷疑的惡意代碼啓動的時候鏈接了一些看起來很可疑的端口,就能夠進一步進行分析。
(2)咱們能夠經過在windows下創建一個監測本機鏈接ip地址的任務計劃程序。
(3)能夠經過sysmon監控幾乎全部的重要操做,並在事件查看器中找到日誌查看。
2.若是已經肯定是某個程序或進程有問題,你有什麼工具能夠進一步獲得它的哪些信息。
(1)PE explorer工具,它能夠對程序調用庫等信息進行分析查看,還能夠對其反彙編。
(2)PEiD工具,能夠查看程序有沒有被經常使用的加殼軟件加殼。
(3)啓動該程序,利用systracer及wireshark動態分析程序動向。
(4)利用wireshark抓包分析
本次實踐內容操做並不困難,但卻很耗費時間,這就須要咱們擁有足夠的耐心。分析數據是一件枯燥乏味的事情,但當咱們真正理解了數據背後的含義,則會收穫不少。對於計算機方面的較量確定會不斷升級,而咱們要作的就是學會利用現有的資源進行深刻,深入的學習。
固然在本次實踐中,因爲水平的限制,我對於某些概念的理解並無那麼透徹,這就須要我繼續努力。