1. 程式人生 > >惡意程式碼分析實戰 Lab21

惡意程式碼分析實戰 Lab21

lab21-01

1lab09-02還記得話是需要改程式名才能正確執行,所以,程式不會發生什麼

額,我的IDApro識別出來main


修改下面的jz位jmp


其中r11是之前getmodulname得到的當前程式名,另一個由ocl.exe編碼得到,windbg檢視位jzm



只有一個ecx


圖中只給出了9個引數的註釋,還缺一個commandline引數,這個這個函式應該是建立cmd程序,所以rdx應該算是一個引數,所以IDApro的一些註釋也不太準確,總共需要10個引數,根據MSDN文件


lab21-02

資源節存在三個pe檔案,分別是64位exe,64位dll,和32位exe,還有一個Manifest


x86編譯,因為引數傳遞都是通過push壓入棧

程式會得到IsWow64Process函式地址通過這個函式判斷程式是否執行在wow64環境下,如果是那麼系統就是64位的


資源節說明一切

這裡的IsWow64Process函式兩個引數,返回0則是在x86環境下


x64情況下,會在資源節裡面讀取如下兩個資料,然後在系統目錄建立如下兩個64位PE檔案


最後會通過cmd執行Lab21-02x.exe檔案,Lab21-02x.exe會對explorer.exe注入Lab21-02x.dll檔案

然而如果在x86下只會,建立如下32位PE檔案


然後查詢explorer.exe程序,最後通過建立遠端執行緒注入dll