一个都不放过!Zenis病毒诠释勒索加密最强等级

近期,360安全中心监测到一款名为“Zenis”的勒索病毒,其命名源自病毒作者的名字。与其他加密常见文件的勒索病毒不同,该病毒运行后,会对设备中超过200种格式的文件进行加密,另外非系统盘符下的所有格式文件也都将被锁,就连exe可执行程序都不会放过。同时,病毒还会删除系统中的备份文件,以避免中招用户恢复重要数据,可谓杀伤力惊人。

以下是对该病毒的详细分析。

病毒初始化工作

首先,病毒在执行时会先判断执行条件:

  • 判断程序文件名是否为exe
  • 判断注册表的HKCU\SOFTWARE\ZenisService项中,是否存在Active值。

当文件名不为iis_agent32.exe或者注册表键值已经存在则直接退出不进行加密操作:

一个都不放过!Zenis病毒诠释勒索加密最强等级 一个都不放过!Zenis病毒诠释勒索加密最强等级

执行条件满足后,会执行以下命令来删除卷影副本、禁用启动修复和清除系统事件日志(一般通过3389入侵会删除事件日志),同时会检测并结束掉以下进程:

一个都不放过!Zenis病毒诠释勒索加密最强等级

删除卷影副本、禁用启动修复和清除系统事件日志及结束部分进程相关代码:

一个都不放过!Zenis病毒诠释勒索加密最强等级

文件加密部分

Zenis采用的加密手段相对比较传统,是用RSA 1024 + RC4的方式对文件进行加密。即,病毒在每个用户的机器中会生成一对RSA 1024 Session Key,而对每一个文件会生成一个RC4的会话密钥。

对于在用户本地生成的RSA 1024的解密私钥,病毒会使用代码中已经内置好的另一个RSA公钥进行加密(该公钥所对应的私钥在病毒作者手中,未放出)。而生成的RSA 1024的加密公钥,则用于对每个文件生成的RC4 Key进行加密。

加密的文件格式内置在病毒程序中,共204种。另外值得一提的是:即便文件扩展名不在此列表中也并不意味着安全——因为病毒会对非系统盘符下的所有文件进行加密(备份文件则删除)。

加密流程如下图:

一个都不放过!Zenis病毒诠释勒索加密最强等级

使用的密钥概述:

一个都不放过!Zenis病毒诠释勒索加密最强等级

首先,病毒会生成一对1024位的RSA_Key——用于加密的公钥SPUBKEY和用于解密的私钥SPIVKEY。并且用随机生成的RC4密钥USERFLGKEY加密新生成的RSA 1024解密私钥SPIVKEY,然后再用内置的RSA 2048加密公钥RPUBKEY加密这个RC4密钥USERFLGKEY。最终将生成的字符串数据会替换掉勒索信息中的%ENCRYPTED%字段,以备解密时使用:

相关加密代码如下:

一个都不放过!Zenis病毒诠释勒索加密最强等级 一个都不放过!Zenis病毒诠释勒索加密最强等级

病毒内置的RSA 2048加密公钥如下(解密私钥在作者手中):

一个都不放过!Zenis病毒诠释勒索加密最强等级

逐一文件加密流程相关代码:

一个都不放过!Zenis病毒诠释勒索加密最强等级 一个都不放过!Zenis病毒诠释勒索加密最强等级

病毒程序会将密钥信息写入加密文件尾部:

一个都不放过!Zenis病毒诠释勒索加密最强等级

RC4的相关加密代码如下:

一个都不放过!Zenis病毒诠释勒索加密最强等级

加密的文件扩展名如下表所示:

一个都不放过!Zenis病毒诠释勒索加密最强等级

加密完成后,文件的文件名也会被修改为“Zenis-[2个随机字符].[12个随机字符]”的格式:

一个都不放过!Zenis病毒诠释勒索加密最强等级

例如361test.txt被加密后会被改成了:Zenis-EO.V1OqyzpYfV5z

一个都不放过!Zenis病毒诠释勒索加密最强等级

而当病毒遍历文件时,一旦发现文件的扩展名符合备份文件的特点,则不会对其进行加密,而是用随即内容覆盖写入文件三次,在删除该备份文件。这是为了让中招者很难再从备份中恢复文件,要删除的备份文件扩展名列表如下:

一个都不放过!Zenis病毒诠释勒索加密最强等级

相关代码如下:

一个都不放过!Zenis病毒诠释勒索加密最强等级 一个都不放过!Zenis病毒诠释勒索加密最强等级

此外,病毒还会排除系统及一些杀软的目录,对这些目录中的文件不会进行加密操作:

一个都不放过!Zenis病毒诠释勒索加密最强等级

加密所用的内置RSA公钥以及生成勒索提示信息”Zenis-Instructions.html”,包含说明以及与勒索软件作者联系的邮箱地址相关代码:

一个都不放过!Zenis病毒诠释勒索加密最强等级

病毒生成的勒索页面中包含一个隐藏的Base64编码的字符串,该字符串实际就是前文所述——经双重加密过的解密私钥。而想要解密字符串拿到解密私钥,则只能使用病毒作者手中的私钥。而后续勒索成功后,病毒作者(若守信)也是通过该信息向中招用户下发对应的解密程序或密钥:

一个都不放过!Zenis病毒诠释勒索加密最强等级

一个都不放过!Zenis病毒诠释勒索加密最强等级

360反病毒专家尝试与病毒作者邮件进行联系:作者在成功解密了一个文件后以证明自己的解密能力后,要求将0.2018个比特币(本文发表时约合13000元人民币)转入该钱包地址:17o83ughmzkeMKMsLz4bHRmf75UrjwLpKf

一个都不放过!Zenis病毒诠释勒索加密最强等级 一个都不放过!Zenis病毒诠释勒索加密最强等级

结语

由于Zenis勒索病毒加密格式多样,且会覆盖多次并删除备份相关的文件,一些PE格式的文件及一些常用软件的数据文件被加密或被删除后可能会出现无法正常运行的情况。故相较普通勒索病毒对系统更具破坏性,加之该病毒可能是通过入侵远程桌面弱口令攻入服务进行投毒,因此建议服务器用户:

1、修改为较强的密码;

2、修改默认的3389端口;

3、服务器打最新的补丁;

4、启用网络身份验证NLA;

5、安装安全软件进行防护,360安全卫士已国内率先对该勒索病毒进行查杀,同时,360还可实现对各类勒索病毒的全面防御。

原创文章,作者:360安全,如若转载,请注明出处:http://www.mottoin.com/109363.html

发表评论

登录后才能评论

联系我们

021-62666911

在线咨询:点击这里给我发消息

邮件:root@mottoin.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code