当前位置:网站首页 > 黑客培训 > 正文

新型勒索软件PYSA浅析

freebuffreebuf 2021-09-29 325 0

本文来源:聚铭网络

什么是勒索软件PYSA

PYSA勒索软件是Mespinoza勒索软件的变种。PYSA代表“Protect Your System Amigo”,于2019年12月被首次命名,也就是Mespinoza被发现两个月后。最初被加密的文件被Mespinoza使用 .locked作为扩展名,然后转而使用 .pysa作为后缀,目前此勒索软件可能会交替使用PYSA和Mespinoza 这两个名称来命名被加密的文件。

PYSA与许多已知的勒索软件系列一样,被归类为勒索软件即服务(RaaS)工具。这意味着其开发人员已将这种现成的勒索软件出租给犯罪组织,这些犯罪组织可能在技术上不够精通,无法制作自己的勒索软件。PYSA客户可以根据RaaS提供的选项对其进行自定义,并根据自己的喜好进行部署。PYSA能够在加密要勒索的文件之前从受害者那里窃取数据。

根据某些威胁情报提供方的说法,PYSA/Mespinoza是2级RaaS运营商,因为它在地下赢得了较高声誉。执行此操作的操作员或工作人员有一个页面(称为“泄漏列表”),他们在其中点名并羞辱决定不支付赎金的受害者。受害者与附带的附件一起列出,其中包含威胁行为者从中窃取的文件。

image.png

图1 PYSA数据泄露站点的主页

PYSA特点

勒索软件PYSA的主要特点包括:

人为操作:PYSA是一种人为操作的勒索软件,不具备自我传播能力。作为全面攻击行动的一部分,威胁行为者手动部署PYSA勒索软件。PYSA勒索软件运营商通常通过泄露凭据或通过网络钓鱼电子邮件获得对目标系统的初始访问权限。在部署勒索软件之前,恶意行为者使用公开可用和/或开源工具进行凭证盗窃、隐蔽、特权升级、横向移动等;

混合加密方法:PYSA勒索软件以C++ 编程语言实现,并使用开源CryptoPP C++库进行数据加密。该勒索软件通过结合使用高级加密标准密码块链(AES-CBC)和RSA加密算法来加密数据。这是为了最大限度地提高加密性能和安全性;

双重勒索:PYSA勒索软件运营商使用双重勒索策略——如果受害者拒绝支付数据解密费用,恶意行为者就会威胁泄露数据或出售数据以获取利润。

image.png

图2 PYSA数据泄露站点的详细内容

初步分析

PYSA勒索软件进程首先将自身与控制台分离,从而关闭控制台。这允许勒索软件在控制台不作为勒索软件运行的指示器的情况下运行。PYSA勒索软件然后创建一个名为Pysa的互斥对象。如果此互斥对象已存在,勒索软件将终止。这是为了确保一次只有一个 PYSA 勒索软件实例运行:

image.png

图3 PYSA创建互斥对象

然后,PYSA勒索软件枚举带有连接到受感染系统的固定媒体的驱动器。这些是Windows API函数GetDriveTypeW为其返回0x3 ( DRIVE_FIXED ) 的驱动器,例如硬盘。对于每个具有固定媒体的驱动器,PYSA勒索软件都会创建一个进程线程,勒索软件在该线程中执行文件枚举和加密。

PYSA 勒索软件分两个阶段执行此操作:

在第一阶段,它对列入加密白名单的文件进行加密,这些文件具有硬编码在实施勒索软件的文件中的一个文件扩展名。

在第二阶段,PYSA加密存储在驱动器上的其余文件,并在驱动器上的每个目录中存储一个README.README文件。该README.README文件包含了勒索信。赎金记录包含以下内容:

文本通知受害者恶意行为者已从受感染的系统中窃取数据,如果不付款,他们将向公众公开这些数据或出售数据(这是一种双重勒索策略)。

指向数据泄露网站的链接。

用于与攻击者通信的电子邮件地址列表。

在这两个阶段中,PYSA 勒索软件加密的对象有如下特点:

仅加密大小大于 1 KB 的文件。

不加密列入加密黑名单的文件,包括:

系统关键文件,例如pagefile.sys,Windows启动管理器和存储在系统关键目录中的文件,例如,Windows、Boot和System Volume Information;

具有以下文件扩展名的文件:.exe,.dll,.SYS,.README,或.pysa。

PYSA不会加密上述文件,因为加密系统关键文件和具有可执行文件(.exe、.dll和.sys)典型文件扩展名的文件会使受感染的系统无法启动和无法使用。

在加密文件之前,PYSA勒索软件首先通过将文件扩展名.pysa附加到文件名来重命名文件,例如,test.txt变为test.txt.pysa。PYSA然后通过应用混合加密方法来加密文件。这种方法结合了AES-CBC和RSA加密算法的使用。这是为了最大限度地提高加密性能和安全性。

PYSA勒索软件首先使用对称加密算法AES-CBC对文件进行加密。AES-CBC在设计上比RSA加密算法性能更高,但安全性更低。该算法依赖于对称加密密钥和用于加密安全的初始化向量 (Initial Vector,简写为IV)。为了弥补AES-CBC的这一缺点,勒索软件随后使用RSA加密算法对AES-CBC对称密钥和IV进行加密。PYSA勒索软件使用CryptoPP C++库进行加密。

对于每个被加密的文件,PYSA首先生成两个16字节的随机数组。第一个字节数组是AES-CBC对称加密密钥,第二个是初始化向量 (IV)。PYSA 然后使用4096位RSA公钥加密AES-CBC 密钥和初始化向量。此公钥是ASN.1编码的,并以DER格式存储在PYSA勒索软件的文件中:

image.png

图4 PYSA用于加密的公钥

PYSA勒索软件然后从文件的开头开始加密文件的100个相同大小的数据块。为了加密数据块,勒索软件使用AES-CBC加密算法和之前生成的AES-CBC密钥和IV。勒索软件通过以下公式来计来计算用于加密的单个数据块的大小(以字节为单位):

image.png

其中 ⌊ ⌋ 是floor函数,filesize是文件的大小(以字节为单位)。

在对所有指定用于加密的文件进行加密后,PYSA 勒索软件会将值PYSA存储在注册表项HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\legalnoticecaption中,并将赎金说明存储在注册表项HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\legalnoticetext。

这会在系统启动时向用户显示赎金通知,有效地引起了用户的注意。

PYSA勒索软件随后释放互斥锁Pysa并将Windows批处理脚本代码写入名为update.bat的文件中。PYSA首先将此文件放在勒索软件在其上下文中执行的用户的临时目录中(例如C:\Users\user\AppData\Local\Temp),然后执行它。update.bat会删除实现PYSA勒索软件的文件以及存储该文件的目录,update.bat也会删除自己。

image.png

图5 文件数据块的未加密和加密形式

如何防范

我们建议使用如下方式对勒索软件PYSA进行防范:

1. 确保及时修补您的系统,以最大程度地降低因漏洞利用而感染勒索软件的风险;

2. 使用安全密码,定期修改密码,并在可能的情况下使用多因素身份验证;

3. 禁用未使用的RDP服务,正确保护已使用的RDP服务,并定期监控RDP日志数据以防止暴力尝试和其他不规则活动;

4. 定期将文件备份到安全的远程位置并实施数据恢复计划。定期数据备份确保您可以在勒索软件攻击后恢复数据;

5. 安全地处理源自外部来源的电子邮件。这包括禁用超链接和调查电子邮件的内容以识别网络钓鱼企图。

转载请注明来自网盾网络安全培训,本文标题:《新型勒索软件PYSA浅析》

标签:勒索软件勒索软件分析双重勒索PYSA

关于我

欢迎关注微信公众号

关于我们

网络安全培训,黑客培训,渗透培训,ctf,攻防

标签列表