SnowSoul勒索軟件解密技術(shù)分析
近期,我們捕獲并分析了新近活躍的勒索家族 SnowSoul。該家族采用對(duì)稱加密與非對(duì)稱加密相結(jié)合的混合方案來加密受害者文件,具有傳播快、干擾面廣、對(duì)生產(chǎn)業(yè)務(wù)影響顯著等特點(diǎn)。為評(píng)估其真實(shí)危害與可行的處置路徑,我們對(duì)其樣本進(jìn)行了完整的行為分析、加密流程逆向與密鑰管理機(jī)制分析。通過深入分析,我們不僅還原了其攻擊鏈與加密實(shí)現(xiàn)細(xì)節(jié),還識(shí)別出其密碼學(xué)設(shè)計(jì)中的關(guān)鍵缺陷,我們利用這一缺陷開發(fā)了一個(gè)有效的解密器,經(jīng)驗(yàn)證可成功解密被其加密的文件,并已在多個(gè)樣本與受影響環(huán)境中驗(yàn)證,可穩(wěn)定恢復(fù)被其加密的文件。
技術(shù)分析
運(yùn)行流程概述
SnowSoul勒索軟件加密前置處理流程圖如下:
?
圖1. SnowSoul勒索加密前處理流程示意圖?
SnowSoul勒索軟件加密流程簡圖如下所示:
?
圖2. SnowSoul勒索軟件加密流程示意圖
前置操作
在SnowSoul加密過程中,首先會(huì)排除一些目錄或文件,這些目錄或文件看起來大部分為系統(tǒng)相關(guān)目錄或文件,但部分名稱有所不同,推測可能是拼寫錯(cuò)誤。
?
圖3. 排除的目錄和文件名稱列表
軟件運(yùn)行后,首先會(huì)通過修改注冊(cè)表,禁用系統(tǒng)的任務(wù)管理器。接下來,SnowSoul會(huì)執(zhí)行bcdedit命令,禁用系統(tǒng)的恢復(fù)模式。完成后,SnowSoul還會(huì)像大多數(shù)勒索軟件一樣,刪除用于備份系統(tǒng)數(shù)據(jù)的卷影副本。SnowSoul還會(huì)強(qiáng)制刪除當(dāng)前設(shè)備備份目錄中存儲(chǔ)的數(shù)據(jù)庫,這一操作等同于對(duì)系統(tǒng)備份目錄進(jìn)行了重置操作。
?
圖4. SnowSoul勒索軟件系統(tǒng)前置操作代碼
駐留系統(tǒng)
接下來,SnowSoul會(huì)嘗試實(shí)現(xiàn)持久化駐留系統(tǒng),其函數(shù)的作用是把當(dāng)前可執(zhí)行文件自身復(fù)制到用戶的Roaming目錄下(通常對(duì)應(yīng)系統(tǒng)環(huán)境變量的%AppData%),并以指定的文件名運(yùn)行。如果目錄中已經(jīng)存在同名文件,則會(huì)將其覆蓋后再啟動(dòng),然后退出當(dāng)前進(jìn)程。
?
圖5. 復(fù)制到指定%AppData%中并啟動(dòng)?
SnowSoul還會(huì)嘗試停止一些系統(tǒng)服務(wù)和進(jìn)程,防止影響加密操作的占用。此外,被該勒索軟件加密的文件擴(kuò)展名共有532種,覆蓋幾乎所有常見的文檔及數(shù)據(jù)文件擴(kuò)展名。在加密文件操作完成后,被加密的新文件會(huì)被附加一個(gè)隨機(jī)的加密擴(kuò)展名。該擴(kuò)展名是將隨機(jī)的5個(gè)字符(隨機(jī)范圍為10個(gè)數(shù)字和26個(gè)小寫字母):
?
圖6. 隨機(jī)的加密文件擴(kuò)展名
SnowSoul的文件加密操作采用了AES-CBC加密算法:
?
圖7. 文件加密算法及參數(shù)
對(duì)于上述用來加密文件的加密AES密鑰文件,則采用RSA-2048公鑰進(jìn)行加密:
?
圖8. 密鑰文件加密算法?
這一加密操作使用的RSA公鑰,通過硬編碼方式直接內(nèi)置在程序代碼中:
?
圖9. 硬編碼的RSA公鑰數(shù)據(jù)?
加密后覆蓋原文件為“?”并將原文件刪除,這一操作是用來防止對(duì)原數(shù)據(jù)進(jìn)行恢復(fù)的典型數(shù)據(jù)破壞行為。
?
圖10. 破壞原文件數(shù)據(jù)防止恢復(fù)
通過分析發(fā)現(xiàn),被加密后的文件固定結(jié)構(gòu)中的前8個(gè)字節(jié),為用于加密的AES算法中的IV值。與之對(duì)應(yīng)的,被加密的文件尾部344字節(jié),為RSA加密過的AES密鑰再次進(jìn)行Base64編碼后的數(shù)據(jù)。
完成所有加密操作后,SnowSoul會(huì)在受害系統(tǒng)中釋放勒索信。
?
圖11. 被釋放到受害者系統(tǒng)中的勒索信
數(shù)據(jù)解密
雖然 SnowSoul勒索的加密操作采用了AES + RSA-2048這種非常成熟的加密算法組合,但經(jīng)過深入分析,我們發(fā)現(xiàn)其加密實(shí)現(xiàn)設(shè)計(jì)上存在缺陷。我們利用這些缺陷,開發(fā)了一款有效的解密工具。經(jīng)測試,該解密工具可成功解密被其加密的文件,并在多個(gè)已受該家族樣本感染的真實(shí)環(huán)境中進(jìn)行了實(shí)際驗(yàn)證,可穩(wěn)定恢復(fù)所有被加密的文件數(shù)據(jù)。
?
圖12. “SnowSoul勒索解密工具”可有效解密文件并恢復(fù)數(shù)據(jù)
寫在最后
當(dāng)前,絕大多數(shù)勒索軟件采用以RSA為核心的混合加密機(jī)制。而在未獲得攻擊者解密私鑰的情況下,幾乎無法對(duì)被加密的文件進(jìn)行解密恢復(fù)。本次我們針對(duì)SnowSoul的成功解密,源于其加密算法的實(shí)現(xiàn)存在缺陷,具有一定的偶發(fā)性與針對(duì)性,并不代表對(duì)此類勒索軟件的解密具有通用性。所以,請(qǐng)所有用戶——尤其是重要數(shù)據(jù)的維護(hù)人員,務(wù)必持續(xù)做好離線/不可變備份與基礎(chǔ)防護(hù),切勿因個(gè)案的解密成功,而放松對(duì)數(shù)據(jù)備份與勒索攻擊預(yù)防的重視與投入。
360安全衛(wèi)士
360殺毒
360文檔衛(wèi)士
360安全瀏覽器
360極速瀏覽器
360安全云盤
360隨身WiFi
360搜索
系統(tǒng)急救箱
重裝大師
勒索病毒救助
急救盤
高危漏洞免疫
360壓縮
驅(qū)動(dòng)大師
魯大師
360換機(jī)助手
360清理大師Win10
360游戲大廳
360軟件管家
360手機(jī)衛(wèi)士
360防騷擾大師
360加固保
360貸款神器
360手機(jī)瀏覽器
360安全云盤
360免費(fèi)WiFi
安全客
手機(jī)助手
安全換機(jī)
360幫幫
清理大師
省電王
360商城
360天氣
360鎖屏
手機(jī)專家
快剪輯
360影視
360娛樂
快資訊
你財(cái)富
360借條
360互助
信貸管家
360攝像機(jī)云臺(tái)AI版
360攝像機(jī)小水滴AI版
360攝像機(jī)云臺(tái)變焦版
360可視門鈴
360攝像機(jī)云臺(tái)1080p
家庭防火墻V5S增強(qiáng)版
家庭防火墻5Pro
家庭防火墻5SV2
家庭防火墻路由器5C
360兒童手表S1
360兒童手表8X
360兒童手表P1
360兒童手表SE5
360智能健康手表
行車記錄儀M310
行車記錄儀K600
行車記錄儀G380
360行車記錄儀G600
兒童安全座椅
360掃地機(jī)器人X90
360掃地機(jī)器人T90
360掃地機(jī)器人S7
360掃地機(jī)器人S6
360掃地機(jī)器人S5
360安全衛(wèi)士
360殺毒
360文檔衛(wèi)士
360安全瀏覽器
360極速瀏覽器
360隨身WiFi
360搜索
系統(tǒng)急救箱
重裝大師
急救盤
勒索病毒救助
360壓縮
驅(qū)動(dòng)大師
魯大師
360游戲大廳
360軟件管家
360手機(jī)衛(wèi)士
360防騷擾大師
手機(jī)急救箱
360加固保
360貸款神器
360免費(fèi)WiFi
安全客
手機(jī)助手
一鍵root
安全換機(jī)
360幫幫
信用衛(wèi)士
清理大師
省電王
360商城
流量衛(wèi)士
360天氣
360鎖屏
手機(jī)專家
快剪輯
360影視
360娛樂
快資訊
你財(cái)富
360借條
360手機(jī)N7
360手機(jī)N6
Pro
360手機(jī)vizza
360手機(jī)N5S
360兒童手表6C
360兒童手表6W
360兒童手表SE2代
360手表SE2Plus
360老人手表
360攝像機(jī)大眾版
360安全路由器P3
360安全路由器P2
360兒童機(jī)器人
外設(shè)產(chǎn)品
影音娛樂
平板電腦
二手手機(jī)
二代 美猴王版
二代
美猴王領(lǐng)航版
標(biāo)準(zhǔn)升級(jí)版
后視鏡版
車載電器
京公網(wǎng)安備 11000002000006號(hào)