您好,登錄后才能下訂單哦!
?前言:
?WannaCry利用永恒之藍漏洞爆發(fā)以后,病毒安全的前沿對抗最頻繁種類則是勒索病毒了,17年初或者更早就有人捕獲了GandCrab家族的勒索病毒,直到18年已經(jīng)更新迭代到了5.0版本,18年進入尾聲的時候,安全研究人員發(fā)現(xiàn)了GandCrab勒索病毒的V5.1最新版變種。
?對于勒索個人看法:當(dāng)?shù)谝淮温犝f勒索病毒的時候,就感覺一定是無法抗拒的利益驅(qū)動,才會讓某一群人去迭代、維護、研發(fā)勒索病毒。這道理就像開了一家公司一樣,能把病毒走向全世界,已經(jīng)是很成功了,看似簡單,其實背后的關(guān)聯(lián)復(fù)雜。除了加密算法的復(fù)雜程度之外,勒索的潛伏與隱蔽(字符串混淆加密)也是比較到位。
?其實不管怎樣,那些API還是那些API,即使自己實現(xiàn)相仿得函數(shù),時間足夠也能從函數(shù)功能與匯編,加以邏輯去推理過程,從而實現(xiàn)、還原。
?
1、預(yù)熱(收集系統(tǒng)信息、提權(quán)、注冊表操作、兼容匹配、加密解密關(guān)鍵字符串等)
2、枚舉掃描(網(wǎng)絡(luò)共享、資源枚舉,遍歷掃描文件)
3、加密文件(過濾、匹配的文件以不同方式進行加密)
4、收尾工作(發(fā)送勒索信息、刪除病毒、銷毀進程等)
?基本所分析的病毒大多數(shù)都會這樣干,因為他既要保證你系統(tǒng)的穩(wěn)定性,也要保證自己的安全與功能的實現(xiàn),這樣才能勒索到錢......
???????????????????????????????ps:文章最后附思維導(dǎo)圖
?
?預(yù)熱分析:
1、線上分析:
????????????????????圖片一:線上分析
????????????????????圖片二:樣本信息
?
2、工具分析:
????????????????????圖片三:exeinfo pe
?
?詳細(xì)分析:
①拉入IDA也許你會看到花指令混淆,如下所示:
????????????????????圖片四:花指令混淆
?②如上圖所示,GandCrab.00426F7A函數(shù)會標(biāo)志勒索病毒要開始了,當(dāng)你發(fā)現(xiàn)桌面彈窗"我們很快就會回來",恭喜已經(jīng)中了GandCrab勒索病毒,如下所示:
????????????????????圖片五:MessageBox
?③GandCrab.00405FF7函數(shù)先是創(chuàng)建快照,遍歷進程,怕加密文件的時候影響加密效果,如文件被占用等問題,如下所示:
????????????????????圖片六:初始化字符串
????????????????????圖片七:遍歷對比進程
????????????????????圖片八:匹配進程結(jié)束
?④如圖三中GandCrab.00405944是最為核心的函數(shù),先來看看獲取windows版本信息,獲取SID也就是說當(dāng)前的權(quán)限等級,如下所示:
????????????????????圖片九:Windows版本信息
????????????????????圖片十:當(dāng)前權(quán)限級別
?⑤GandCrab.004054BA函數(shù)對注冊表中鍵盤布局鍵值獲取,獲取當(dāng)前用戶和系統(tǒng)的默認(rèn)安裝語言,比對如果匹配到419(俄羅斯),422(烏克蘭) ,423(比利時)等等,那么將執(zhí)行刪除文本且結(jié)束進程,這意味著不進行勒索......,如下所示:
????????????????????圖片十一:鍵值循環(huán)
????????????????????圖片十二:匹配成功
?⑥繼續(xù)線性跟蹤,GandCrab.00405016函數(shù)負(fù)責(zé)獲取系統(tǒng)信息,檢索了磁盤目錄關(guān)聯(lián)的文件系統(tǒng)和卷的信息,然后用磁盤的數(shù)據(jù)hash獲取隨機字符串,創(chuàng)建.lock互斥體:
????????????????????圖片十三:創(chuàng)建互斥體
⑦GandCrab.0040586C函數(shù),加密與異或字符串獲取公鑰1,如下所示:
????????????????????圖片十四:獲取RSA1
⑧參數(shù)入棧,安全進程掃描,關(guān)鍵系統(tǒng)數(shù)據(jù)異或解密,如下所示:
????????????????????圖片十五:入棧參數(shù)
????????????????????圖片十六:示意圖
????????????????????圖片十七:系統(tǒng)數(shù)據(jù)拼接
????????????????????圖片十八:安全服務(wù)遍歷
????????????????????圖片十九:拼接后數(shù)據(jù)
????????????????????圖片二十:解密
⑨系統(tǒng)不顯示critical-error-handler消息框,異常不顯示,初始化臨界區(qū),如下所示:
????????????????????圖片二十一:SetErrorMode
?⑩如上圖所示,GandCrab.00404DC5函數(shù)是GandCrab勒索的核心函數(shù),先是利用微軟提供的CSP系列函數(shù)獲取隨機數(shù),如下所示:
????????????????????圖片二十二:GetModuleHandleA
?解密字符串,解密后發(fā)現(xiàn)是文件名的后綴,如下所示:
????????????????????圖片二十三:文件后綴名
?隨機生成密鑰,且導(dǎo)出公鑰,私鑰,如下所示:
????????????????????圖片二十四:導(dǎo)出Key
?接著創(chuàng)建了注冊表ex_data\data,并且設(shè)置了隨機字符,如下所示:
????????????????????圖片二十五:設(shè)置注冊表
?導(dǎo)入公鑰,加密了數(shù)據(jù):
????????????????????圖片二十六:硬編碼公鑰導(dǎo)入
?創(chuàng)建了key_datas\datas,設(shè)置了public=公鑰,private=硬編碼加密后私鑰(還加了隨機數(shù)等數(shù)據(jù))
????????????????????圖片二十七:注冊表設(shè)置
?有意思的賦值方式,push入棧,pop彈出給寄存器,賦值給內(nèi)存變量,如下所示:
????????????????????圖片二十八:賦值方式
?使用了Base64加密了之前的密鑰,然后拼接勒索警告字符串與獲取的pc數(shù)據(jù),如下所示:
????????????????????圖片二十九:勒索警告
?下面壓入了文件后綴格式,應(yīng)該準(zhǔn)備枚舉網(wǎng)絡(luò)資源,遍歷文件,加密文件了,如下所示:
????????????????????圖片三十:GandCrab.00403D8E
?內(nèi)部創(chuàng)建了兩個線程,線程分析一,如下所示:
????????????????????圖片三十一:回調(diào)函數(shù)
????????????????????圖片三十二:局域網(wǎng)枚舉
????????????????????圖片三十四:遍歷局域網(wǎng)下文件目錄與磁盤
????????????????????圖片三十五:遞歸掃描
????????????????????圖片三十六:加密過濾
????????????????????圖片三十七:加密過程
????????????????????圖片三十八:硬編碼公鑰加密文件
?線程分析二,如下所示:
?
????????????????????圖片三十九:本地文件加密且退出進程
最后調(diào)用了函數(shù)GandCrab.00405252執(zhí)行了 ShellExecute,執(zhí)行了如下指令:
?
??樣本中關(guān)于利用CVE漏洞提權(quán)代碼沒有分析,因為在測試環(huán)境下沒有匹配0x1000,跳過了提權(quán)函數(shù),上述有很多分析點不夠精準(zhǔn),但是還原了樣本的整體邏輯。
?關(guān)于硬編碼公鑰加密研究,使用的是CSP又稱"加密服務(wù)提供者(Cryptographic Service Provider)",微軟提供的一套API,后續(xù)有機會一起實現(xiàn)與深入研究一番。
?
思維導(dǎo)圖:
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。