20164305 徐廣皓 Exp4 惡意代碼分析

 

實踐目標

 

  • 1.1是監控你本身系統的運行狀態,看有沒有可疑的程序在運行。chrome

  • 1.2是分析一個惡意軟件,就分析Exp2或Exp3中生成後門軟件;分析工具儘可能使用原生指令或sysinternals,systracer套件。shell

  • 1.3假定未來工做中你以爲本身的主機有問題,就能夠用實驗中的這個思路,先整個系統監控看能不能找到可疑對象,再對可疑對象進行進一步分析,好確認其具體的行爲與性質。windows

實踐內容安全

  •  2.1系統運行監控
  • (1)使用如計劃任務,每隔一分鐘記錄本身的電腦有哪些程序在聯網,鏈接的外部IP是哪裏。運行一段時間並分析該文件,綜述一下分析結果。目標就是找出全部連網的程序,連了哪裏,大約幹了什麼(不抓包的狀況下只能猜),你以爲它這麼幹合適不。若是想進一步分析的,能夠有針對性的抓包。
  • (2)安裝配置sysinternals裏的sysmon工具,設置合理的配置文件,監控本身主機的重點事可疑行爲。
  •  2.2惡意軟件分析(1.5分)
  •   (1)啓動回連
  •   (2)安裝到目標機(3)及其餘任意操做時(如進程遷移或抓屏,重要是你感興趣)。
  • (3)讀取、添加、刪除了哪些註冊表項
  • (4)讀取、添加、刪除了哪些文件
  • (5)鏈接了哪些外部IP,傳輸了什麼數據(抓包分析)

1. 系統運行監控——計劃任務

建立計劃任務,使系統每1分鐘自動檢測到有哪些程序在鏈接咱們的網絡。網絡

1 schtasks /create /TN 20164305 /sc MINUTE /MO 1 /TR "cmd /c netstat -bn > e:\20164305.txt"
  • TN:Task Name,本例中是netstat
  • SC: SChedule type,本例中是MINUTE,以分鐘來計時
  • MO: MOdifier
  • TR: Task Run,要運行的指令是 netstat
  • -bn,b表示顯示可執行文件名,n表示以數字來顯示IP和端口

在E盤根目錄下新建20164305.bat(重命名更改類型),用於計時tcp

1 date /t >>e:\20164305.txt
2 time /t >>e:\20164305.txt
3 netstat -bn >>e:\20164305.txt

控制面板->系統與安全->管理工具->任務計劃程序,修改 計劃屬性工具

  • 必定要使用最高權限運行,不然則會出現請求不成功的狀況

選擇剛纔編輯好的腳本,添加到設置中網站

一段時間後,記錄獲得數據(實際上1個小時,電腦沒電了本身關機了)spa

對得到的數據進行分析命令行

發現TCP和360使用網絡狀況較多,對svhost比較好奇,而後就去查了一下

而後又去搜索了一下Microsoft.Photos.exe

emmm有點慌。。。一會去研究研究能不能瞭解了它

2. 系統運行監控——利用Sysmon

安裝配置sysinternals裏的sysmon工具,設置合理的配置文件,監控本身主機的重點事可疑行爲。

  • 寫配置文件

寫與本身想要監控的事件相對應的配置文件。編寫20164305.xml,內容以下:

 1 <Sysmon schemaversion="4.00">
 2   <!-- Capture all hashes -->
 3   <HashAlgorithms>*</HashAlgorithms>
 4   <EventFiltering>
 5     <!-- Log all drivers except if the signature -->
 6     <!-- contains Microsoft or Windows -->
 7     <DriverLoad onmatch="exclude">
 8       <Signature condition="contains">microsoft</Signature>
 9       <Signature condition="contains">windows</Signature>
10     </DriverLoad>
11 
12     <NetworkConnect onmatch="exclude">
13       <Image condition="end with">chrome.exe</Image>
14       <Image condition="end with">iexplorer.exe</Image>
15       <SourcePort condition="is">137</SourcePort>
16       <SourceIp condition="is">127.0.0.1</SourceIp>
17     </NetworkConnect>
18 
19     <CreateRemoteThread onmatch="include">
20       <TargetImage condition="end with">explorer.exe</TargetImage>
21       <TargetImage condition="end with">svchost.exe</TargetImage>
22       <TargetImage condition="end with">winlogon.exe</TargetImage>
23       <SourceImage condition="end with">powershell.exe</SourceImage>
24     </CreateRemoteThread>
25   </EventFiltering>
26 </Sysmon>

安裝Sysmon, .\sysmon.exe -i e:\20164305.xml (win10中要加.\不然會報錯)

在控制面板->系統與安全->管理工具->事件查看器->應用程序和服務日誌-> Microsoft -> Windows -> sysmon -> Operational中找到日誌

而後篩選日誌信息,並導出查看

  • 利用Sysmon具體分析日誌

這裏我選擇了本身實驗二中生成的後門20164305_backdoor.exe進行分析

  • 先進行回連

  • 而後輸入查看目錄的命令

  • 而後利用wireshark進行分析

能夠看到,其先進行了TCP的三次握手,以後再進行數據的傳輸。

3.惡意軟件分析

  • 網站上查看後門程序的行爲分析。

能夠看出這個後門程序是利用upx加殼的惡意代碼,但功能未知

  • 利用軟件分析exe

首先是惡意軟件,返回加殼結果

而後對一個安全軟件進行檢測,發現什麼都沒發現o(╥﹏╥)o

  • 利用wireshark對惡意軟件執行過程進行分析

與前面步驟相同,使用回連程序進行回連

而後監聽整個後門過程,對其TCP鏈接過程進行分析

  • 前一部分爲Linux使用mns啓動過程所用的網絡鏈接

  • 而後與虛擬機端口(Windows主機)進行tcp三次握手

  • 而後進行指令調用等操做。

試驗後回答問題

  • 若是在工做中懷疑一臺主機上有惡意代碼,但只是猜測,全部想監控下系統一每天的到底在幹些什麼。請設計下你想監控的操做有哪些,用什麼方法來監控?
    • 利用sysmon工具,配置好想要監控的端口、註冊表信息、網絡鏈接等信息,經過其生成的日誌文件進行查看
    • 利用wireshark查看數據包,TCPview也能夠,可是沒那麼全面
    • 利用systracer進行快照,比照註冊表、文件等信息
    • 利用Process monitor、Process Explorer
  • 若是已經肯定是某個程序或進程有問題,你有什麼工具能夠進一步獲得它的哪些信息?
    • 一樣採用以上工具,用wireshark查看數據包,systracer進行快照的對比(註冊表、文件等),peid查看是否加殼,Process Explorer查看調用的程序庫、dll庫等

實驗總結與體會

殺軟有助於普通用戶對本身的電腦進行監控,就像圖形化界面對於不熟練運用命令行的用戶使用方便相同,利用檢測工具能從最原始的角度發現系統狀況與問題,而不是簡單依靠殺軟來維護系統安。

相關文章
相關標籤/搜索