勒索軟件 ColdLock 定向攻擊我國臺(tái)灣地區(qū)多個(gè)組織機(jī)構(gòu)
近日一次有針對性的攻擊使臺(tái)灣的幾個(gè)組織感染了一種新的勒索軟件,我們將其命名為ColdLock。由于勒索軟件是針對數(shù)據(jù)庫和電子郵件服務(wù)器進(jìn)行加密,因此這種攻擊具有較強(qiáng)破壞性。
我們收集的信息表明,該攻擊于5月初開始襲擊多個(gè)組織機(jī)構(gòu)。對惡意軟件的分析表明,ColdLock與兩個(gè)先前已知的勒索軟件系列特別是Lockergoga,F(xiàn)reezing和EDA2勒索軟件之間存在相似之處。還沒有跡象表明這種攻擊襲擊了目標(biāo)組織之外的任何其他組織。
1. 樣本分析
我們目前還不知道此威脅是如何進(jìn)入潛在受害者網(wǎng)絡(luò)的。但是,我們認(rèn)為,攻擊者以某種方式獲得了對目標(biāo)組織的Active Directory服務(wù)器的訪問權(quán)限。至此,他們能夠設(shè)置組策略,該組策略導(dǎo)致下載勒索軟件文件并在受影響的域內(nèi)的計(jì)算機(jī)上運(yùn)行。
payload以.NET可執(zhí)行文件(.DLL文件)的形式存在,該文件已使用ConfuserEx 包裝器進(jìn)行了包裝/保護(hù) 。
https://yck1509.github.io/ConfuserEx/
它使用PowerShell對.NET可執(zhí)行文件的反射加載來運(yùn)行上述.DLL文件:
圖1. .DLL文件的反射加載
它還包含兩項(xiàng)檢查,以驗(yàn)證其是否正在運(yùn)行。首先,它檢查勒索文件所使用的%System Root%\ ProgramData \ readme.tmp的存在 。此檢查可防止系統(tǒng)受到相同威脅的再次感染:
圖2.勒索文件檢查
它會(huì)檢查系統(tǒng)時(shí)鐘。它只會(huì)在一天的下午12:10或之后運(yùn)行;如果時(shí)間更早,它將休眠15秒鐘,直到超過上述時(shí)間為止。
圖3.代碼中的定時(shí)炸彈
2. 加密分析
在加密任何文件之前,勒索軟件還執(zhí)行某些準(zhǔn)備程序。首先,如果服務(wù)正在運(yùn)行,它將終止系統(tǒng)上的多個(gè)服務(wù),以防止違反文件訪問權(quán)限。這些服務(wù)是:
- mariadb
- msexchangeis
- mssql
- mysql
- oracleservice
這些是各種數(shù)據(jù)庫以及Exchange郵件服務(wù)器使用的服務(wù)名稱,它還將終止 Outlook 進(jìn)程。
圖4.服務(wù)終止
它還會(huì)檢查系統(tǒng)上運(yùn)行的Windows版本。如果運(yùn)行的是Windows 10,它將執(zhí)行多個(gè)Windows 10特定的例程。Windows Defender已禁用,并且無法將反饋/惡意軟件樣本發(fā)送給Microsoft,推送通知也被禁用。
攻擊我國臺(tái)灣地區(qū)多個(gè)組織機(jī)構(gòu)" src="https://img.4hou.com/uploads/ueditor/php/upload/image/20200508/1588904018184611.png" width="983" height="282">
圖5.禁用Windows Defender
實(shí)際的加密例程有點(diǎn)不尋常,它將避免加密以下目錄:
- %System Root%\Program Files
- %System Root%\Program Files (x86)
- %System Root%\ProgramData
- %System Root%\Users\all users
- %System Root%\Users\default
- {malware directory}
- {drive letter}:\System Volume Information
- {drive letter}:$Recycle.bin
但是,以下目錄仍將被加密:
- %System Root%\ProgramData\Microsoft\Windows\Start Menu
- %System Root%\Program Files\Microsoft\Exchange Server
- %System Root%\Program Files (x86)\Microsoft\Exchange Server
- (Program Files, Program Files (x86), and ProgramData) 目錄包含以下任何字符串都會(huì)被加密:
- sql
- mariadb
- oracle
其他目錄中的文件是否被加密取決于三個(gè)條件,即:
- 目標(biāo)目錄上的文件數(shù)少于100
- 目錄的最后寫入時(shí)間比2018年1月1日晚。
- 目錄名稱不應(yīng)包含以下任何字符串:
- git
- appdata
- cache
- image
- lib
- log
- logs
- microsoft
- reference
- res
- resource
- script
- setup
- skin
- temp
- theme
- third_party
- thirdparty
如果滿足上述所有條件,它將加密給定目錄中的所有文件,但擴(kuò)展名為以下文件的文件不會(huì)被加密:
- .avi
- .dll
- .gif
- .iso
- .m2ts
- .mkv
- .mov
- .mp3
- .msi
- .ocx
- .tmp
- .wmv
在其他情況下它將僅加密具有以下擴(kuò)展名的文件:
- .7z
- .aspx
- .bak
- .cpp
- .csv
- .doc
- .docx
- .gz
- .hwp
- .java
- .jpg
- .jsp
- .lnk
- .odt
- .one
- .php
- .ppt
- .pptx
- .pst
- .rar
- .sh
- .sql
- .txt
- .xls
- .xlsx
- .xml
- .zip
圖6.白名單/黑名單代碼
加密過程在CBC模式下使用AES函數(shù)。它使用salt和密鑰生成所需的密鑰和初始化向量(IV);前者嵌入在代碼中,而后者則使用隨機(jī)生成的32字節(jié)長字符串的SHA-256哈希值動(dòng)態(tài)生成。然后,使用硬編碼的公共RSA密鑰對此進(jìn)行加密,然后將其嵌入勒索記錄中,加密的文件具有 .locked 擴(kuò)展名。
圖7. AES加密代碼
圖8.密鑰生成
勒索文件存儲(chǔ)在系統(tǒng)的各個(gè)位置,即:
- %Desktop%\How To Unlock Files.Txt
- %System Root%\ProgramData\readme.tmp
- %User Startup%\How To Unlock Files.Txt
- {Encrypted Drive}:\How To Unlock Files.Txt
該說明的內(nèi)容與其他勒索軟件說明類似:
圖9.勒索文件
然后,勒索軟件會(huì)為所有用戶更改系統(tǒng)背景,包含一條讀取文本文件的指令,通過更改幾個(gè)注冊表設(shè)置來實(shí)現(xiàn)此操作。
圖10.修改后的系統(tǒng)背景
3. 關(guān)聯(lián)分析
乍一看,這種威脅似乎與Lockergoga有關(guān),因?yàn)樗鼈児蚕砑用芪募?.locked)的相同擴(kuò)展名。但是,其他勒索軟件系列也使用此擴(kuò)展名。存在與Freeze勒索軟件系列更合理的鏈接,它具有在網(wǎng)絡(luò)(受損的AD服務(wù)器)中傳播的類似方法,反射注入方法和內(nèi)部模塊體系結(jié)構(gòu)。
該代碼還與開源EDA2勒索軟件具有相似之處。
4. IOCs