2018-2019-2 網絡對抗技術 20165305 Exp4 惡意代碼分析

Exp4 惡意代碼分析

1.實踐目標


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

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

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

2.實踐內容


2.1系統運行監控


(1)使用如計劃任務,每隔一分鐘記錄本身的電腦有哪些程序在聯網,鏈接的外部IP是哪裏。運行一段時間並分析該文件,綜述一下分析結果。目標就是找出全部連網的程序,連了哪裏,大約幹了什麼(不抓包的狀況下只能猜),你以爲它這麼幹合適不。若是想進一步分析的,能夠有針對性的抓包。瀏覽器

  • 使用schtasks的命令建立計劃任務netstat5305

  • 在C盤中建立一個netstat5318.bat腳本文件,寫入如下內容
    date /t >> c:\netstat5305.txt
    time /t >> c:\netstat5305.txt
    netstat -bn >> c:\netstat5305.txt
  • 打開任務計劃程序,能夠看到咱們新建立的這個任務:
    網絡

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

  • 點擊「條件」選項卡,能夠更改相關的設置。
  • 執行此腳本必定時間,就能夠在netstat5305.txt文件中查看到本機在該時間段內的聯網記錄:

  • 當記錄的數據足夠豐富時,中止任務,將所得數據在excel中進行分析

能夠看到用得最多的是360瀏覽器,其它也沒什麼異常的。
(2)安裝配置sysinternals裏的sysmon工具,設置合理的配置文件,監控本身主機的重點事可疑行爲。工具

  • sysmon是微軟Sysinternals套件中的一個工具,使用sysmon工具前首先要配置文件。根據老師的要求,最少要記錄Event 1,2,3三個事件。即進程建立、進程建立時間、網絡鏈接。
  • 建立配置文件Sysmon20165305.xml
    文件內容以下:
<Sysmon schemaversion="9.01">
  <!-- 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> 
      <Image condition="end with">firefox.exe</Image>
    </ProcessCreate>

    <ProcessCreate onmatch="include"> 
      <ParentImage condition="end with">cmd.exe</ParentImage>
    </ProcessCreate>

    <FileCreateTime onmatch="exclude" >
      <Image condition="end with">chrome.exe</Image>
      <Image condition="end with">firefox.exe</Image>
    </FileCreateTime>
    
    <NetworkConnect onmatch="exclude">
      <Image condition="end with">chrome.exe</Image>
      <Image condition="end with">firefox.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">firefox.exe</TargetImage>
      <TargetImage condition="end with">winlogon.exe</TargetImage>
      <SourceImage condition="end with">powershell.exe</SourceImage>
    </CreateRemoteThread>
  </EventFiltering>
</Sysmon>
  • 使用Sysmon.exe -i C:\Sysmon20165305.xml安裝sysmon
    firefox

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

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

2.2惡意軟件分析


  • 靜態分析
    文件掃描(VirusTotal、VirusScan工具等)
    文件格式識別(peid、file、FileAnalyzer工具等)
    字符串提取(Strings工具等)
    反彙編(GDB、IDAPro、VC工具等)
    反編譯(REC、DCC、JAD工具等)
    邏輯結構分析(Ollydbg、IDAPro工具等)
    加殼脫殼(UPX、VMUnPacker工具等)
  • 動態分析
    快照比對(SysTracer、Filesnap、Regsnap工具等)
    抓包分析(WireShark工具等)
    行爲監控(Filemon、Regmon、ProcessExplorer工具等)
    沙盒(NormanSandbox、CWSandbox工具等)
    動態跟蹤調試(Ollydbg、IDAPro工具等)

(1)使用VirusTotal分析惡意軟件設計

  • 把生成的惡意代碼放在VirusTotal進行分析,結果如圖:

額,一半的殺軟檢測出來了。

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

咱們能夠看到文件的類型、大小、SHA-一、MD5摘要值等結果

  • 加殼狀況

  • 算法庫支持狀況

(2)使用Process Monitor分析惡意軟件

  • Process Monitor 是一款由 Sysinternals公司開發的包含強大的監視和過濾功能的高級 Windows 監視工具,可實時顯示文件系統、註冊表、進程/線程的活動。
  • 打開軟件,能夠看出其對各個進程的詳細記錄:

(3)使用Process Explorer分析惡意軟件

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

(4)使用PEiD分析惡意軟件

  • PEiD(PE Identifier)是一款著名的查殼工具

  • 咱們先檢測一款沒有加殼的惡意軟件

  • 如今檢測一下加殼的惡意軟件

(5)使用systracer分析惡意軟件

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

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

  • 這是文件的變化

  • 這是程序的變化,很明顯能夠看出新增的20165305_upxed.exe程序:

  • 點擊查看差別列表,能夠看見增長了許多的.dll文件

(6)wireshark抓包分析
設置ip.addr == ip地址過濾包,而後點擊一個tcp包,能夠看見目的地址、源地址、和設置的5305源端口號,和目的端口號。

3.報告內容


3.1實驗後回答問題


(1)若是在工做中懷疑一臺主機上有惡意代碼,但只是猜測,因此想監控下系統一每天的到底在幹些什麼。請設計下你想監控的操做有哪些,用什麼方法來監控。
先使用schtasks指令監控系統,發現能夠的軟件在運行後,使用Process Monitor分析惡意軟件。

(2)若是已經肯定是某個程序或進程有問題,你有什麼工具能夠進一步獲得它的哪些信息。
可使用systracer查看它對註冊表和文件的修改。
可使用wireshark進行抓包分析,查看其創建鏈接、通訊的過程。
使用systracer工具分析惡意軟件

3.2實驗總結與體會


本次實驗的內容不少,並且咱們能夠自主選擇一些工具對惡意軟件進行分析。對於本次試驗,我初步掌握了對於一些常見的的惡意軟件分析工具的使用,增強了對於惡意軟件的分析檢測和防範意識。

相關文章
相關標籤/搜索