此次試驗主要作系統監控,利用netstat監控網絡狀態,使用sysmon軟件生成日誌文件,都能達到監控的目的。
惡意代碼分析主要根據systracer和wireshark進行行爲跟蹤,分析代碼的功能和目的,推斷出病毒的行爲類型和目的。還能夠依靠virustotal等網站幫助檢測軟件行爲!shell
netstat是一款多平臺通用的網絡監控指令,在Windows下直接打開命令提示符,敲入netstat命令後就能夠實現網絡監控,我的感受有點像抓包的那些軟件,我以爲這個實驗開一天的抓包也不是不行。。。若是能夠的話-_-||
這個是命令運行後的效果。
網絡
若是感受哪裏不對勁的話,大概是目標看不大明白,這個時候使用netstat -n就能夠轉化爲查看IP地址,是否是一目瞭然?
學習
接下來修改一下咱們的計劃任務,能夠自動收集好……長時間的網絡鏈接動態信息。
首先建立一個文件c:\netstatlog.bat,而後在文件內寫入如下信息:網站
date /t >> c:\netstatlog.txt
time /t >> c:\netstatlog.txt
netstat -bn >> c:\netstatlog.txt操作系統
emmmmm.......而後打開管理員模式的命令提示符(親測Windows Powershell管理員也是能夠的,右鍵點擊開始鍵就能夠看到了),輸入命令命令行
cmd /c netstat -bn > c:\netstatlog.txt設計
這樣,電腦的每五分鐘計劃任務就會被替換爲上面文件內容的任務,大概就是將時間日期和netstat命令獲得的信息都添加在c:\netstatlog.txt文件裏面,這樣,文件裏面的東西就很整齊了。看一下效果:
3d
這個能夠放在Excel文件裏面統計數據!
Windows10 的電腦能夠很輕鬆地放到控制面板->計劃任務中去,還能夠很自由地設置觸發器規則,不用擔憂停不下來的問題!
日誌
直到如今都是在個人主機下面作的,徹底沒考慮那麼多,因此我只想先把計劃任務關掉!很少說了我去開個人虛擬機去了……code
這個軟件並非Windows的自帶軟件,因此命令行中無論怎麼敲都是沒有用滴!能夠的話從Microsoft官網上下載一個(度娘搜索sysmon就能夠看到!),我我的以爲用起來不是很舒服,因此最後仍是選擇下載了老師提供的3.10版本。
首先編寫一個設置文件,用來設置sysmon監視的內容,語法與XML文件很類似,可是首次接觸的人們學習起來仍是有一些困難的,不得不編寫比較多的次數才能作到不出錯。。。作這個實驗的大部分時間就是花在這裏了。
就是這樣!(煩死了,吐槽一下老師應該不會看見)
最終文件內容以下:
<Sysmon schemaversion="3.10"> <EventFiltering> <DriverLoad onmatch="exclude"> <Signature condition="contains">Microsoft</Signature> <Signature condition="contains">Windows</Signature> </DriverLoad> <NetworkConnect onmatch="include"> <DestinationPort>443</DestinationPort> <DestinationPort>80</DestinationPort > </NetworkConnect> <FileCreateTime onmatch="exclude" > <Image condition="end with">MicrosoftEdge.exe</Image> </FileCreateTime> <NetworkConnect onmatch="exclude"> <Image condition="end with">MicrosoftEdge.exe</Image> <SourcePort condition="is">137</SourcePort> <SourcePortName condition="is">llmnr</SourcePortName> <DestinationPortName condition="is">llmnr</DestinationPortName> </NetworkConnect> </EventFiltering> </Sysmon>
這就是我花了好大勁設計出來的監視設置,這個語法掌握還須要很長時間,在過程當中常常會出現「含有沒法辨認的字符」以及某個標籤內不能含有文本之類的錯誤提示,大可能是不當心纔會犯下的錯誤。
經過以後大概是這樣的效果(細節,這裏要用管理員權限運行,若是不用管理員權限確定是不行的,可是在檢查配置文件錯誤的時候並不影響):
而後去事件與日誌查看器中去看一下咱們抓到的日誌!看看有沒有什麼不是很正常的地方?個人好像是沒有吧……
開啓咱們在實驗三中製做的後門,而後觀察咱們的日誌文件,看看,觀察到了一點點貓膩呢!
每次查看日誌,只須要在事件與日誌查看器,按照如下路徑打開文件夾(Applications and Services Logs/Microsoft/Windows/Sysmon/Operational),找到最後的文件,就能夠查看到sysmon監視的日至事件。
這個環節須要用到一個軟件叫作SYSTracer,在這裏能夠用來對比兩個時間點的計算機狀態發生了什麼變化。
原理上就是先在正常狀態下拍攝一個系統快照(跟虛擬機那個快照很像),而後再對比一下病毒開啓狀態下的系統快照有什麼不同的地方,控制變量法分析惡意代碼。若是你的電腦原本就有病毒,辣麼你就能夠直接研究啦!(開個玩笑-_-||)
兩個快照拍下來啦!第一個是我在正常狀態下的快照,而後運行後門程序,在進程還存在的時候再拍一個快照!(爲了保證這段實驗的效果,推薦關掉一些比較活躍的進程,否則會干擾判斷)
這是對比兩個快照的詳細信息,其中能夠看出來個人後臺還在運行着搜狗拼音輸入法和Cortana(微軟小娜)兩個程序,還有個人後門程序加入了進程,還有不少我看不太懂的東西…………但願老師知足在下的好奇心!(老師看這裏看這裏 ( ^ o ^)/~)
Wireshark是一款網絡分析時經常使用的網絡監聽軟件,這個軟件會把網卡調整到混雜模式,在這個模式下網卡會接收全部它能聽到的數據包,軟件就會將這些數據包通通監聽下來,進行一些簡單分析。
這個實驗中咱們仍是先關掉一些網絡活躍的進程,或者好好設置一下抓包規則,這樣方便咱們觀察網絡狀況。咱們仍是觀察後門程序的網絡狀況。
能夠很舒服地看到個人受感染機(192.168.43.16)發起反彈鏈接,鏈接到控制端(Linux192.168.43.74)ARP協議內容能夠看得出來喲!
這裏我以爲大概就是傳送命令的地方(直覺,我以爲是這裏)由於這裏不同了。
因爲這個計劃任務搞得有點晚(以前代碼敲錯了一直在覆蓋原文件而不是追加在文件尾,收集的數據並很少),還沒能作到數據統計,會補上這一條。 因爲咱們的計算機操做系統很是複雜,在查看兩個快照對比的時候,仍是有不少閱讀困難的,不能很敏銳地觀察到惡意代碼的存在,若是這不是本身寫的代碼,或許咱們還不能從sysTracer中發現病毒的蹤影,這一點看得出來咱們還有不少須要學習的地方。 此次試驗的實用性仍是很高的,也加強了咱們的保護意識和計算機防護能力,提供了除依賴殺毒軟件之外的防護方式。