1. 程式人生 > >2018-2019-2 20162318《網絡對抗技術》Exp4 惡意代碼分析

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

還需要 網絡 過濾 連接 window rom 註冊 trac 依賴

一、實驗目標


  • 監控你自己系統的運行狀態,看有沒有可疑的程序在運行。
  • 分析一個惡意軟件,就分析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 惡意代碼分析