BlackMatter 勒索软件技术分析
概述
朋友们好!一位客户向我们提出了与以下相关的事件 黑物质。该问题不断重复出现,导致客户要求进行安全审核。在本文中,我们提供了技术分析 BlackMatter 勒索软件,重点介绍用于感染和加密目标系统的方法、库和技术。 BlackMatter 是一个勒索软件家族,首次在 2021 年 7 月。它被广泛描述为可能的品牌重塑 黑暗面,一个位于东欧的俄语勒索软件即服务 (RaaS) 组织。 BlackMatter 勒索软件是用 C++ 并编译为 Win32 平台。与其他勒索软件变体一样,它会加密受害者的文件并要求支付赎金以换取解密密钥。 BlackMatter 使用以下组合 symmetric and asymmetric 加密:
- 它生成一个随机数 256-bit 加密受害者数据的密钥。
- 然后使用该密钥加密 RSA 公钥 每个受害者都是独一无二的。
- 只有持有相应私钥的攻击者才能解密数据。 BlackMatter 的一个值得注意的方面是它对 莎莎20 对称加密算法。
分析
为了分析 BlackMatter 勒索软件,我们使用了:
- CFF 浏览器: https://ntcore.com/?page\_id=388
- IDA: https://hex-rays.com/ida-pro/
- x64dbg: https://x64dbg.com/
- DIE(轻松检测): https://github.com/horsicq/Detect-It-Easy
- 流程黑客: https://github.com/processhackerHow 使用了每个工具:
- CFF 浏览器 用于文件分析并从二进制文件中提取必要的信息。
- IDA 用于反汇编和分析函数、变量和字符串。
- x64dbg 用于在调试二进制文件时观察运行时行为。
- DIE 用于检测样品是否包装。
- 流程黑客 用于在分析过程中监视进程和网络活动。
让我们探讨一下 BlackMatter 的工作原理
在开始主程序之前,BlackMatter 会进行准备工作。如果所有检查都成功,则开始加密阶段。

库加载和 API 解析
BlackMatter 加载库并动态解析 API 地址:
从加载的模块列表中可以看到勒索软件依赖的模块 bcrypt and ncrypt 密码学模块。

API 哈希
BlackMatter 用途 API 哈希 从导入地址表(IAT)中隐藏可疑的Windows APIs,增加静态分析的难度。参考: https://www.ired.team/offensive-security/defense-evasion/windows-api-hashing-in-malware
在解密 API 哈希之前:
解密 API 哈希后:

打包和加密部分
BlackMatter 将部分数据保存在打包和加密的部分中,然后在启动时对其进行解包和解密,从而使静态分析变得复杂。解包和解码函数:
拆箱流程:

语言检查
该勒索软件避免在某些地区执行,包括前苏联国家和叙利亚,这与该勒索软件归属于俄语组织的情况相符。语言检查:
不支持的语言表:

管理员检查
BlackMatter 用途 SHTestTokenMembership 检查启动用户是否是该组织的成员 管理员 组。检查令牌:

操作系统版本检查
接下来,恶意软件检查操作系统版本。检查操作系统版本:

权限升级尝试和伪装
如果不满足条件,恶意软件会尝试获取管理权限。该示例使用基于 COM 的高程技术,并将自身伪装为 DllHost.exe via LdrEnumerateModulesCallback。这种重命名可能会让调试器误以为加载了不同的二进制文件,从而可能使断点无效。尝试获取管理员权限:
COM 接口和 COM Elevation Moniker 用法:
伪装成 DllHost.exe via LdrEnumerateModulesCallback:
重命名行为的概念证明:

扩展生成(基于机器 GUID)
该恶意软件根据存储在以下位置的计算机 GUID 生成文件扩展名:
HKLM\Software\Microsoft\Cryptography在我们的例子中,生成的扩展是:KmyLfX2Lb
它还生成一个自述文件扩展。在我们的测试机器上,它看起来像:KmyLfX2Lb.README.txt
特权启用
该恶意软件在继续之前会启用一组权限。权限列表:
SeBackupPrivilegeSeCreatePagefilePrivilegeSeCreateSymbolicLinkPrivilegeSeDebugPrivilegeSeDelegateSessionUserImpersonatePrivilegeSeIncreaseBasePriorityPrivilegeSeIncreaseQuotaPrivilegeSeIncreaseWorkingSetPrivilegeSeLoadDriverPrivilegeSeManageVolumePrivilegeSeProfileSingleProcessPrivilegeSeRemoteShutdownPrivilegeSeRestorePrivilegeSeSecurityPrivilegeSeShutdownPrivilegeSeSystemEnvironmentPrivilegeSeSystemProfilePrivilegeSeSystemtimePrivilegeSeTakeOwnershipPrivilegeSeTimeZonePrivilegeSeUndockPrivilege启用权限:
处理优先级更改
接下来,加密器通过以下方式提高当前进程的优先级: NtSetInformationProcess,设置高 CPU 优先级和中 I/O 优先级以提高性能。提高进程优先级:

代码注入行为
如果恶意软件缺乏足够的权限,它会尝试将代码注入 svchost.exe 作为其特权工作流程的一部分。注射前准备:
注入 svchost.exe:

禁用睡眠和休眠
BlackMatter 套装 ES_CONTINUOUS | ES_SYSTEM_REQUIRED 以防止执行期间睡眠和休眠。改变线程执行状态:

驱动器枚举
该恶意软件收集驱动器信息并将其存储在 JSON 格式。

服务和进程终止
该恶意软件会停止并删除黑名单上的服务。该列表与 REvil 勒索软件使用的列表匹配,包括:
Vss SqlSvc$ Memtas Mepocs Sophos Veeam Backup GxVss GxBlr GxFWD GxCVD GxCIMgr
停止并删除黑名单服务:
它还会停止黑名单上的进程。该列表与 REvil 类似,包括以下示例:
Sql Oracle Ocssd Dbsnmp Synctime Agntsvc Isqlplussvc Xfssvccon Mydesktopservice Ocautoupds Encsvc Firefox Tbirdconfig Excel Outlook Powerpoint Steam Winword Notepad 和其他人。停止黑名单中的进程:

加密
BlackMatter 用途 莎莎20 加密文件:image
检测
为了抵御这种威胁的端点保护,我们使用了:
- A 雅拉规则 检测 BlackMatter 勒索软件
- 检测 BlackMatter 活动的行为解决方案 基于行为的检测可以帮助识别加密和打包的恶意软件。有用的行为信号包括:
- 挂钩进程终止和服务停止 APIs
- 注册表活动监控
- 利用执行模式
推荐的组织防御
的 SToFU团队 推荐:
- 安全审核:定期审核公司网络。
- 备份:保持频繁的备份并将其离线或异地存储。
- 补丁管理:保持操作系统和软件最新。
- 反恶意软件:部署端点保护以检测和防止感染。
- 访问控制:限制对敏感系统和数据的访问。
- 安全意识:培训员工发现网络钓鱼和可疑活动。
- 事件响应计划:准备并演练勒索软件响应计划。
- 网络安全合作伙伴:与熟练的合作伙伴合作进行评估、调查和及时预防。
合作
朋友们,如需逆向工程、恶意软件分析、安全审计、企业网络安全方面的合作,请联系我们:
- midgard@stofu.io 我们真诚地高兴合作,欢迎新的合作伙伴!