就像最初由BleepingComputer报道的那样,新的GandCrab v4.0在几天前被发现正在将寻找破解软件的用户作为其攻击目标。恶意页面目前正被注入到合法的网站中,以便将不知情的用户引导至GandCrab恶意软件。
自GandCrab再上一次经历重大更新以来,已有两个多月的时间了。虽然这个最新版本在代码结构方面进行了改进,但其主要目的实际上仍是相同的。虽然一些较旧的功能已经被删除,但大多数基本的功能仍然存在。引人注意是,在之前更新中添加的壁纸更改功能已经不再执行,然而最大的变化还是从使用RSA-2048算法切换到了使用速率更高的流密码算法salsa20来加密数据,这也是Petya勒索软件在过去使用过的。此外,在加密受害者文件之前,它已经放弃了与C2服务器的连接,这意味着它现在还可以加密未连接到互联网的用户。
被攻陷的网站将服务于GandCrab v4.0
据报道,这个恶意软件是通过被攻陷的采用WordPress构建的网站传播的。这并不奇怪,是因为WordPress向来是最受欢迎的攻击目标。事实上,对于这个最新版本,我们已经发现了许多被攻陷的网站被注入了恶意页面(如下图所示)。
图1.注入被攻陷网站的恶意页面
这些页面会将用户重定向到一个单独的页面,其中包含了指向GandCrab可执行文件的实际下载链接。有趣的是,当几分钟后再次访问这些站点时,除非你更改了IP地址,否则不会再次发生重定向。
图2.指向GandCrab v4.0的下载页面
我们的分析显示恶意软件的可执行文件和下载链接正在定期更新。我们在分析过程中观察到的一些链接,它们都遵循了这样一个格式——http://
- http[:]//gabysutton[.]com/file_c.php?vubljfwmqpkebpes=437261636b5f53617070686972655f506c7567696e735f666f725f41667465725f456666656374732e657865 (Crack_Sapphire_Plugins_for_After_Effects.exe)
- http[:]//gagaryn[.]com/file_c.php?lkgpsudyvbjs=437261636b5f4d657267696e675f496d6167655f746f5f5044462e657865 (Crack_Merging_Image_to_PDF.exe)
- http[:]//blog.ygtecnopc[.]com/file_c.php?rnopbuvnxdmk=437261636b5f4d657267696e675f496d6167655f746f5f5044462e657865 (Crack_Merging_Image_to_PDF.exe)
“喊话”名单增加新成员、仍然规避俄语用户
正如我们预期的那样,GandCrab的执行是直截了当的,没有任何反分析或深层的混淆。
包含恶意软件研究人员名字的经典消息字符串仍然混合在代码中,这暗示了这个新版本是由相同的开发人员编写的。GandCrab v4.0代码中的字符串包含了两个人的名字——Daniel J. Bernstein和 zeromgel337,前者是Salsa20算法的开发者,后者是一名恶意软件研究员。他们是GandCrab“喊话”名单上的新成员。
图3.从解压缩的二进制文件中提取出来的字符串
与之前的版本一样,如果有迹象表明目标系统来自一个常用语是俄语的国家,它将不会继续感染。除了俄罗斯键盘布局检查之外,这个最新版本还为以下俄语国家添加了用户界面语言的检查:
- 俄语(0x419)
- 乌克兰语(0x422)
- 白俄罗斯语(0x423)
- 塔吉克(0x428)
- 亚美尼亚语(0x42B)
- 阿塞拜疆(0x42C/0x82C)
- 格鲁吉亚语(0x437)
- 哈萨克斯坦(0x43F)
- 吉尔吉斯斯坦(0x440)
- 土库曼(0x442)
- 乌兹别克斯坦(0x843)
- 塔塔尔(0x444)
- 罗马尼亚语(0x818)
- 摩尔多瓦(0x819)
如果用户的Common AppData目录(如C:\ProgramData)中存在这样格式的文件:<8hex-chars>.lock(如2078FBF8.lock),也会导致恶意软件进程终止而不会感染系统。文件名中的“8hex-chars”是从根驱动器的卷序列号值生成的。
图4.用于检查<8-hex>.lock是否存在的代码片段
Salsa20和网络共享加密
被加密的文件现在被附加了“.KRAB”扩展名。被放入到每个目录的赎金票据也已经被更改为了“KRAB-DECRYPT.txt”。
图5.被加密文件被附加.KRAB扩展名
系统中的所有驱动器(包括映射驱动器)都将被恶意软件加密。这一次,为了扩大其影响范围,它还对受害者设备上记住的网络共享进行了加密。
图6.加密网络共享的例程
如上所述,这个新版本现在使用Salsa20流密码算法来加密文件,而不是RSA-2048。后者现在被用于一个稍微不同的任务,如下所述。同样需要注意的是,对于以前的版本而言,在文件被加密之前,恶意软件需要连接到它的C2服务器。然而,对于这个新版本而言,这并不需要。这意味着即使设备没有连接到互联网,它也仍然可以加密文件。
RSA-2048私钥和Salsa参数的加密执行如下:
- 生成RSA-2048私钥和公钥;
- 32字节和8字节值分别作为Salsa20的密钥和nonce随机生成;
- 使用Salsa20对生成的RSA-2048私钥进行加密;
- Salsa20密钥和nonce也使用先前生成的RSA-2048公钥进行加密;
- 加密密钥存储为一个二进制块,写入注册表位置HKCU\Software\keys_data\data\private;
- 原始RSA公钥存储在HKCU\Software\keys_data\data\public下。
图7.添加到注册表的加密密钥
类似的例程在文件加密例程中执行。生成一对32字节和8字节的随机值,分别由Salsa20用作密钥和nonce参数,这将用于每一个要加密的文件。和预期的一样,这些密钥会立即由RSA-2048公钥加密,该公钥被附加在被加密文件内容的末尾,连同其原始文件大小。
图8.由GandCrab V4.0加密的文件的结构
赎金票据和付款页面
与新的加密程序一起,赎金票据也经历了一些变化。新的赎金票据还包含了上述中所讨论的加密密钥(以base64编码)和受害者的基本信息,在使用base64编码之前,这些信息被其开发者使用RC4算法进行了加密,使用硬编码的密钥“jopochlen”。
图9. 赎金票据包含加密密钥和受害者数据
GandCrab的支付页面并没有太大变化。作为保证,他们仍然为受害者提供了一个文件的免费解密。但是,在我们的测试中,它实际上无法解密我们上传的被加密文件。无论测试的结果如何,我们仍然鼓励受害者不要支付赎金。
图10.支付页面要求在几天之内支付1000美元
图11 .GandCrab支付网站的免费解密出现了一个错误
结论
尽管在过去的两个月里,开发者已经对这个新版本的GandCrab进行了大量的内部更改,但它仍是同一个文件加密恶意软件,它会对那些它成功感染的系统造成严重的伤害。即便如此,一个良好的网络使用习惯仍可以缓解这一问题。在这种情况下,用户也要特别小心从互联网下载的文件,特别是那些所谓的破解软件。这些软件不仅违反了版权法,而且还会带来很大的风险,尤其是对于未经培训的用户来说。
目前,恶意软件正在被分发到被攻陷的站点。我们预计它会转向其他的分发模式,特别是垃圾电子邮件活动,就像它过去所做的那样。
我们没有找到与此版本相关的任何网络通信。但是,GandCrab v4.1仅在v4.0发布的一两天之后就已经发布了。根据我们的简要分析,这个更新的版本现在包含了一些网络通信功能,我们将在另一篇文章中对它进行讨论。
IOCs
6c1ed5eb1267d95d8a0dc8e1975923ebefd809c2027427b4ead867fb72703f82 (packed) –
W32/GandCrypt.CHT!tr
15d70bdbf54b87440869a3713710be873e595b7e93c0559428c606c8eec1f609 (unpacked) – W32/GandCrypt.CHT!tr
声明:本文来自黑客视界,版权归作者所有。文章内容仅代表作者独立观点,不代表士冗科技立场,转载目的在于传递更多信息。如有侵权,请联系 service@expshell.com。