2018-2019-2 20162318《網絡對抗技術》Exp4 惡意代碼分析
一、實驗目標
- 監控你自己系統的運行狀態,看有沒有可疑的程序在運行。
- 分析一個惡意軟件,就分析Exp2或Exp3中生成後門軟件;分析工具盡量使用原生指令或sysinternals,systracer套件。
- 假定將來工作中你覺得自己的主機有問題,就可以用實驗中的這個思路,先整個系統監控看能不能找到可疑對象,再對可疑對象進行進一步分析,好確認其具體的行為與性質
二、實驗內容
2.1系統運行監控
(1)使用如計劃任務,每隔一分鐘記錄自己的電腦有哪些程序在聯網,連接的外部IP是哪裏。運行一段時間並分析該文件,綜述一下分析結果。目標就是找出所有連網的程序,連了哪裏,大約幹了什麽(不抓包的情況下只能猜),你覺得它這麽幹合適不。如果想進一步分析的,可以有針對性的抓包。
(2)安裝配置sysinternals裏的sysmon工具,設置合理的配置文件,監控自己主機的重點事可疑行為。
參考:schtask與sysmon應用指導
實際日誌的分析還需要發揮下自己的創造力,結合以前學過的知識如linux的文本處理指令等進行。分析的難點在於從大量數據中理出規律、找出問題。這都依賴對結果過濾、統計、分類等進一步處理,這就得大家會什麽用什麽了。
2.2惡意軟件分析
分析該軟件在(1)啟動回連,(2)安裝到目標機(3)及其他任意操作時(如進程遷移或抓屏,重要是你感興趣)。該後門軟件
(3)讀取、添加、刪除了哪些註冊表項
(4)讀取、添加、刪除了哪些文件
(5)連接了哪些外部IP,傳輸了什麽數據(抓包分析)
三、實驗過程
1.使用schtasks指令監控系統(使用如計劃任務,每隔一分鐘記錄自己的電腦有哪些程序在聯網,連接的外部IP是哪裏。運行一段時間並分析該文件,綜述分析結果)
- step1.創建計劃任務netstat2318
schtasks /create /TN netstat2318 /sc MINUTE /MO 1 /TR "cmd /c netstat -bn > c:\netstatlog.txt"
- step2.在C盤中創建一個netstat2318.bat腳本文件,寫入一下內容:
date /t >> c:\netstat2318.txt time /t >> c:\netstat2318.txt netstat -bn >> c:\netstat2318.txt
- step3.打開任務管理器,查看新創建的任務
- step4.雙擊打開這個任務,點擊"操作",進行編輯
- step5.可以在C盤的netstat2318.txt文件中查看到本機在該時間段內的聯網記錄:
- step6. 導入Excel中,並使其可視化
- step7. 經過分析,未發現異常
2.使用sysmon工具
step1.下載安裝sysinternals
step2.創建配置文件sysmon2318.xml
<Sysmon schemaversion="4.20">
<!-- Capture all hashes -->
<HashAlgorithms>*</HashAlgorithms>
<EventFiltering>
<!-- Log all drivers except if the signature -->
<!-- contains Microsoft or Windows -->
<ProcessCreate onmatch="exclude">
<Image condition="end with">chrome.exe</Image>
</ProcessCreate>
<FileCreateTime onmatch="exclude" >
<Image condition="end with">chrome.exe</Image>
</FileCreateTime>
<NetworkConnect onmatch="exclude">
<Image condition="end with">wps.exe</Image>
<SourcePort condition="is">137</SourcePort>
<SourceIp condition="is">127.0.0.1</SourceIp>
</NetworkConnect>
<NetworkConnect onmatch="include">
<DestinationPort condition="is">80</DestinationPort>
<DestinationPort condition="is">443</DestinationPort>
</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>
step3.輸入命令,完成配置
Sysmon -c sysmon2318.xml
step4.運行之前生成好的後門
step5.打開【事件查看器】,在左側控制臺樹按照【事件查看器】->【應用程序和服務日誌】->【Microsoft】->【Windows】依次展開,找到【Sysmon】下的【Operational】並雙擊打開
2.惡意軟件分析
2.1使用VirusScan分析惡意軟件(靜態)
step1.把生成的惡意代碼放在irusScan進行分析
step2.查看其病毒類型和查找相關病毒
2.2使用Process Explorer分析惡意軟件(動態)
step1.運行後門程序回連,使用Explorer,可知該程序是在命令行中運行
step2,我們可以分析出回連地址是192.168.99.100使用的端口是1818
step3.查看該進程使用的CPU,虛擬內存空間、物理內存空間、I/O
四、基礎問題
1、如果在工作中懷疑一臺主機上有惡意代碼,但只是猜想,所有想監控下系統一天天的到底在幹些什麽。請設計下你想監控的操作有哪些,用什麽方法來監控。
使用schtasks指令監控系統(使用如計劃任務,每隔一分鐘記錄自己的電腦有哪些程序在聯網,連接的外部IP是哪裏。
2、如果已經確定是某個程序或進程有問題,你有什麽工具可以進一步得到它的哪些信息。
1.上傳可疑文件使用VirusScan分析
2.使用使用wireshark進行抓包和分析
3,使用Process Explorer工具,監視文件系統、註冊表、進程/線程的活動
五、實驗總結與體會
本次實驗沒有太多動手的地方,主要是分析惡意代碼。通過這次實驗,我們可以通過軟件去分析我們的電腦做了些什麽,它趁我們不註意的時候運行了哪些進程。我們可以以周期性的運行一個任務,查看有哪些進程聯網了以及連接的外部IP等。在本次實驗我們調換了身份,和以往不同的是我們從攻擊者變成了防禦者,這使我對惡意代碼的理解更近了一步。
2018-2019-2 20162318《網絡對抗技術》Exp4 惡意代碼分析