剖析Mamba-磁盘加密型勒索软件。另一个新的勒索软件已经加入文件加密的潮流中。只是这一次不是选择一些类型的文件加密,它直接用一个开源的工具DiskCryptor加密整个磁盘。
这个不是第一次出现磁盘加密类型的勒索软件。在早年,Petya勒索软件通过加密磁盘主文件表(MFT)恶意破环,使用户无权访问文件。不像之前的攻击,这个新的勒索软件完全加密整个磁盘,包括数据。除非支付勒索金否则系统完全不能用。为了匹配它的能力,他被命名为有毒的射的名字,曼巴。
本文调查了这个恶意程序的功能和技术。
0x01 DiskCryptor安装
深入到磁盘权限和加密将会非常的复杂。因此,直接写代码加密磁盘将很容易产生一个噩梦。因为这个原因,一个实用的方案是用一个第三方工具实现加密磁盘,实现简单,可靠的解密保护。幸运又不幸的是,有一个叫DiskCryptor的工具,这个工具提供了勒索软件需要的功能。它是一种偷懒的方案,但是很聪明。
安装的组件是该工具的gui版本。这个工具号称多种加密算法实现多层保护。
Image may be NSFW.
Clik here to view.

图1 DiskCryptor主界面和支持的加密算法
主程序没有参数(一个密码)不能完全执行。这个需要另一个组件来生成密码,但是我们还没有发现。因此在本文中用了一个假的密码测试。
一旦合适的密码被提供,Mamba通过安装DiskCryptor(安装在C:\DC22\)组件能很好的兼容32位和64位版本的环境。
Image may be NSFW.
Clik here to view.

图2 安装组件
为了持续性,可执行程被安装成一个“DefragmentService”的服务,password为参数。
Image may be NSFW.
Clik here to view.

图3 Mamba用一个测试密码把自己安装成一个服务
0x02 在映射的网络磁盘上加密文件
在全盘加密前,它也会加密所有映射的网络磁盘,进一步加大了破环程度。
显然,在比较老版本的系统上用“net use”命令枚举映射的网络磁盘。
Image may be NSFW.
Clik here to view.

图4 检查系统版本
对于新版的操作系统(Vista及之后的),有UAC特性。这个恶意程序通过计划任务运行“net use”命令。这样就能在管理员和普通用户上下文下能更精确的映射的网络磁盘。为了访问密码保护的网络磁盘,可以使用一个免费工具(Netpass)。这个工具用来恢复存储在系统中网络密码。磁盘和网络密码列表被存储在“netuse.txt”和“netpass.txt”。
Image may be NSFW.
Clik here to view.

图5 在新老系统中执行“net use”
Image may be NSFW.
Clik here to view.

图6 以管理员和计划任务运行“net use”
Image may be NSFW.
Clik here to view.

图7 Netpass GUI模式
用之前创建的管理员账户提升权限执行mount.exe组件加密文件。这时,它用一个包含一系列异或和左移操作的自定义算法。提供给主程序的密钥是password的一部分。密钥的MD5哈希值在将它转化为字符串之前用微软的CryptoAPI来获得。为了增加复杂性,只有字符串的一半被用来加密。
Image may be NSFW.
Clik here to view.

图8 提权执行Mount.exe
Image may be NSFW.
Clik here to view.

图9MD5 string
Image may be NSFW.
Clik here to view.

图10文件加密过程
Image may be NSFW.
Clik here to view.

图11在映射的网络磁盘上加密文件