过去几天,我们的反勒索软件模块检测到一种新的恶意软件变种——KeyPass勒索软件。安全社区的其他人员也注意到这种勒索软件开始在8月份积极进行传播。
来自MalwareHunter团队的提醒
传播模型
根据我们获取到的信息,这种恶意软件通过假冒的安装程序进行传播,之后再下载勒索软件模块。
描述
这种木马样本是利用C++编写,并使用MS Visual Studio编译的。它是使用库MFC、Boost和Crypto ++开发的。 PE头包含最近的编译日期。
包含编译日期的PE头
当在受害者的计算机上启动后,该木马会将自身的可执行文件拷贝到%LocalAppData%并且启动它,之后从原始位置删除自身。
之后,它会生成自己进程的多个副本,并将加密密钥和受害者ID作为命令行参数传递。
命令行参数
KeyPass会从受感染计算机枚举本地磁盘和网络分享,查找所有文件,不管其扩展名如何。它会跳过位于多个目录中的文件,这些目录的路径被硬编码到样本中。
排除的文件路径列表
每个被加密的文件都会获得一个附加的扩展名:“.KEYPASS”和名为“”!!!KEYPASS_DECRYPTION_INFO!!!.txt””的勒索信息,这些文件会被保存在每个被处理过的目录中。
勒索信息
加密机制
木马的开发人员实施了一个非常简单的方案。 恶意软件在CFB模式下使用对称算法AES-256,对所有文件使用零IV和相同的32字节密钥。木马在每个文件的开头加密最多0x500000字节(~5 MB)的数据
实施数据加密的代码部分
启动后不久,KeyPass会连接其命令和控制(C&C)服务器,接收针对每个受害者的加密密匙和感染ID。数据以JSON的形式通过未加密的HTTP协议进行传输。
如果无法访问命令和控制服务器(例如,如果受感染计算机没有连接互联网或者服务器宕机),木马会使用硬编码密钥和ID,这意味着如果遇到离线,对受害者的文件进行加密或解密都不重要。
图形用户界面
从我们的角度来看,KeyPass木马最有趣的功能是能够进行“手动控制“。该木马默认包含一个隐藏的形式,但是在键盘上按下特定的键后会显示出来。此功能可能表明该木马背后的网络罪犯打算使用它进行手动攻击。
该木马的图形用户界面
这个界面允许攻击者修改一下参数,定制解密过程:
- 加密密匙
- 勒索信息名称
- 勒索信息正文
- 受害者ID
- 被加密文件的扩展名
- 排除加密的路径列表
默认排除的加密路径
通过按键显示图形用户界面的过程的虚拟程序代码
地理分布
感染迹象
901d893f665c6f9741aa940e5f275952 – Trojan-Ransom.Win32.Encoder.n
hxxp://cosonar.mcdir.ru/get.php