前记

在过去的几天里,我们软件的反勒索模块一直在检测恶意软件的新变种:KeyPass勒索软件。安全社区的其他人也注意到这个勒索软件在8月份开始肆虐传播:

 

传播方式

根据我们搜集到的信息,分析出该恶意软件通过下载软件勒索模块的虚假安装程序进行传播。

 

描述

木马样例使用C++编写,并在MS Visual Studio中编译。它是使用MFC库,Boost和Crypto ++开发的。其PE头中包含最近的编译日期。

当在受害者的计算机上启动时,木马会将其可执行文件复制到%LocalAppData%并启动它。然后它将自己在原始位置删除。
之后,它会生成自己进程的多个副本,并将加密密钥和受害者ID作为命令行中的参数进行传递。
KeyPass可从受感染的计算机本地驱动器和网络共享进行枚举,并搜索所有文件,无论其扩展名是什么。它会跳过位于多个目录中的文件,这些目录的路径将被硬编码到样例中。
每个加密文件都会被添加一个额外的扩展名:.KEYPASS,同时名为!!!KEYPASS_DECRYPTION_INFO!!!.txt的赎金票据将会被保存在每一个目录中

 

加密方案

该木马的开发人员使用了一个非常简单的方案:恶意软件在CFB模式下使用对称算法AES-256,对所有文件使用0 IV和相同的32字节密钥。木马在每个文件的开头加密最多0x500000字节(5 MB)的数据。
启动后不久,KeyPass连接到其命令控制服务器(C&C),并接收当前受害者的加密密钥和感染ID。数据以JSON的形式通过纯HTTP传输。
如果C&C无法访问(例如,如果受感染的计算机未连接到互联网或服务器已关闭),则木马使用硬编码密钥和ID,这意味着在离线加密的情况下,受害者文件的解密将变得没有意义。

 

GUI

从我们的角度来看,KeyPass木马最有趣的功能是能够采用“手动控制”。木马包含一个默认隐藏的表单,在按下键盘上的特殊按钮后可以显示该表单。此功能可能表明木马背后的犯罪分子打算在必要时手动操作它。

此表单允许攻击者通过更改以下参数来自定义加密过程:

加密密钥
赎金票据的名称
赎金票据文本内容
受害者的ID
加密文件的扩展名
要从加密中排除的路径列表


 

受感染位置

文章原文链接:https://www.anquanke.com/post/id/156296