导语:本文分析最近活跃的Kraken Cryptor勒索软件,以勒索软件即服务的形式出现。

背景

Kraken Cryptor勒索软件最早是2018年8月中旬出现在地下论坛。9月中旬,被放在了SuperAntiSpyware的网站上,伪装成安全解决方案来感染想要下载防监听软件的用户系统。9月下旬,研究人员nao_sec发现Fallout Exploit Kit开始传播Kraken。

Insikt组织通过分析将Kraken Cryptor勒索软件与ThisWasKraken相关联。ThisWasKraken是暗网的新用户,于2018年8月12日注册,只活跃于俄罗斯犯罪论坛。ThisWasKraken主要用俄语和英语进行交流,但研究人员分析发现他的母语应该既不是英语,也不是俄语。他应该是使用了自动翻译工具,因为有许多的语法错误和句子结构错误。

image.png

Kraken Cryptor v2的广告

Kraken Cryptor勒索软件并不单卖给用户。而是通过一种分支合作项目进行传播,合作者可以获得勒索赎金的一部分作为报酬。这种勒索软件传播技术叫做ransomware-as-a-service (RaaS),是暗网中常用的技术之一。Kraken Cryptor的最新版本是v.2.0.7。

image.png

Kraken Cryptor v.2.0.7勒索信,其中指示了如何解密文件

截止目前,Kraken Cryptor RaaS需要潜在的分支合作者每个payload支付50美元。下面是合作项目的条款和条件:

· 合作者获得支付赎金的80%

· 项目可以无条件拒绝任何成员和申请者

· 合作者将得到7*24小时的支持服务

· 不允许提交Kraken样本至反病毒服务

· 对购买的payload不支持退款

Kraken Cryptor Ransomware

威胁分析

ThisWasKraken的帖子说Kraken Cryptor RaaS不支持以下前苏联集团国家:

· 亚美尼亚

· 阿塞拜疆

· 白俄罗斯

· 爱沙尼亚

· 格鲁吉亚

· 伊朗

· 哈萨克斯坦

· 吉尔吉斯斯坦

· 拉脱维亚

· 立陶宛

· 摩尔多瓦

· 俄罗斯

· 塔吉克斯坦

· 土库曼斯坦

· 乌克兰

· 乌兹别克斯坦

从感染地图中可以看出,上面提到的不允许使用的国家中也有一些感染的情况。

每个Kraken Cryptor RaaS的分支都会收到一个特殊版本的Kraken,并要发送以下信息给ThisWasKraken进行配置:

· 与受害者进行通信的邮件地址

· 与受害者进行通信的备选邮件地址

· 勒索赎金的比特币金额,一般在0.075到1.25BTC之间

Mcafee和Recorded Future的研究人员一起分析了ThisWasKraken在论坛发的所有帖子。因为所有帖子都是俄语的,因此研究人员断定ThisWasKraken的母语肯定不是俄语和英语。根据帖子的内容,研究人员推断攻击者可能使用了自动翻译服务,因为出现了很多的词汇错误。相比俄语,攻击者对英语更加熟练,但在句子结构和拼写上仍然存在错误。勒索信中也有英语拼写错误。

ThisWasKraken应该是团队成员,但并不直接参与勒索软件开发。Jabber账户为[email protected][.]im,是面向用户的,所有产品细节都联系产品支持团队[email protected][.]com。

比特币是目前唯一支持的货币。Insikt组织研究人员发现了许多与该攻击活动相关的钱包地址。但有趣的是,Kraken开发者选择了在线赌博网站BitcoinPenguin作为其主要的洗钱方式。但一般网络犯罪分子都不会选择这种方式,而是选择传统的加密货币交易所。研究人员分析其中的一个原因应该是BitcoinPenguin不对会员身份进行验证。

Bitcoin Transactions

与Kraken相关的比特币交易

下图是ThisWasKraken购买的劫持的web流量,可能与Kraken利用Fallout exploit kit传播的流量是相同的。

Web Traffic Graphic

 

下面是ThisWasKraken 10月21日对论坛发帖中对Kraken Cryptor勒索软件v.2.0.7的技术说明:

· 勒索软件用C# (NET. Framework v. 3.5)语言编写

· 勒索软件可以非在线工作,支持通过email联系

· Payload的大小约为85kb,而反病毒分析中的payload大小一般都在94kb以上

· Kraken主要攻击Windows 8\8.1\10

· Kraken加密速度非常快

· 加密过程没有文件大小限制

· 勒索软件会在受害者上线时收集系统信息

· Kraken使用了AES-128/256 (CBC mode)和RSA, Salsa20, RC4等在内的混合加密算法

· 勒索软件用一种智能混淆加密方法来攻击随机位置的嗯我那件,包括网络共享加密

· 勒索软件可以加密共享网络上的存储设备

· 不支持赎金无法恢复文件

· Package中包含反调试和反取证工具

· 勒索信支持15种语言格式,有HTML和txt格式

· 使用了Canary trap反勒索软件绕过方法来防止key泄露

· 感染数据统计是基于IP统计的

分支成员每隔15天会收到一个Kraken的新版本来保持payload不被反病毒软件检测到。ThisWasKraken称,如果受害者想要免费的解密测试,分支成员应发送受害者的文件和对应的密钥到Kraken Cryptor勒索软件支持服务。该服务会解密文件并发送给下线成员,然后分支成员再转发给用户。受害者在支付了所有赎金之后,分支成员发送收到的赎金百分比到RaaS开发者来获取解密key,然后分支成员再转发给受害者。

技术分析

Kraken Cryptor勒索软件可以快速加密硬盘上的数据并用SDelete这样的外部工具来擦除文件,使文件恢复很难进行。

Kraken Cryptor Infection Scheme

Kraken Cryptor感染方案

勒索软件用Windows Event Viewer来实现用户账户控制(user account control,UAC)绕过。UAC绕过也是其他恶意软件家族常用的绕过技术,对执行恶意软件来说非常有效。

Ransomware Using Windows Event Viewer

勒索软件使用Windows Event Viewer绕过UAC.

McAfee研究人员分析了Kraken勒索软件样本,发现该勒索软件仍在测试阶段,因为有添加和移除选项。勒索软件在感染过程中有一个保护功能以避免自己把自己删除:

C:\Windows\System32\cmd.exe” /C ping 127.0.0.1 -n 3 > NUL&&del /Q /F /S
C:\Users\Administrator\AppData\Local\Temp\krakentemp0000.exe

这一步是为了预防研究人员和终端保护软件在受感染的机器上获取该文件。

Kraken会用随机名来加密用户文件并释放要求受害者支付赎金来恢复文件的勒索信。McAfee研究人员建议不要支付赎金,因为这会进一步推动更多勒索软件的发展。

每个文件扩展都是不同的,该技术也被特定的勒索软件家族使用来绕过终端保护系统。

通过利用套件传播的Kraken用Event Viewer绕过UAC,在受害者系统上释放文件,并通过UAC绕过方法来执行。

Exploit Kit Delivering Binary

利用套件传播的二进制文件

二进制额文件的作者在第1个版本编译过程中忘记删除PDB索引了,而该文件与Kraken Cryptor是有关系的:

Ransomware Early Version

C盘中勒索软件早期版本的路径

早期版本包含以下路径:

C:\Users\Krypton\source\repos\UAC\UAC\obj\\Release\UAC.pdb

之后的版本可以释放PDB路径和Kraken加载器。

用Sysinternals 工具使文件恢复变难

该勒索软件家族的有个唯一特征是SDelete。Kraken用.bat文件来执行一些操作,使用文件恢复变得非常困难。

Kraken Cryptor

含有SDelete bat文件的Kraken Cryptor v.1.6使文件恢复变得很难

Kraken会从Sysinternals 网站下载SDelete,添加注册表并用下面参数执行:

sdelete.exe -c -z C

SDelete batch文件会通过用0覆写驱动上的空闲空间、删除影子卷拷贝(Volume Shadow Copies)、关闭恢复重启选项、最后在300秒后重启系统。

Netguid比较

Kraken的早期版本在通过加载器传播前会使用直接执行方法。研究人员发现加载器中含有一个特定的netguid。McAfee研究人员利用netguid在VirusTotal中找到了Kraken loader的其他样本:

Kraken Cryptor

VirusTotal中发现的其他哈希值

除了加载器外,Kraken的编译版本也共享一个netguid,这样就可以继续寻找样本了:

Additional Hash Values

检测到的其他哈希值

版本比较

Kraken的每个版本都会用配置文件来设置勒索软件的变量。该文件很容易可以继续提取和分析。

Kraken Cryptor Configuration File

Kraken Cryptor配置文件

基于配置文件,McAfee发现了Kraken的9个版本:

· 1.2

· 1.3

· 1.5

· 1.5.2

· 1.5.3

· 1.6

· 2.0

· 2.0.4

· 2.0.7

通过从所有版本中提取处配置文件,McAfee构建了下面的特征表:

Feature Overview

勒索软件特征概览

研究人员分析这些版本特征发现,这些版本大多数有一些共同的特征,不同点主要在反病毒保护和反取证能力。最新的Kraken 2.0.7还修改了配置方案(后面会详细介绍)。

Kraken的配置文件中还列出了不适用的国家名单。其中巴西和叙利亚不在前面的名单中。

Exclusion List

不允许攻击的国家列表

V 2.0.7

V2.0.7最新版本的配置方案与之前的版本有所不同:

Configuration Version

Kraken Cryptor v. 2.0.7配置文件

v. 2.0.7版本的选项更多,McAfee认为恶意软件比其他活跃的版本更具可配置性。

APIs和统计数据

其中一个新特征就是记录受害者数量的公有API:

Public API

另一个API是记录特定统计数据的隐藏服务:

Statistics Collection

从二进制文件中很容易就可以找出Onion URL:

Detected URL

用API检测出的kraken656kn6wyyx[.]onion URL

Kraken使用的终端和浏览器都硬编码在配置文件中了:

Configuration File

配置文件中含有关于终端和浏览器的数据

Kraken从每个感染的受害者处会收集以下信息:

· Status

· Operating System

· Username

· Hardware ID

· IP Address

· Country

· City

· Language

· HDCount

· HDType

· HDName

· HDFull

· HDFree

· Privilege

· Operate

· Beta

Kraken基础设施

从v1.2版本到2.04版本,Kraken都会通过域名blasze[.]tk来下载其他文件。blasze[.]tk还使用了Cloudflare保护来预防DDoS攻击。

Downloading Additional Files

Kraken Cryptor用来下载其他文件

域名blasze[.]tk在以下国家是无法访问的:

Countries Blocking Domain

拦截域名blasze[.]tk的国家

Insikt组织可以获取Kraken Cryptor勒索软件的样本并成功加密然后在64位Windows 7机器上解密。加密阶段会锁定所有的目标文件,并且在这些目录中防止HTML格式的勒索信。勒索信首先教受害者通过LocalBitcoins.com或BestBitcoinExchange.io购买比特币,然后联系第一或第二个邮件地址等待下一步指令。很明显受感染的机器仍然可以访问其web浏览器,所以受害者可以与攻击者联系并支付赎金。

Ransom Note

受害者支付赎金后,就会收到一封含有文件共享服务Uploadfiles.io链接的邮件,该链接会下载两个文件Decryptor.exe和Private.txt。其中Private.txt含有两个数据库:私钥和私有IV。当Decryptor.exe执行时,需要受害者复制和粘贴私钥和私有IV到对应域来解密加密的文件。

Kraken Decryptor

支付赎金后发给受害者的Kraken decryptor

总结

Kraken Cryptor勒索软件是一个用.NET框架编写的32位恶意软件,并使用SmartAssembly进行保护,以防止被逆向分析。恶意软件可以通过JSON文件实现完全自定义。不适用的国家列表说明这是一个国际化的黑客组织,成员可能分布于这些国家。考虑到ThisWasKraken母语不是英语或俄语,因此可能位于巴西或伊朗。

源链接

Hacking more

...