请使用手机微信扫码安全登录

切换账号密码登录

绑定手机号

应国家法规对于账号实名的要求,请您在进行下一步操作前,需要先完成手机绑定 (若绑定失败,请重新登录绑定)。了解更多

不绑定绑定手机号

360官网 | 360商城

推荐论坛版块360粉丝商城360用户活动常见问题
本帖最后由 Potato 于 2020-4-1 19:08 编辑

相关阅读:Shvia勒索病毒家族详情

一、        样本信息



文件名:frost.exe
MD5:bf9aa5309e3c0e82d4075c76df10ac68
SHA1:2f3869e895bda960a7585c13cb8178fb39f9d257
二、        代码分析


病毒由C#语言进行编译,且通过替换图标的方式伪装成pdf文件,诱使用户点击。与多数勒索病毒不同的是,该病毒在执行过程中并没有采用非对称加密算法,而是直接将加密文件的对称加密密钥上传至远程服务器。
1.        信息上传
病毒通过访问URI:hxxp://ipv4bot.whatismyipaddress.com获取本地IP,之后通过GET请求方式上传本地IP至远程服务器。



接着生成32字节随机值,对其进行Base64编码,编码值将被用于文件加密密钥的生成。然后获取机器名、C盘磁盘序列号,将以上信息通过POST请求发送至服务器。



如果机器未联网,之后在下载远程服务器上的扩展名文件资源write3.php时,会发生阻塞,最终发生异常,病毒退出执行。

2.        删除卷影&结束指定进程

该部分操作在文件加密前和所有文件加密完成后分别进行一次。



结束数据库服务、Office编辑工具、作图工具等相关的目标进程,以免在加密时出现文件占用,从而导致加密失败。
  • xfssvccon
  • wordpad
  • winword
  • visio
  • thunderbird
  • thebat64
  • thebat
  • tbirdconfig
  • synctime
  • sqlwriter
  • sqlservr
  • sqlbrowser
  • sqlagent
  • sqbcoreservice
  • powerpnt
  • postgres
  • outlook
  • oracle
  • onenote
  • ocssd
  • ocomm
  • ocautoupds
  • mysqld-opt
  • mysqld-nt
  • mysqld
  • mydesktopservice
  • mydesktopqos
  • mspub
  • msmdsrv
  • msftesql
  • msaccess
  • infopath
  • firefoxconfig
  • excel
  • dbsnmp
  • dbeng50



3.        搜索文件进行加密

获取本地所有磁盘,采用并行方式对每个磁盘进行加密。


搜索文件时,跳过包含以下字符串的路径,以免加密相关目录后,导致系统和部分浏览器程序无法正常使用。



不对以下文件进行加密,HOW_TO_RECOVER_FILES.txt为勒索信息提示文件,其余为系统运行相关文件。
  • thumbs.db
  • ntuser.dat.log
  • ntuser.dat
  • iconcache.db
  • HOW_TO_RECOVER_FILES.txt
  • desktop.ini
  • bootsect.bak
  • boot.ini
  • autorun.inf


病毒通过访问并下载在线的资源文件,获取大量的扩展名字符串,总共2848种扩展名类型。这2848种扩展名即为加密目标文件类型(无扩展名文件同样被加密),其余文件不被加密。具体后缀请参考附件:


目标扩展名类型.rar (6.23 KB)



4.        文件加密方式

文件加密算法采用对称加密算法AES256,加密模式CBC。

病毒加密文件分两次进行,首次加密文件首部4KB内容,第二次则是全部加密。两次加密采用同样的加密算法和加密模式。

首先是第一次加密,病毒通过判断文件长度是否大于4112字节而选择不同加密方式。

长度大于等于4112字节的文件,病毒先读取4KB偏移处的16字节,将其写入被加密文件尾部;接着再读取首部4KB文件,加密后写回文件首部。加密密钥:将信息上传阶段产生的32随机字节的Base64编码字符串传入内容加密函数,用于生成文件加密密钥。

长度小于4112字节的文件,病毒则将其全部加密,加密后写回原文件。加密密钥:计算信息上传阶段Base64编码字符串的SHA256摘要值,计算结果传入内容加密函数,用于生成文件加密密钥。



文件初次加密完成后,为原文件添加扩展名”.gоod”(扩展名中第2个字母’о’是Unicode编码的西里尔文字母,而非通常认知中的拉丁字母’o’)。

对所有文件完成初次加密并释放勒索信息文件到被加密目录后,病毒将释放info.hta文件并弹出。

完成上述操作后,病毒开始对所有”.gоod”后缀的文件进行第二次加密。首先读取文件全部内容进行加密,加密结果写回原文件,之后将文件后缀名由携带西里尔文字母的”.gоod”修改为ascii字符串”.good”。加密密钥:计算信息上传阶段Base64编码字符串的SHA256摘要值,计算结果传入内容加密函数,用于生成文件加密密钥。



两次加密阶段,AES256加密密钥产生方式:将传入的字节数组以及字节串”\x61\x62\x21\x39\x50\x48\x16\x89”分别作为password以及salt参数值,迭代1000次后,之后从中获取32字节密钥值Key和CBC模式中16字节初始向量值IV。



以大于等于4112B的文件为例,文件加密流程以及文件加密后结构如下图:



5.        勒索信息提示文件

病毒在所有被加密目录下释放一个勒索信息提示文件HOW_TO_RECOVER_FILES.txt。文件中”personal identifier”为C盘磁盘序列号。

黑客联系邮箱:meconsult@protonmail.com




在所有文件初次加密完成后,病毒会在C:\\Windows\\\\System32下创建文件info.hta,使用mshta.exe打开。并为该文件设置开机自启动,弹出以提醒用户数据被加密。





6.        自我删除

进程执行的最后,为C盘根目录下勒索文件HOW_TO_RECOVER_FILES.txt设置自启动项,开机弹出以提醒用户。

释放deleteMyProgram.bat,执行脚本,删除病毒执行文件以及脚本自身。





共 2 个关于Shiva勒索病毒样本分析的回复 最后回复于 2020-4-2 13:15

评论

直达楼层

您需要登录后才可以回帖 登录 | 注册

本版积分规则

360fans_13413323 产品答疑师

粉丝:9 关注:0 积分:11788

精华:2 金币:12701 经验:7281

最后登录时间:2025-2-27

私信 加好友

最新活动

2025年Q4季度360各产品满意度获奖结果公示

排行榜

热度排行 查看排行
本月
    本月

      扫码添加360客服号,涨知识的同时还有超多福利等你哦

      快速回复 返回顶部 返回列表