11月初一個名為“MosesStaff”的神秘黑客組織成功對以色列國防部發(fā)動了網(wǎng)絡(luò)攻擊,獲取了一些“軍隊部署信息”,并對外發(fā)布了一些聲稱是從以色列國防部服務(wù)器獲取的文件和照片。
“MosesStaff”在官網(wǎng)聲稱,該組織入侵了165個服務(wù)器和254個網(wǎng)站,,收集了超過11TB的數(shù)據(jù),其中包括以色列國防部及國防部長本尼·甘茨的相關(guān)信息,還有《以色列郵報》,、電子西拉公司和Epsilor公司相關(guān)的文件。
技術(shù)分析
早在今年 9 月,,黑客組織 MosesStaff 就開始以以色列組織為目標,,加入了大約一年前由 Pay2Key 和 BlackShadow 攻擊組織發(fā)起的攻擊浪潮。這些攻擊者主要是出于政治原因發(fā)起的攻擊,。
MosesStaff 加密的計算機屏幕截圖
在本文中,,我們將介紹他們的策略,、技術(shù)和程序 (TTP),分析他們的兩個主要工具 PyDCrypt 和 DCSrv,,描述他們的加密方案,。
1.MosesStaff 對以色列公司進行的有針對性的攻擊中,泄露了數(shù)據(jù),,并加密了網(wǎng)絡(luò),。但沒有贖金要求,也沒有解密選項,;他們的動機純粹是政治性的,。
2.對受害者網(wǎng)絡(luò)的初始訪問大概是通過利用 Microsoft Exchange Server等面向公眾的基礎(chǔ)設(shè)施中的已知漏洞實現(xiàn)的。
3.受感染網(wǎng)絡(luò)中的橫向移動是使用基本工具進行的:PsExec,、WMIC 和 Powershell,。
4.這些攻擊利用開源庫 DiskCryptor 來執(zhí)行卷加密并使用引導加載程序鎖定受害者的計算機,引導加載程序不允許計算機在沒有正確密碼的情況下啟動,。
5.在某些情況下,,當前的加密方法可能是可逆的。
感染鏈
為了獲得初始訪問權(quán)限,,攻擊者利用了目標中面向外部的基礎(chǔ)設(shè)施中的已知漏洞,。結(jié)果,一個webshell出現(xiàn)在以下路徑中:
C:\inetpub\wwwroot\aspnet_client\system_web\IISpool.aspx
它是一個基本的密碼保護shell,,其中將輸入密碼的MD5與硬編碼值52a04efc6a0e7facf34dcc36a6d1ce6f (joker123的MD5哈希值)進行比較,。這個webshell是模糊的,基于Github中可用的一個webshell,。
混淆的 webshell 密碼驗證代碼
身份驗證成功后混淆的 webshell 的屏幕截圖
攻擊者還將幾個額外的工具上傳到同一個文件夾:
1.多個批處理腳本可以在特定的遠程計算機上啟用 SMB 或禁用 Windows 防火墻,。
2.PsExec 的一個副本,這是 Microsoft 的一種便攜式工具,,允許使用任何用戶的憑據(jù)遠程運行進程,。
3.OICe.exe,一個小型的 Go 可執(zhí)行文件,,它通過其命令行參數(shù)接收命令并執(zhí)行它,。該工具可能會在攻擊的早期階段用于受感染的服務(wù)器,以避免執(zhí)行 cmd 或 PowerShell 等可疑子進程,。
攻擊者進入受害者網(wǎng)絡(luò)后,,他們收集網(wǎng)絡(luò)中計算機的信息并將其組合到一個victim_info列表中。這包含域名,、計算機名稱和管理員憑據(jù),,稍后用于編譯特制的 PyDCrypt 惡意軟件。
該惡意軟件通常在 C:\Users\Public\csrss.exe 中路徑運行,負責在網(wǎng)絡(luò)內(nèi)部自我復制并釋放主要的加密載荷 DCSrv,。
感染鏈
PyDCrypt
PyDCrypt 的主要目標是感染其他計算機并確保主要載荷 DCSrv 正確執(zhí)行??蓤?zhí)行文件是用 Python 編寫的,,并使用 PyInstaller 進行加密編譯,在構(gòu)建階段使用 --key 標志,。如前所述,,攻擊者為每個受感染的組織構(gòu)建一個新的樣本,并對從受害者的環(huán)境中收集的參數(shù)進行硬編碼:
在 PyDCrypt 示例中硬編碼的字典顯示了攻擊者在偵察階段從受害者環(huán)境中收集的信息
PyDCrypt 可以接收 2 或 3 個參數(shù),。
預期的第一個參數(shù)是 113,,惡意軟件會檢查,如果參數(shù)不同,,它不會繼續(xù)執(zhí)行并自行釋放,。
第二個參數(shù)可以是 0 或 1,表示 PyDCrypt 之前是否已經(jīng)運行過,。
第三個參數(shù)是可選的,,如果提供了,它將用作加密密鑰,,稍后將作為參數(shù)傳遞給DCSrv,。
惡意軟件的主要工作流程:
創(chuàng)建鎖定文件以防止多個惡意軟件實例同時運行。
解密 DCSrv(名為 C:\Users\Public\svchost.exe)到磁盤并執(zhí)行它,。加密算法基于 XOR 和多個 Base64 編碼操作,。
負責 DCSrv 執(zhí)行的 PyDCrypt 的反混淆代碼
解密并釋放 PSExec(名為 ps.exe),解碼方法與 DCSrv 相同,。
修改防火墻規(guī)則以允許在遠程計算機上使用 netsh.exe 傳入 SMB,、Netbios 和 RPC 連接:
遍歷網(wǎng)絡(luò)中的計算機并感染每臺計算機:惡意軟件嘗試使用已泄露的管理員憑據(jù)通過 Powershell、PSExec 或 WMIC等任何可用的工具遠程復制和執(zhí)行 csrss.exe (PyDCrypt),。通過在目標計算機上運行 whoami 或 echo 1233dsfassad 來完成對每種方法的探測,。
釋放所有創(chuàng)建的工件,例如 ps.exe 二進制文件和 PyDCrypt 可執(zhí)行文件,。
PyDCrypt 單執(zhí)行樹(single execution tree)的取證報告示例
DCSrv
該惡意進程偽裝成合法的 svchost.exe 進程,,其目的只有一個:加密所有計算機卷,并拒絕對計算機的任何訪問,。
它包含以下4個資源:
資源 1——包含加密配置,,根據(jù)代碼,還可以包含硬編碼的加密密鑰,。一些配置值是:
引導加載程序自定義消息:Hacked By
在安裝 DiskCryptor 驅(qū)動程序后重新啟動計算機之前等待的時間,;
加密卷后重新啟動計算機之前等待的時間;
引爆時間:加密開始的確切時間;
資源 2——64 位的簽名 DCDrv.sys 驅(qū)動程序,;
資源 3——32 位簽名的 DCDrv.sys 驅(qū)動程序,;
資源 4——用于安裝引導加載程序的加密 DLL;
除了配置之外,,執(zhí)行流程還可以由該工具接收到的命令行參數(shù)控制,,它可以接受0到2個參數(shù)。
如果第一個存在,,則它是加密密鑰,,如果第二個存在,則它是一個標識符,,也將與保存在惡意軟件配置中的字符串進行比較,。一個例子是字符串“113”,在DCSrv和PyDCrypt參數(shù)中都使用了它,。然而,,如前所述,標準的執(zhí)行鏈是PyDCrypt將其參數(shù)(包括加密密鑰)傳遞給DCSrv,。
完整的加密工具是基于一個強大的第三方開源工具DiskCryptor,。MosesStaff使用了該工具的幾個部分,主要是簽名驅(qū)動程序和自定義引導加載程序,。
該工具的執(zhí)行流程可以分為三個部分:驅(qū)動安裝,、卷加密和引導加載程序安裝。
安裝驅(qū)動程序
第一個操作是創(chuàng)建兩個名為 DCUMSrv 和 DCDrv 的服務(wù),,每一個都有不同的目的,。
DCUMSrv僅用于持久性機制,用于在啟動時使用最初提供的參數(shù)運行相同的可執(zhí)行文件svchos .exe,。DCDrv運行提供的過濾驅(qū)動程序DCDrv.sys,。對于安裝,它從資源2或3中提取嵌入式驅(qū)動程序(取決于它是運行在32位系統(tǒng)還是64位系統(tǒng)上),,并將其內(nèi)容寫入C: windows system32\drivers\DCDrv.sys,。然后,它以與DiskCryptor開源項目相同的方式配置注冊表參數(shù),。
用于持久性機制的服務(wù)
安裝 DCSrv.sys 過濾器驅(qū)動程序
由于驅(qū)動程序的有效簽名,,正如我們在下面看到的,DSE(驅(qū)動程序簽名強制執(zhí)行)功能不會停止其安裝,。
DCDrv.sys 有效簽名
當惡意軟件完成驅(qū)動程序的安裝后,,它會在幾分鐘后執(zhí)行一次重啟,以使驅(qū)動程序運行,。
加密卷
在第二次運行時,,惡意軟件會等待配置中給出的確切時間,,然后才會引爆其加密機制,這是有效載荷是針對每個受害者創(chuàng)建的又一個證明,。
檢查當前時間并將其與配置中提供的值進行比較的代碼
到特定時間時,,程序會遍歷所有可用驅(qū)動器,從 C: 到 Z:,,并使用多個線程同時對它們進行加密,。
如前所述,核心加密機制基于DiskCryptor驅(qū)動程序,。因此,它所要做的就是使用打包到 dc_ioctl 結(jié)構(gòu)中的正確參數(shù)啟動正確的 IOCTL 消息:
用戶模式應(yīng)用程序和內(nèi)核模式驅(qū)動程序之間有多種通信方法,,最流行的方法是使用 Windows API DeviceIoControl 發(fā)送稱為 IO 控制代碼 (IOCTL) 的特殊代碼,。
在本例中,用于加密驅(qū)動器的相關(guān)IOCTL代碼為DC_CTL_ENCRYPT_START和DC_CTL_ENCRYPT_STEP,,參數(shù)為:passw1字段中的命令行密鑰,,device字段中的迭代設(shè)備,crypt字段中的CF_AES加密模式,。
這個過程可能需要一段時間,,所以惡意軟件在使用自定義引導加載程序重新啟動之前有兩個小時的休眠時間。
安裝DiskCryptor引導裝載程序
這通常在加密過程之前完成,,但取決于配置值,,也可以等待它結(jié)束。事先覆蓋引導加載程序的動機很明顯,,因為即使加密沒有完成,,對組織的損害也是通過鎖定他們的計算機造成的。
引導加載程序安裝程序作為資源4嵌入到可執(zhí)行文件中,,并在以/.dll的形式刪除它之前進行解密,。這個DLL文件有兩個名為IsEFI和InstallLoader的導出函數(shù),它們的名稱很好地描述了它們的功能,。
惡意軟件動態(tài)加載釋放的庫并使用引導加載程序文本消息作為參數(shù)調(diào)用 InstallLoader:
加載引導加載程序安裝程序
我們還沒有發(fā)現(xiàn)引導加載程序本身引入了任何自定義惡意更改,。因此,它包含我們希望在帶有引導加載程序的卷磁盤加密軟件中看到的用于解密主卷的確切功能,。
加密方案
勒索軟件組織(如Conti,、Revil、Lockbit等)幾乎無一例外地總是確保他們的加密系統(tǒng)設(shè)計良好且無懈可擊,。他們知道一個嚴重的錯誤最終可能會讓他們損失數(shù)十萬美元的潛在收入,。不管出于什么原因,包括非經(jīng)濟動機,,缺乏使用勒索軟件的經(jīng)驗,,或者業(yè)余編碼技能,MosesStaff團隊并沒有做太多技術(shù)上的突破。
密鑰生成
MosesStaff 使用三種方法來生成加密機制使用的對稱密鑰:
作為 PyDCrypt 自動生成的命令行參數(shù),;
作為用戶提供的命令行參數(shù),;
如果配置中的某個位被打開,則密鑰在可執(zhí)行文件中被硬編碼,;
最常見的方法是運行 PyDCrypt,,并根據(jù) MD5 哈希和精心制作的鹽值為每個主機名發(fā)送專有加密密鑰。生成密鑰的代碼如下所示:
解密過程
如上所述,,簡單的基于對稱密鑰的加密通常不足以形成一個防彈的,、難以逆轉(zhuǎn)的加密方案。通過使用上面的分析,,我們確實有幾個可能反轉(zhuǎn)加密的選項,。
第一個也是最重要的選項是查看環(huán)境中是否安裝了EDR產(chǎn)品日志。一個正確設(shè)計的EDR會記錄所有的流程創(chuàng)建,,以及它們的命令行參數(shù),,這是案例中的關(guān)鍵。
使用svchost.exe參數(shù)進行解密的復制攻擊的EDR解決方案的屏幕截圖
第二種選擇是提取并逆轉(zhuǎn)最初攻擊受害者的PyDCrypt惡意軟件,。這種方法有點棘手,,因為代碼在運行完成后會被自行刪除。在PyDCrypt示例中,,我們可以提取精心制作的哈希函數(shù),,該函數(shù)為每臺計算機生成密鑰。
通過使用從這些方法中提取的密鑰,,我們可以將它們插入啟動登錄屏幕,,并解鎖計算機。通過這種方式,,我們可以恢復對操作系統(tǒng)的訪問,,但磁盤仍然是加密的,并且每次重新啟動時 DiskCryptor 引導加載程序都處于活動狀態(tài),。這可以通過創(chuàng)建一個簡單的程序來解決,,該程序向 DiskCryptor 驅(qū)動程序啟動適當?shù)?IOCTL,并最終將其從系統(tǒng)中釋放,。
總結(jié)
將網(wǎng)絡(luò)攻擊歸因于政治動機的原因很復雜,,目前,根據(jù)我們掌握的所有信息,,我們無法得出任何明確的結(jié)論,。然而,有一些工具引起了我們的注意:
攻擊中使用的工具之一 OICe.exe 在該組織開始其活動的活躍階段(加密和公開泄密)前幾個月從巴勒斯坦提交給 VT,。
攻擊者在被攻擊的服務(wù)器上留下的命令代理工具VT提交的屏幕截圖
雖然這不是一個強有力的跡象,,但它可能會泄露攻擊者的起源,;有時他們會測試公共服務(wù)(如 VT)中的工具,以確保它們足夠隱蔽,。
網(wǎng)站 moses-staff[.]se 上使用的背景和徽標 PNG 圖像文件(所有人都有可用的元數(shù)據(jù))是在域在計算機上注冊后幾天創(chuàng)建或修改的,,時區(qū)為 GMT+3 ,這是以色列和巴勒斯坦領(lǐng)土在每年這個時候的時區(qū),。
來自MosesStaff網(wǎng)站的圖像元數(shù)據(jù)示例
如上所述,,MosesStaff 有一種特定的操作方式,即利用面向公眾的服務(wù)器中的漏洞,,然后使用獨特的工具和野外操作的組合,,使目標網(wǎng)絡(luò)加密,與之前的 Pay2Key 和 BlackShadow 組織一樣,,MosesStaff 組織受政治和意識形態(tài)的驅(qū)使,,將目標對準以色列組織。