1. 程式人生 > >20154322 楊欽涵 Exp4 惡意代碼分析

20154322 楊欽涵 Exp4 惡意代碼分析

reat 鏈接器 signature .org filter 數據包 百度一 地址 alt

Exp4 惡意代碼分析 Exp4 惡意代碼分析

一、基礎問題回答

(1)如果在工作中懷疑一臺主機上有惡意代碼,但只是猜想,所有想監控下系統一天天的到底在幹些什麽。請設計下你想監控的操作有哪些,用什麽方法來監控。
①可以使用監控程序,幫助我們分析是否存在惡意代碼
②如第二個實驗使用sysmon,監控幾乎所有的重要操作,並可通過事件查看器中找到日誌查看。

(2)如果已經確定是某個程序或進程有問題,你有什麽工具可以進一步得到它的哪些信息。
①利用wireshark動態分析程序動向。
②PE explorer工具,它可以對程序調用庫等信息進行分析查看。
③利用systrace監控系統運行

二、實踐過程記錄

①監控系統運行

2.1 使用schtasks指令監控系統運行


1.先在C盤目錄下建立一個netstatlog.bat文件,用來將記錄的聯網結果格式化輸出到netstatlog.txt文件(自動生成)中,netstatlog.bat內容為

date /t >> c:\netstatlog.txt
time /t >> c:\netstatlog.txt
netstat -bn >> c:\netstatlog.txt

技術分享圖片

2.打開Windows下命令提示符,輸入指令schtasks /create /TN netstat /sc MINUTE /MO 5 /TR "c:\netstatlog.bat"

指令創建一個每隔五分鐘記錄計算機聯網情況的任務:

TN:Task Name,本例中是netstat
SC: SChedule type,本例中是MINUTE,以分鐘來計時
MO: MOdifier
TR: Task Run,要運行的指令是 netstat -bn,b表示顯示可執行文件名,n表示以數字來顯示IP和端口

技術分享圖片

五分鐘後:
技術分享圖片

  • 第一個實驗遇到了兩個問題。
    一是創建netstatlog.bat輸完命令後找不到netstatlog.txt文件,後來發現需要先將netstatlog.bat以管理員身份運行後才可成功。
    二是找到netstatlog.txt文件之後,無法定時更新記錄,後來多方詢問了解到,需要打開任務管理器,選中netstatlog.bat,勾選“最高權限運行”才可更新記錄
    技術分享圖片

2.2 使用sysmon工具監控系統運行


1.sysmon是微軟Sysinternals套件中的一個工具,可以從碼雲項目的附件裏進行下載,要使用sysmon工具先要配置文件,我是直接使用老師給的配置文件:

<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>
  <SourcePort condition="is">137</SourcePort>
  <SourceIp condition="is">127.0.0.1</SourceIp>
</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>

技術分享圖片

2.配置好文件之後,要先使用sysmon -accepteula –i指令對sysmon進行安裝(需進入到附件保存的文件夾中)
技術分享圖片

3.啟動之後,便可以到事件查看器裏查看相應的日誌(應用程序和服務日誌→Microsoft→Windows→Sysmon→Operational路徑找到記錄文件)
技術分享圖片

4.回聯了第二次試驗用到的後門軟件,刷新一次日誌找到了它
技術分享圖片

②惡意軟件分析

2.3 使用virscan分析惡意軟件


1.在virscan網站上查看上次實驗所做的後門軟件的文件行為分析(刷了很多次,又換了同學的電腦刷,終於,在自己的電腦上刷出來了。。。):
技術分享圖片

2.點擊“文件行為分析”,可以看到其啟動回連主機的部分IP地址以及端口號以及其他信息
技術分享圖片

技術分享圖片

2.4使用systracer工具分析惡意軟件


首先,下載一波:systracer
接著,安裝。雖然是英文,但很簡單(比上次實驗的vile簡單多了(* ̄︶ ̄))
技術分享圖片

使用systracer工具建立了4個快照,分別是在主機中沒有惡意軟件時、開啟惡意軟件並與主機回聯時、在Linux界面輸入創建TXT文本指令並傳入到主機時、關掉後門,斷開連接後主機的狀態
技術分享圖片

如圖所示,我們可以選擇兩個快照進行campare,分析每次操作對系統的影響:
技術分享圖片

結果對比分析:
1、2對比:啟動回連時註冊表發生變化,註冊表多了些內容:
技術分享圖片

2、3對比:啟動回連時,新建了4322.txt文本文件,因此,可以發現在C盤新增了傳輸的文件:
技術分享圖片

3、4對比:
技術分享圖片

註冊表有改動,其他沒有什麽區別

2.5 使用wireshark分析惡意軟件回連情況


設置TCP過濾格式tcp.port==4322,在進行回連操作時,使用wireshark進行抓包後可以看到,其先進行了TCP的三次握手,之後再進行數據的傳輸,如圖所示,帶有PSH,ACK的包傳送的便是執行相關操作指令時所傳輸的數據包:
技術分享圖片

  • 存在問題:最開始選擇WLAN後開始監控,發現並沒有三次握手,抓包時發現是空的。
    技術分享圖片

解決:後來試了多次,發現應該一開始選擇VM後才可以進行抓包。
技術分享圖片

2.6 Process Monitor分析


打開Process Monitor就可以就看到按時間排序的winxp執行的程序的變化,運行一下後門程序yqh4322,再刷新一下Process Monitor的進程樹界面,可以指定查找到yqh4322.exe。
技術分享圖片

2.7 使用PE explorer分析惡意軟件回連情況


首先,在網上下載好PE explore
1.使用PE explorer上次使用的後門程序,可以看到該文件的編譯時間、鏈接器等基本信息:
技術分享圖片

2.查看程序節頭的信息和一些指向操作信息
技術分享圖片

3.點擊查看有dll文件.
技術分享圖片

  • ADVAPI32.dll文件百度可知:是一個高級API應用程序接口服務庫的一部分,包含的函數與對象的安全性,註冊表的操控以及事件日誌有關,調用這個dll可以實現對註冊表的操控
  • WSOCK32.dll和WS2_32.dll這兩個DLL用於創建套接字,即會發生網絡連接
    技術分享圖片

三、實驗總結與體會

  • 這次實驗挺有趣的,我也學習了解到了一些可以可以分析惡意軟件的程序,開了眼界。而且,下載的時候很順暢不會卡,分分鐘OK(和上一次下載安裝veil形成強烈對比 ?? ?? ?? ,且行且珍惜)。其他程序例如PE explorer這些一開始沒接觸過,但一邊百度一邊了解這個程序是幹嘛的,怎麽看分析的軟件,慢慢的有所了解的這一學習的過程很充實。

20154322 楊欽涵 Exp4 惡意代碼分析