2017-2018-2 20155303『網絡對抗技術』Exp4:惡意代碼分析

2017-2018-2 20155303『網絡對抗技術』Exp4:惡意代碼分析

————————CONTENTS————————


一.原理與實踐說明

1.實踐目標

  • 監控你本身系統的運行狀態,看有沒有可疑的程序在運行。
  • 分析一個惡意軟件,就分析Exp2或Exp3中生成後門軟件;分析工具儘可能使用原生指令或sysinternals,systracer套件。
  • 假定未來工做中你以爲本身的主機有問題,就能夠用實驗中的這個思路,先整個系統監控看能不能找到可疑對象,再對可疑對象進行進一步分析,好確認其具體的行爲與性質。

2.實踐內容概述

  • 系統運行監控
    • 使用如計劃任務,每隔一分鐘記錄本身的電腦有哪些程序在聯網,鏈接的外部IP是哪裏。運行一段時間並分析該文件,綜述分析結果。
    • 安裝配置sysinternals裏的sysmon工具,設置合理的配置文件,監控本身主機的重點事可疑行爲。
  • 分析該軟件在(1)啓動回連,(2)安裝到目標機(3)及其餘任意操做時(如進程遷移或抓屏,重要是你感興趣)。該後門軟件
    • 讀取、添加、刪除了哪些註冊表項
    • 讀取、添加、刪除了哪些文件
    • 鏈接了哪些外部IP,傳輸了什麼數據

3.基礎問題回答

  • 問:若是在工做中懷疑一臺主機上有惡意代碼,但只是猜測,全部想監控下系統一每天的到底在幹些什麼。請設計下你想監控的操做有哪些,用什麼方法來監控。
    • 使用windows自帶的schtasks指令設置一個計劃任務,每隔必定的時間對主機的聯網記錄等進行記錄。
    • 使用sysmon工具,經過修改配置文件,記錄相關的日誌文件。
    • 使用Process Explorer工具,監視進程執行狀況。
  • 問:若是已經肯定是某個程序或進程有問題,你有什麼工具能夠進一步獲得它的哪些信息。
    • 使用Wireshark進行抓包分析,監視其與主機進行的通訊過程。
    • 使用systracer工具分析惡意軟件。

返回目錄html


二.實踐過程記錄

1.使用schtasks指令監控系統

  • 使用schtasks /create /TN netstat5303 /sc MINUTE /MO 5 /TR "cmd /c netstat -bn > c:\netstatlog.txt"命令建立計劃任務netstat5303,以下圖所示:

其中,TN是TaskName的縮寫,咱們建立的計劃任務名是netstat5303;sc表示計時方式,咱們以分鐘計時填MINUTE;TR=Task Run,要運行的指令是 netstat -bn,b表示顯示可執行文件名,n表示以數字來顯示IP和端口。linux

  • 在C盤中建立一個netstat5303.bat腳本文件(可先建立txt文本文件,使用記事本寫入後經過修改文件名來修改文件格式)

  • 在其中寫入如下內容:
date /t >> c:\netstat5303.txt
time /t >> c:\netstat5303.txt
netstat -bn >> c:\netstat5303.txt

以下圖所示:算法

  • 打開任務計劃程序,能夠看到咱們新建立的這個任務:

  • 雙擊這個任務,點擊操做並編輯,將「程序或腳本」改成咱們建立的netstat5303.bat批處理文件,肯定便可。

  • 任務還有其餘屬性,點擊「條件」選項卡,能夠更改相關的設置。好比默認操做爲「只有在計算機使用交流電源時才啓動此任務」,那麼使用電池電源時就會中止任務。這點須要格外注意,若是沒有修改默認操做,任務不管如何都沒法執行可能只是由於拔掉了電源。

  • 執行此腳本必定時間(如8小時),就能夠在netstat5303.txt文件中查看到本機在該時間段內的聯網記錄:

  • 將每一個應用的聯網狀況作成餅狀圖,更加清晰直觀:

  • 除此以外,還能夠將全部的外網地址合併彙總,便於統計分析:

  • 或者,詳細顯示每個外網鏈接時,本機的IP及端口:

若有須要,查看這些可疑的外網IP便可。chrome

返回目錄
shell

2.使用sysmon工具監控系統

  • sysmon是微軟Sysinternals套件中的一個工具,使用sysmon工具前首先要配置文件。根據老師的要求,最少要記錄Event 1,2,3三個事件。即進程建立、進程建立時間、網絡鏈接,以下圖所示:

  • 參考使用輕量級工具Sysmon監視你的系統這篇文章,建立配置文件Sysmon20155303.xmlwindows

  • 使用Sysmon.exe -i C:\Sysmon20155303.xml安裝sysmon。網絡

  • 對配置文件進行修改,將本身感興趣的過濾器事件過濾器事件的選項寫入。(使用xml文檔,是由於其能夠按照標籤進行縮進和顯示,使用Notepad++打開後一目瞭然。)我修改的配置文件以下:工具

<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>
      <Image condition="end with">firefox.exe</Image>
      <SourcePort condition="is">137</SourcePort>
      <SourceIp condition="is">127.0.0.1</SourceIp>
      <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">firefox.exe</TargetImage>
      <TargetImage condition="end with">svchost.exe</TargetImage>
      <TargetImage condition="end with">winlogon.exe</TargetImage>
      <SourceImage condition="end with">powershell.exe</SourceImage>
    </CreateRemoteThread>
    
    <ProcessCreate onmatch="include">
      <Image condition="end with">chrome.exe</Image>
      <Image condition="end with">iexplorer.exe</Image>
      <Image condition="end with">firefox.exe</Image>
    </ProcessCreate>
    
    <FileCreateTime onmatch="exclude" >
      <Image condition="end with">firefox.exe</Image>   
    </FileCreateTime>
    
    <FileCreateTime onmatch="include" >
      <TargetFilename condition="end with">.tmp</TargetFilename>       
      <TargetFilename condition="end with">.exe</TargetFilename>  
    </FileCreateTime>
    
  </EventFiltering>
</Sysmon>
  • 使用Sysmon.exe -c C:\Sysmon20155303.xml,將sysmon按照修改好的配置文件進行更新。性能

  • win10下,左下角開始菜單右擊->事件查看器->應用程序和服務日誌->Microsoft->Windows->Sysmon->Operational。在這裏,咱們能夠看到按照配置文件的要求記錄的新事件,以及事件ID、任務類別、詳細信息等等。學習

  • 打開kali,運行木馬文件,使其回連kali攻擊機。查看日誌,經過搜索關鍵字能夠找到相關的後門文件:

  • 打開這個事件,能夠看到其屬於「NetworkContect」。查看詳細信息,能夠看到這個後門映像文件的具體位置、源IP和端口、目的IP和端口等。

返回目錄

3.使用VirusTotal分析惡意軟件

  • 把生成的惡意代碼放在VirusTotal進行分析,基本狀況以下:

在66個殺軟中,有24個報毒,可疑行至關高了。

  • 查看這個惡意代碼的基本屬性:

能夠看出它的SHA-一、MD5摘要值、文件類型、文件大小,以及TRiD文件類型識別結果。(注:TRiD經過讀取文件頭,根據特徵碼進行文件類型匹配。)

  • 還能夠看到加殼狀況:

  • 以及該惡意代碼的算法庫支持狀況:

返回目錄

4.使用Process Monitor分析惡意軟件

  • Process Monitor 是一款由 Sysinternals 公司開發的包含強大的監視和過濾功能的高級 Windows 監視工具,可實時顯示文件系統、註冊表、進程/線程的活動。

  • 打開軟件,能夠看出其對各個進程的詳細記錄:

返回目錄

5.使用Process Explorer分析惡意軟件

  • Process Explorer是由Sysinternals開發的Windows系統和應用程序監視工具,目前已併入微軟旗下。不只結合了Filemon(文件監視器)和Regmon(註冊表監視器)兩個工具的功能,還增長了多項重要的加強功能。包括穩定性和性能改進、強大的過濾選項、修正的進程樹對話框(增長了進程存活時間圖表)、可根據點擊位置變換的右擊菜單過濾條目、集成帶源代碼存儲的堆棧跟蹤對話框、更快的堆棧跟蹤、可在 64位 Windows 上加載 32位 日誌文件的能力、監視映像(DLL和內核模式驅動程序)加載、系統引導時記錄全部操做等。

  • 靶機運行木馬,回連攻擊機時,咱們能夠看到Process Explorer對其進行的記錄:

返回目錄

6.使用PEiD分析惡意軟件

  • PEiD(PE Identifier)是一款著名的查殼工具,其功能強大,幾乎能夠偵測出全部的殼,其數量已超過470 種PE 文檔 的加殼類型和簽名。

  • 咱們先取一個上次實驗生成的,沒有加殼的木馬,其檢測結果以下:

  • 使用UPX加殼後,PEiD成功檢測出了加殼的相關信息:

返回目錄

7.使用systracer分析惡意軟件

  • 此實驗建議在兩臺虛擬機中進行,windows虛擬機文件少,進行快照時間短,且易於分析。

  • 基本步驟以下:
    • 在win7虛擬機安裝SysTracer軟件
    • 保存快照,命名爲Snapshot #1
    • 將木馬植入靶機,對靶機註冊表、文件等進行快照,保存爲Snapshot #2
    • 打開kali的msfconsle,靶機運行木馬,回連kali,win7下再次快照,保存爲Snapshot #3
    • 在kali中對靶機進行屏幕截圖,win7下再次快照,保存爲Snapshot #4
    • 在kali中對靶機進行提權操做,win7下再次快照,保存爲Snapshot #5

  • 點擊右下角「Compare」,比較五個快照的不一樣之處。
  • 啓動回連時,註冊表發生了變化:

  • 能夠看到它啓用了不少dll文件:

  • 端口的鏈接狀況以下:

  • 提取權限時,文件發生的變化:

返回目錄


三.實踐總結及體會

  • 本次實驗的內容十分豐富,咱們嘗試學習和使用了數款用於檢測惡意代碼的指令或是軟件,例如SysTracer、SysinternalsSuite、ProceMonitor等。這些工具都能很好地輔助咱們對主機進行監控,以發現惡意行爲並進行及時處理。
  • 經過學習瞭解到,惡意代碼的分析方法主要分爲靜態分析方法和動態分析方法。這兩種方法在本次實驗中都有所涉及。靜態分析方法是指在不執行二進制程序的條件下進行分析,如反彙編分析等,屬於逆向工程分析方法。而動態分析方法是指在惡意代碼執行的狀況下,利用調試工具對惡意代碼實施跟蹤和觀察,肯定惡意代碼的工做過程,以便做進一步分析。
  • 雖然惡意代碼的分析工具多種多樣、日趨完善,但做爲計算機用戶的咱們更不能掉以輕心,而應該時刻保持警戒。要時常對電腦的行爲進行監控,不要只寄但願於殺毒軟件,由於殺毒與免殺的博弈關係會使兩者共同發展,並非全部的惡意代碼都會被殺毒軟件拒之門外。

返回目錄


附:參考資料

相關文章
相關標籤/搜索