如何进行Rapid勒索病毒分析与检测

如何进行Rapid勒索病毒分析与检测
最新回答
此姻花弥散

2021-07-10 06:57:04

Rapid勒索病毒的分析与检测可从以下方面展开

一、行为特征分析

Rapid勒索病毒运行时会创建多线程扫描文件系统,对已有文件和新创建文件进行加密。被加密文件文件名添加“.rapid”扩展名,文件大小增加0x4D0字节,同时会在加密文件夹中创建“How Recovery Files.txt”勒索提示文件,包含联系付款的电子邮件;用户重启电脑还会弹出内容相同的“recovery.txt”文件。

二、检测工具与逆向分析

  1. 工具检测:使用兰眼(LanyEye)下一代威胁感知系统对Rapid程序进行检测,该程序会被标记为高危。
  2. 逆向分析

    系统操作:程序调用ShellExecuteA执行命令,清除Windows卷影拷贝,防止受害者使用其恢复文件;禁用系统修复和自动修改功能,降低系统崩溃概率;终止oracle.exe、sqlite.exe、sql.exe进程,释放内存并解除文件占用。

    注册表操作:添加开机启动项,在注册表HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun下新建Encrypter和userinfo项,Encrypter项值为“%AppDataRomainginfo.exe”(勒索病毒程序自身拷贝),userinfo项值为“%AppDataRomaingrecovery.txt”(勒索信息文件)。

    文件选取规则:为保证系统正常运行,不选取文件夹名称为“Windows”、“intel”、“nvidia”、“ProgramData”和“temp”下的文件;不通过后缀名过滤文件,而是判断选取的文件是否为“How Recovery Files.txt”、“info.exe”、“recovery.txt”,若是则跳过,其余全加密。

三、加密过程剖析

  1. 密钥生成与管理:创建PROV_RSA_FULL类型CSP容器,导入硬编码的RSA公钥(RSA1);查看是否存在注册表项“local_public_key”,不存在则创建,生成随机RSA密钥对(RSA2),用RSA1公钥加密RSA2私钥,将相关数据写入注册表项;导出RSA2公钥数据直接写入注册表。
  2. 文件加密判断:获取文件大小,小于0x4D0字节或文件尾部0x20字节数据不是加密标志则进入加密流程。
  3. 加密实施:生成随机AES密钥,用RSA2公钥加密AES密钥相关数据;读取文件数据,用AES密钥加密,加密前在明文尾部填充0x10个字节的0x00;向文件覆写加密后数据,写入特定结构的数据,最后在文件名后添加“.rapid”扩展名并显示勒索信息。