[系統安全] 十三.熊貓燒香病毒IDA和OD逆向分析(中)病毒釋放機理

您可能之前看到過我寫的類似文章,爲什麼還要重複撰寫呢?只是想更好地幫助初學者瞭解病毒逆向分析和系統安全,更加成體系且不破壞之前的系列。因此,我重新開設了這個專欄,準備系統整理和深入學習系統安全、逆向分析和惡意代碼檢測,“系統安全”系列文章會更加聚焦,更加系統,更加深入,也是作者的慢慢成長史。換專業確實挺難的,逆向分析也是塊硬骨頭,但我也試試,看看自己未來四年究竟能將它學到什麼程度,漫漫長征路,偏向虎山行。享受過程,一起加油~

如果你想成爲一名逆向分析或惡意代碼檢測工程師,或者對系統安全非常感興趣,就必須要認真分析一些惡意樣本。熊貓燒香病毒就是一款非常具有代表性的病毒,當年造成了非常大的影響,並且也有一定技術手段。本文將詳細講解熊貓燒香的行爲機理,並通過軟件對其功能行爲進行分析,這將有助於我們學習逆向分析和反病毒工作。後續作者還將對其進行逆向調試,以及WannaCry勒索蠕蟲、各種惡意樣本及木馬的分析。基礎性文章,希望您喜歡!

IDA和OD作爲逆向分析的“倚天劍和“屠龍刀”,學好它們的基本用法至關重要。本文重點分析熊貓燒香病毒的功能函數,大家掌握這些技巧後才能更好地分析更多的代碼。同時,本文部分實驗參考姜曄老師的視頻分析,真的非常佩服和值得去學習的一位老師。技術路上哪有享樂,爲了提升安全能力,別抱怨,幹就對了~

在這裏插入圖片描述

上一篇文章講解了“熊貓燒香”病毒樣本的反彙編代碼入口處的分析,接下來我們分析病毒的核心部,其分析思路基本一致,同時越深入核心部分會遇到越多的API函數。我們將利用OD和IDA工具結合調用函數的參數進行分析,它將有助於我們更好地理解病毒行爲。同時,將分析出的每一個CALL函數,改爲我們能夠理解的名字,這往往也有助於對後續程序的理解。作者結合兩篇文章繪製了一張分析圖,希望加深大家對熊貓燒香的瞭解。這系列文章寫得不容易,希望大家給點個贊和收藏,也歡迎評論和交流。

在這裏插入圖片描述

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

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

  • 推薦前文:網絡安全自學篇系列-100篇
  • https://blog.csdn.net/eastmount/category_9183790.html

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

作者的github資源:

前文分析:

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


一.實驗背景

對病毒進行逆向分析,可以徹底弄清楚病毒的行爲,從而採取更有效的針對手段。爲了節省篇幅,在這裏我不打算將“熊貓燒香”進行徹底的分析,只會講解一些比較重要的部分,大家只要掌握了這些思想,那麼就可以處理很多的惡意程序了。

這裏主要使用的工具包括:

  • PEiD:病毒加殼、脫殼基礎性分析
  • IDA Pro:靜態分析
  • OllyDbg:動態分析

實驗文件:

  • setup.exe:熊貓燒香病毒

基本流程:

  • 利用查殼工具檢查病毒是否帶殼
  • 利用OD動態分析病毒
  • 利用IDA靜態分析病毒

注意:由於OD工具會將程序運行起來,所以我們在進行惡意代碼分析時儘量在搭建好的虛擬機中操作。如果病毒傳播性較強如WannaCry,建議斷開網絡和斷開共享分析。

在這裏插入圖片描述

實驗思路:

  • 1.利用OD分析每一個CALL的功能
  • 2.使用IDA Pro在宏觀上把握程序的功能並及時對函數進行重命名操作

上篇回顧:

  • 0x0040CB7E call sub_403C98
    – 重命名爲:AllocStackAndCopyString
    – sub_403D08:分配內存空間
    – sub_402650:字符串拷貝功能


  • 0x0040CB9F call sub_00405360
    – 重命名爲:DecodeString
    – 0x004053CC:循環入口點
    – 0x004053E8:獲取“xboy”解密字符
    – 0x00405408:完成異或解密操作



  • 0x0040CBAC call sub_404018
    – 重命名爲:CMPString
    – 0x00404041:循環入口點
    – 功能:字符串比較“武漢男生感染下載者”


  • 0x0040CBCC loc_40CBBC
    – 功能:字符串解密和比較操作,解密字符“whboy”
    – DecodeString
    – CMPString



二.sub_408024核心函數分析

上一篇文章我們詳細介紹了熊貓燒香病毒起始階段的初始化操作,這篇文章將進入該病毒的核心功能函數,進行相關的逆向分析。Let’s Go!!!

1.sub_40277C子函數

第一步,打開IDA Pro載入我們的病毒樣本。

在這裏插入圖片描述

第二步,定位到loc_40CBE6位置。
這裏看到了三個call函數,它們又是什麼功能呢?這三個call是熊貓燒香病毒最重要的功能,也是我們接下來要深入逆向分析的內容。

  • sub_408024
  • sub_40CA5C
  • sub_40C97C

在這裏插入圖片描述

第三步,查看函數sub_408024內容。
在這個函數的最開始位置我們看到了將84h賦值給ecx,84h表示循環的次數。循環的主體是下面兩個push,其中每一個push能開闢8個字節(32位)的空間,兩個字節能獲得16個字節的空間。這樣的空間一共申請了ecx(84h)次。

  • mov ecx, 84h
  • push 0
  • push 0

在這裏插入圖片描述


第四步,我們主要分析call函數,往下看到第一個函數sub_40277c。

在這裏插入圖片描述

第五步,接着用OD載入exe程序,進行動態的分析,直接跳轉到該地址。

  • 0x0040804D call sub_40277C

基本流程爲右鍵“轉到”->“表達式”->輸入“0040804D”,按下F2增加斷點。

在這裏插入圖片描述

按F9直接執行到該位置。

在這裏插入圖片描述

該函數我們可以在IDA中先雙擊查看,會發現該函數首先調用了GetModuleFileNameA。

  • 0x004027A0 call GetModuleFileNameA
  • 該函數功能主要是獲取當前進程已加載模塊文件的完整路徑

在這裏插入圖片描述


第六步,回到OD中sub_40277C函數,按下F7單步進入函數。
接着進入函數後按F8單步步過,可以看到GetModuleFileNameA右下角的內容,在這個PathBuffer裏,會保存即將獲取的路徑信息。

  • 0x004027A0 call 00401100
  • PathBuffer

在這裏插入圖片描述

接着選中PathBuffer值,右鍵點擊“數據窗口中跟隨”。

在這裏插入圖片描述

注意:按下F8,大家可以在數據窗口中留意該值的前後變化。發現它成功獲取了該樣本的本地路徑。

  • C:\Users\14551\Desktop\setup.exe

在這裏插入圖片描述


第七步,我們打開IDA給sub_40277C函數重命名。

小技巧
IDA中雙擊會進入對應的函數,那麼如何返回上一層呢?按下ESC即可返回,如下圖所示,從GetModuleFileNameA中按ESC返回sub_40277C位置。而按F5鍵會逆向出C語言程序。

在這裏插入圖片描述

然後選中函數重命名,快捷鍵爲N。

在這裏插入圖片描述

總結,重命名及對應功能如下:

  • sub_40277C -> GetFilePathAndName
  • 功能:獲取文件的完整路徑及文件名稱

在這裏插入圖片描述


2.sub_405684子函數

接着往下看,函數如下:

  • 0x0040805E call sub_405684

在這裏插入圖片描述

第一步,繼續在OD中進行跟進。
首先我們表達式跳轉到“00408052”位置,然後按下F2增加斷點,按下F9執行過來。

在這裏插入圖片描述

我們首先可以看看它壓入的參數是什麼?

第二步,在數據窗口中跟隨EAX。
按下F7單步執行,在寄存器中選中EAX,右鍵“數據窗口中跟隨”。

在這裏插入圖片描述

顯示結果如下圖所示,可以看到EAX中保存的是剛剛獲取的病毒文件完整路徑。

在這裏插入圖片描述

第三步,在數據窗口中跟隨EDX。
按下F7單步執行,在寄存器中選中EDX,右鍵“數據窗口中跟隨”。目前EDX還是空值。

在這裏插入圖片描述

第四步,進入後面的call(00405684),查看它的內容。
先選中EAX右鍵“數據窗口中跟隨”。

在這裏插入圖片描述

然後按下F7進入函數,可以看到這裏出現了粗線條,說明它是一個循環。我們步入循環分析其內容。

在這裏插入圖片描述

前面按下F8執行,然後到循環位置按F7步入。

  • mov eax, [local.1]

在這裏插入圖片描述

注意這裏簡單介紹下局部變量的概念。

小技巧
[LOCAL]是局部變量的意思,例如[LOCAL.1]就是第一個局部變量,存放在棧裏的[EBP-4]位置,[LOCAL.2]就是[EBP-8],圖片上的命令其實就是MOV EAX, [EBP-4]。

方法一:可以在OD的選項->調試設置->分析裏面有個選項把勾去掉設置

在這裏插入圖片描述
方法二:選中該命令右鍵“彙編”即可,但修改後會顯示灰色

在這裏插入圖片描述








第五步,接着分析循環。
分析語句“mov eax, dword ptr ss:[ebp-0x4]”,首先將EBP-4賦值給EAX,而當前的EBP-4就是所獲取的病毒的完整路徑。**

  • mov eax, [local.1]
  • mov eax, dword ptr ss:[ebp-0x4]

在這裏插入圖片描述

然後再按F8,這裏是將EAX加上EBX再減1,其中EAX是病毒完整路徑的首地址,EBX是20,它又是什麼呢?

  • mov al, byte ptr ds:[eax+ebx-0x1]

我們查看EBX,如下圖所示。凡是由Delphi編寫的程序,它會在字符串減4的位置保存一個數值。這個數值就是字符串的長度,我們可以看到當前路徑長度是0x20。

  • [eax+ebx-0x1]:計算字符串最後一個字母的位置,即“e”,下圖中也顯示出來了“ds:[02140127]=65(e)”

在這裏插入圖片描述


第六步,繼續按F8執行,這裏結合IDA分析分析0x5C、0x2F、0x3A對應的值。
我們在0x004056B4看到有一系列的比對,然後右鍵分別選中0x5C、0x2F、0x3A,解析成對應的值,或者選中按下R鍵。

在這裏插入圖片描述

5C代表斜槓(\),2F代表反斜槓(/),3A代表冒號(:)。

在這裏插入圖片描述

小結,該循環是將病毒所在完整的路徑從後向前檢索,直到遇到斜槓(\)、反斜槓(/)、冒號(:)結束。結合病毒來看,它找斜槓的位置,其實這段程序要麼是想不包含病毒文件名的路徑,要麼想獲取病毒的文件名(setup.exe)。

在這裏插入圖片描述


第七步,在OD中繼續按F8調試,注意觀察數據窗口的變化。
發現該程序不斷地從後往前獲取路徑信息,並進行對比。

在這裏插入圖片描述

接着發現程序在調用完call函數之後,會出現一個新的字符串。事實上很明顯,它是想獲取去除病毒文件名後的路徑。可見,程序將去除了文件名的路徑拷貝到了之前申請的空間中,於是可以將sub_405684重命名。

  • 0x004056D8 call 0040412C

在這裏插入圖片描述

總結,重命名及對應功能如下:

  • sub_405684 -> GetFilePath
  • 功能:獲取去除病毒文件名後的路徑
  • IDA位置:0x0040805E

在這裏插入圖片描述


3.sub_403ED4子函數

第一步,繼續在OD中往下分析代碼,賦值語句。
返回的第一句代碼是將我們之前所獲取的不帶文件名的地址賦值給EAX。

  • lea eax, dword ptr ss:[ebp-0x3B4]

在這裏插入圖片描述

我們選中EAX在數據窗口中跟隨,可以看到對應的值是“02140138”。

在這裏插入圖片描述

對應的值如下圖所示,即不帶文件名的文件路徑。現在EAX保存的就是這個地址。

在這裏插入圖片描述


第二步,繼續分析代碼,接下來將“Desktop_.ini”賦值給EDX。注意,0x44表示爲D(十進制68對應的ASCII碼)。

  • mov edx, 0x40862C

在這裏插入圖片描述

第三步,通過IDA大致看看call函數00403ED4。

  • 0x0040806E call sub_403ED4

在這裏插入圖片描述

但是通過這個很難分析出它的具體功能,我們不妨只關注它的兩個參數。觀察執行完該函數後的參數位置有什麼變化。

第四步,我們留意着數據窗口,然後按F8執行。
可以看到剛纔所獲取的不帶文件的路徑名,在其後面增加了一個“Desktop_.ini”,從而組成了新的字符串。

在這裏插入圖片描述

分析這裏我們就知道sub_403ED4功能是將上面所獲取的不帶文件名的路徑的地址賦值給eax,然後將字符串“Desktop_.ini”的地址賦給edx。

總結,重命名及對應功能如下:

  • sub_403ED4 -> StringCat
  • 功能:拼接字符串,包含“Desktop_.ini”後綴

在這裏插入圖片描述

同樣,我們可以進入sub_403ED4進行詳細分析。

在這裏插入圖片描述


4.sub_4057A4子函數

接着繼續分析sub_4057A4子函數功能。

  • 0x00408079 call sub_4057A4

在這裏插入圖片描述

第一步,我們在OD中查看EAX的地址。
在這裏我們跟蹤查看這個地址,選中堆棧數值,右鍵“數據窗口中跟隨數值”。

在這裏插入圖片描述

可以看到,它的這個參數是我們之前已經連接好的字符串的首地址。

  • 0x020F0138

在這裏插入圖片描述


第二步,按下F8運行至Call 4057A4函數,再按F7進入該函數分析。

在這裏插入圖片描述

繼續按下F7進入call 0040573C,發現有個FindFirstFileA函數,我們直接來看看它的參數。注意,很多時候右邊註釋內容是沒有的,需要我們手動分析。

在這裏插入圖片描述

按下F8執行到函數調用前位置,可以看到EAX中存放是的是剛纔連接出來的字符串。該函數的作用就是說明要查找當前目錄下Desktop_.ini文件是否存在。

  • C:\Users\14551\Desktop\Desktop_.ini

在這裏插入圖片描述

總結,重命名及對應功能如下:

  • sub_4057A4 -> CheckFileExist
  • 功能:檢測文件“Desktop_.ini”是否存在

在這裏插入圖片描述


5.分析sub_4057A4後續刪除功能

接着我們繼續分析,由於之前進行了重命名操作,所以代碼的可讀性更好了,從0x00408079位置下面的代碼我們都能看懂。

  • 0x0040807E test al, al
  • 0x00408086 push 80h
  • 0x 004080C5 call SetFileAttributesA

它會根據上一段代碼的查找結果進行判定al,即如果當前目錄下Desktop_.ini文件存在,那麼就會調用SetFileAttributesA函數。該函數會改變他的屬性,將它的屬性改爲80h所代表的值,即該文件的文件屬性調整爲NORMAL(正常屬性)。

在這裏插入圖片描述

繼續往下看, 調用了一個Sleep函數停止1毫秒。停止1毫秒之後,它接着調用DeleteFileA函數將Desktop_.ini刪除。正常來講,病毒還沒有運行的時候,這個Desktop_.ini文件應當是不存在的;如果存在的話,病毒首先會改變這個文件的屬性,再將這個病毒給刪除掉。

  • push 1
  • call Sleep
  • call DeleteFileA

在這裏插入圖片描述

這裏看到一個未知函數sub_4040CC,它的參數是[ebp+var_3C4],事實上3C4就是文件的路徑。將文件路徑賦值給EAX,我們進入sub_4040CC函數。發現其功能:

  • 驗證EAX是否存在,即判定文件的路徑是否爲空

如果文件不存在它會直接執行loc_408110位置的函數,sub_4040CC其實就是一個驗證機制,在IDA中按下ESC返回,我們給它進行重命名。

在這裏插入圖片描述

總結,重命名及對應功能如下:

  • sub_4040CC -> CheckPathIsExist
  • 功能:檢測文件的路徑是否存在

在這裏插入圖片描述


6.sub_4078E0子函數

繼續往下分析,我們看到sub_4078E0函數。

  • 0x00408126 call sub_4078E0

在這裏插入圖片描述

第一步,我們在IDA中大致看下函數的內容。
我們可以看到這個函數非常的長,且也調用了很多其它的函數,那麼看上去很難分析清楚這個函數到底是做什麼的。這裏我們先不管其具體的實現細節,只看看該函數執行完後,這些參數或寄存器位置發生了什麼變化,主要關注該函數執行前後,程序使用了哪些寄存器。

在這裏插入圖片描述

第二步,打開OD跳轉到40811D位置,按下F2增加斷點,再按F9執行過來。
注意,病毒逆向分析就是調用IDA和OD反覆調試的過程。

在這裏插入圖片描述

第三步,在OD中分析具體代碼。

  • mov eax, dword ptr ss:[ebp-0x3CC]
  • lea edx, dword ptr ss:[ebp-0x4]
  • call 004078E0

首先它是將EBP-3CC賦值給EAX,再將EBP-4賦值給EDX,調用call函數。

在這裏插入圖片描述

我們現在按F8來步過這個call函數,再觀察數據窗口中存在什麼變化。可以看到執行完call函數後,這個函數用了很大一片區域寫入了非常多看似無意義的字符,結合右邊的ASCII碼,可以將這些內容理解爲暴力P解的字典。

  • 病毒的編寫者企圖利用暴力P解的方式來攻破計算機中某些驗證機制

在這裏插入圖片描述

當然這些內容還是非常多的,病毒作者也寫入了很多其他信息,有興趣的作者可以好好分析下。這些信息有助於我們獲取病毒的行爲信息,只有當我們深入分析其原理和實現過程,纔有助於我們獲取病毒的行爲信息。

在這裏插入圖片描述

在這裏插入圖片描述

總結,重命名及對應功能如下:

  • sub_4078E0 -> WriteVirusInfoToMem
  • 功能:寫入病毒信息到內存中,病毒作者企圖利用暴力P解的方式,來攻破計算機中的某些驗證機制

在這裏插入圖片描述


7.sub_403C44子函數

繼續在OD中分析sub_403C44子函數。

第一步,查看[EBP-8]地址對應的值。
在數據窗口中,可以看到eax的值爲ebp+var_8的地址,通過OD可以知道,這個地址中保存的是0,可以理解爲沒有數據。

  • 00 00 00 00

在這裏插入圖片描述

第二步,我們按下F7進入這個call,查看具體內容。

  • 0x0040812E call 00403C44

在這裏插入圖片描述

可以看到,它首先是將EAX的內容賦值給EDX,我們按下F8可以看到EDX也變成了0值。

  • mov edx, dword ptr ds:[eax]

在這裏插入圖片描述

之後的test運算,使得ZF變爲1,滿足跳轉條件,直接跳轉至retn,那麼本段函數也就結束了。

在這裏插入圖片描述

剛纔我們通過test edx, edx發現ZeroFlag標誌位變成了1。這個標誌位變爲1,說明這個值是一個0,這段函數似乎並沒有實現什麼特別清晰具體的功能,那麼不妨將這個操作理解爲某種標誌的設置。

在這裏插入圖片描述

總結,重命名及對應功能如下:

  • sub_403C44 -> SetZeroFlag
  • 功能:設置零標誌位重設,將其設置爲0

在這裏插入圖片描述


8.sub_403ECC子函數

回到OD,我們分析sub_403ECC子函數。

第一步,查看並分析[EBP-4]保存的內容。

  • mov eax, dword ptr ss:[ebp-0x4]

在這裏插入圖片描述

在數據窗口中跟隨,可以看到“MZP”,這裏大致是保存了一個PE文件,事實上就是將這個PE文件的首地址賦值給這個EAX,接着看看這個call。

在這裏插入圖片描述

第二步,分析call 403ECC函數。
按下F7進入這個call函數,首先調用“TEST EAX, EAX”驗證PE文件是否存在。

在這裏插入圖片描述

按下F8繼續,這裏是跳轉不成立,然後出現在EAX-4位置,我們在數據窗口中跟隨內容。

  • mov eax, dword ptr ds:[eax-0x4]

小技巧
這裏需要特別強調的是,由於本病毒程序是使用Delphi編寫的,因此字符串的首地址減去4後,所取出的4個字節的內容就是此字符串的長度。

換句話說,這段代碼中的[eax-4]就是eax所指向的文件長度,字符串長度就是EC00,這條語句就是將EC00保存在寄存器裏面。於是可以將sub_403ECC重命名。

  • 字符串長度:EC00
  • 現在EAX保存的就是字符串的長度,即PE文件的長度

在這裏插入圖片描述

在這裏插入圖片描述

總結,重命名及對應功能如下:

  • sub_403ECC -> GetFileLen
  • 功能:獲取PE文件的長度

之前這個文件的長度是保存在EAX裏面,這裏又將文件長度賦值給EBX。

在這裏插入圖片描述

接下來,在獲取文件長度後,程序會跳轉到loc_408163處執行。首先它會驗證EBX是否爲零(文件長度是否爲0),正常來說文件長度是不爲0的,也就是這個文件是真實存在的,所以接下來的跳轉不成立,會繼續往下執行。

  • test ebx, ebx
  • jle short loc_408171
  • mov eax, [ebp+var_4]

在這裏插入圖片描述

接着我們嘗試用OD進行分析,跳轉到0x00408163的位置。按下F2增加斷點,再按F9讓它執行過來。

在這裏插入圖片描述

按F8跳轉不成立繼續執行,可以看到將[EBP-4]賦值給EAX,事實上就是讓EAX重新指向這個PE文件的起始位置。

  • mov eax, dword ptr ss:[ebp-0x4]

在這裏插入圖片描述

按下F8繼續執行,這裏是將 [EAX+EBX-1],由於EAX指向的是文件起始地址,而EBX是文件的長度,減一是獲取整個PE文件最後一個字符它是什麼。事實上,CMP語句就是驗證這個文件最後一個數據它是否爲零,如果爲0,則接下來的跳轉不成立。

  • cmp byte ptr [eax+ebx-0x1], 0x0

在這裏插入圖片描述

經過OD的動態分析發現,因爲這裏顯示跳轉未實現,故文件尾端的值爲0,所以不執行跳轉,繼續向下執行。

在這裏插入圖片描述


三.總結

寫到這裏,該部分關於sub_408024核心函數的部分功能就介紹完畢,請大家一定要動手跟着調試,先感受下這部分的實驗,後面的文章我們將繼續分析熊貓燒香病毒感染的過程。

在這裏插入圖片描述

再次感謝姜曄老師,經過這篇文章的討論,我們詳細調試了病毒的各個模塊。當然,整個病毒的所有功能都沒時間完全概述,文章更多是提供一種惡意樣本分析的方法和思路,帶領大家入門,正如姜老師所說“只要各位讀者勤於動手,並將所講的逆向分析的基本原理搞清楚,那麼這個病毒分析根本不在話下”。

最後簡單總結這篇文章的逆向過程,主要分析sub_408024核心函數。

  • 0x0040804D call sub_40277C
    – 重命名爲:GetFilePathAndName
    – 功能:獲取文件的完整路徑及文件名稱

  • 0x0040805E call sub_405684
    – 重命名爲:GetFilePath
    – 功能:獲取去除病毒文件名後的路徑
    – IDA位置:0x0040805E
    – 技巧:循環將病毒的完整路徑從後往前檢索,直到遇到斜槓(\)、反斜槓(/)、冒號(:)結束,從而提取病毒的路徑或病毒的文件名(如setup.exe)



  • 0x0040806E call sub_403ED4
    – 重命名:StringCat
    – 功能:拼接字符串,包含“Desktop_.ini”後綴

  • 0x00408079 call sub_4057A4
    – CheckFileExist
    – 功能:檢測文件“Desktop_.ini”是否存在

  • 0x00408105 call sub_4040CC
    – CheckPathIsExist
    – 功能:檢測文件的路徑是否存在

  • 0x00408126 call sub_4078E0
    – WriteVirusInfoToMem
    – 功能:寫入病毒信息到內存中,病毒作者企圖利用暴力P解的方式,來攻破計算機中的某些驗證機制

  • 0x0040812E call sub_403C44
    – SetZeroFlag
    – 功能:設置零標誌位,將其設置爲0

  • 0x00408136 call sub_403ECC
    – GetFileLen
    – 功能:獲取PE文件的長度

  • CMP語句就是驗證PE文件最後一個數據是否爲零

再給出這張圖,希望加深大家對熊貓燒香的瞭解。這系列文章寫得不容易,您的點贊、評論、收藏將是對我最大的支持,感恩安全路上一路前行,如果有寫得不好或侵權的地方,可以聯繫我刪除。基礎性文章,希望對您有所幫助,作者目的是與安全人共同進步,加油~

在這裏插入圖片描述


《CSDN 2020年度回憶》
最開心的是已經在這裏分享了近十年,與它走過了3361天,十年啊,人生的八分之一。最回味的是今年分享了132篇原創文章,近十年最高,每一篇字數都快過萬,都是我很用心的總結。最感謝的是購買專欄的朋友和每一位閱讀我文章的博友,博客讓我每月收入過千,感恩編程路上的同行。最滿意的還是那篇年終總結《敏而多思,寧靜致遠》,分享我們一家的故事。2020年挺難,我還是那句話:“希望能在CSDN寫有溫度的代碼,分享高質量的原創文章,幫助更多初學者”。2021年繼續加油,共勉CSDN這個畫風我很喜歡。

在這裏插入圖片描述

2020年8月18新開的“娜璋AI安全之家”,主要圍繞Python大數據分析、網絡空間安全、人工智能、Web滲透及攻防技術進行講解,同時分享CCF、SCI、南核北核論文的算法實現。娜璋之家會更加系統,並重構作者的所有文章,從零講解Python和安全,寫了近十年文章,真心想把自己所學所感所做分享出來,還請各位多多指教,真誠邀請您的關注!謝謝。

(By:Eastmount 2021-01-07 星期四 夜於武漢 http://blog.csdn.net/eastmount/ )


參考文獻:
姜曄老師真的非常佩服和值得去學習,包括他蘇寧到卡巴斯基的故事,推薦大家去閱讀。也希望自己和大家的技術能不斷提升,加油!
[1] 姜曄老師技術分享 - B站
[2] 姜曄老師的技術空間目錄 - CSDN
[3] [網絡安全自學篇] 木馬原理詳解、遠程服務器IPC $漏洞及木馬植入實驗
[4] 騰訊安全聯合實驗室 - 知乎文章
[5] [網絡安全自學篇] 七十九.Windows PE病毒原理、分類及感染方式詳解
[6] [網絡安全自學篇] 四十九.Procmon軟件基本用法及文件進程、註冊表查看
[7] [安全攻防進階篇] 八.那些年的熊貓燒香及PE病毒行爲機理分析
[8] [網絡安全自學篇] 七十三.WannaCry勒索病毒復現及分析(四)蠕蟲傳播機制源碼詳解
[9] https://blog.csdn.net/ioio_jy/article/details/41207265









發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章