Hive勒索软件分析

admin 2021年11月1日09:02:15评论442 views字数 6527阅读21分45秒阅读模式

执行摘要

Hive是2021年6月首次出现的使用双重勒索策略的勒索软件团伙。值得注意的是,该团伙选择目标时不会过多思考,尤其是在涉及医疗机构和医院时并不会加以限制,最近对俄亥俄州纪念卫生系统医院的攻击证明了这点。Hive勒索软件是用Go语言编写的,利用该语言的并发功能,可以更快地加密文件。本文讲述了Hive 勒索软件的TTP,并对其Payload进行了逆向工程深入研究。撰写本文时,Hive仍然活跃,其Hive Leaks网站上列出了多达30家受害公司。

Hive勒索软件分析


 

背景

虽然许多活跃的勒索软件团伙已经承诺放弃对医疗目标的攻击,以顺应当前的全球形势,但Hive并不是其中之一。2021年8月15日,有消息称Hive对俄亥俄州的一家医疗机构Memorial Health System发起了攻击。结果,该医院被迫建议一些病人到其它机构寻求治疗。

虽然一些针对公共卫生和关键基础设施目标的勒索软件攻击可能是采取了猎枪式攻击的结果,大规模的网络钓鱼活动在不了解受害者环境的情况下盲目地在受害者设备上执行恶意软件,但Hive的情况并非如此。这是一个人为操作的勒索软件攻击,旨在接受来自命令行的输入,表明攻击者既了解环境,又对其攻击进行调整以造成最大影响。

Hive勒索软件分析

Memorial Health Systems关于勒索软件攻击的公开声明

 

 

Hive

Hive或"HiveLeaks "是一个相对较新的勒索软件团伙,于2021年6月底首次出现。Hive使用双重勒索策略,他们通过双管齐下的攻击来赚钱:在锁定受害者的系统之前渗出敏感数据。这使他们能够向受害者施压,使其支付比传统勒索软件攻击更大的金额,因为受害者还面临着敏感数据大规模泄漏的威胁。到目前为止,Hive的计划被证明是成功的,因为在他们的受害者网站上发布了多个泄漏数据信息。撰写本文时,HiveLeaks网站上有30家公司。

Hive勒索软件分析

HiveLeaks 站点在发布受害者文件之前显示计时器

 

我们不能把泄露的数据放回其原来的系统里,但我们至少可以对Hive运营商的首选技术进行细分,并深入研究他们的勒索软件工具包,以帮助其他潜在受害者。

 

 

技术分析

初始访问方式可能会有所不同。Cobalt Strike植入物通常是首选工具,它们通过网络钓鱼或电子邮件传递,以建立初始访问。这些beacons保持持久性,并使攻击者在受感染的环境中扩大其影响范围。它们还被用来启动HivePayload。

最近的活动选择使用ConnectWise。ConnectWise是一个合法的商业远程管理工具,近年来已被多个勒索软件运营商滥用。该工具使得他们能够在 Cobalt Strike 没有成功的环境中持久化和管理其恶意软件。

一旦进入,攻击者将试图通过consvcs.dll(MinDump)的方式转储凭证rundll32.exe。

Windowssystem32cmd.exe /C rundll32.exe

WindowsSystem32comsvcs.dll MinDump 752 lsass.dmpfull

 

此外,WDigest可以被操作以允许缓存明文凭证数据。

Windowssystem32cmd.exe /C reg add

HKLMSYSTEMCurrentControlSetControlSecurityProvidersWDigest/v

UseLogonCredential /t REG_DWORD /d 1 &&gpupdate /force

 

ADRecon等其它工具可以用来进一步了解和遍历被感染的活动目录(AD)环境。ADRecon是一个开源的工具,旨在映射、遍历和枚举AD环境。

 

 

Hive Payload

虽然上面提到的工具、技术和程序对于现在的勒索软件团伙来说是相当标准的,但Hive使用的是他们自己的闭源勒索软件。Payload是用Go语言编写的,并用UPX打包。解压后,由于Go软件包静态链接所有的依赖关系以创建一个可靠的可移植可执行文件的方式,赎金软件本身的大小超过2MB。

开发人员正在利用Go的一些原生优势,特别是实现简单和可靠的并发能力。另一方面,Go以能够在不同的操作系统中轻松进行交叉编译而闻名,但Hive实现其功能的方式使其目前只针对Windows。

该勒索软件被设计为接受来自命令行的输入,表明它是要由操作人员或包含所需参数的脚本直接运行。可用的标志如下:

Hive勒索软件分析

Hive 勒索软件使用的标志

 

这些标志在很大程度上是易于理解的,除了最后一个选项no-cleanpollDesc。这是勒索软件功能的最后阶段,即在所有逻辑驱动器中寻找一个名为swap.tmp的文件,并在勒索软件退出前将其删除。开发者将此称为 "cleaningspace"。目前,我们不知道该文件的作用,不管它是在操作过程中生成的组件、本机Windows文件,还是对未来构建的不完整的跨平台功能的一个参考。

Go恶意软件通常被认为是很难进行逆向工程的,主要原因是在每个可执行文件中都有大量与之相关的导入代码。隔离恶意软件开发者提供的代码非常重要。在这种情况下,Hive开发者提供了由main()函数编排的四个包:encryptor、keys、winutils和config。

Hive勒索软件分析

google.com 父目录下的自定义包

 

粗略检查可能会遗漏这些,因为它们位于一个名为google.com的父包下,或许是为了让人觉得这些是标准包。

在初始化encryptor.NewApp()下的勒索软件功能之前,主函数解析了操作者提供的标志。首先,它生成并导出加密密钥,并生成赎金票据。它将受害者引导到一个有密码保护的Onion域。

http://hivecust6vhekztbqgdnkks64ucehqacge3dij3gyrrpdp57zoq3ooqd[.]onion/

它还警告受害者,他们即将在 Hive Leaks 站点上披露他们被盗的数据。

http://hiveleakdbtnp76ulyhi52eag6c6tyc<redacted>.onion/

主要功能位于encryptor.(*App).Run()下,它的作用如下:

1.App.ExportKeys()环绕标准的gocrypto函数,它用来生成RSA密钥。一个密钥文件被导出。

2.MountPoints()列举了不同类型的驱动器,并将它们附加到一个切片(Go中动态大小的数组)。这包括本地逻辑驱动器、可移动驱动器和远程共享。

3.根据kill标志,恶意软件会杀死与提供的正则表达式匹配的进程。如果未提供自定义值,则使用以下默认值:

“bmr|sql|oracle|postgres|redis|vss|backup|sstp”

4.根据stop标志,恶意软件连接到Windows服务控制管理器,并停止符合所提供的搜索条件的服务。

5.恶意软件会创建一个批处理文件来自我删除,文件名为hive.bat,通过一个新的进程从磁盘上删除自己的组件。

timeout 1 || sleep 1

del "C:Usersadmin1Desktophmod4.exe"

if exist"C:Usersadmin1Desktophmod4.exe" goto Repeat

del "hive.bat"

6.它创建了一个批处理文件来删除文件名为shadow.bat的副本,并作为一个单独的进程执行。

vssadmin.exe delete shadows /all /quiet

del shadow.bat

 

7.为了利用Go的并发功能,Hive的开发人员运行了一个Notify()函数来观察跟踪并行线程的WaitGroup。只要有线程挂起,这个函数就会保持程序的运行。

8.现在进入勒索软件的主要功能。ScanFiles()将填充一个文件绝对路径的列表,并将其输入通道(各种队列)。然后,EncryptFiles()将产生线程,每个线程从该队列中取出一个文件并进行加密。用Go编写实现了并发特性,这是这个勒索软件的主要优势,它能够更快的进行文件加密。

9.最后,设计人员确保从内存中删除加密密钥。

赎金票据被存放在包含加密文件的每个文件夹(跳过C:windows)中。

Hive勒索软件分析

'HOW_TO_DECRYPT.TXT'赎金票据

 

赎金通知指示受害者通过TOR访问Hive门户网站,并用他们指定的唯一ID登录,以进行支付。

Hive勒索软件分析

Hive 受害者门户网站

 

每个感染活动都被分配了独特的凭证,可在赎金通知中找到。这个门户将受害者引向标准的勒索软件 "support "区,在那里他们可以上传免费的测试文件,与攻击者沟通,并在他们选择付款时收到解密器(理想情况下,受害者不应该付款)。

 

 

结论

随着这些攻击继续升级并变得更加恶劣,因此,预防攻击变得更加重要。虽然日常维护和备份策略是必须的,但在双重勒索攻击中,这些还不够。

一旦执行,大多数现代勒索软件会以相当聪明的方式去攻击备份和存储卷。许多勒索软件甚至已经发展到针对特定的NAS设备和平台,也有一些勒索软件将完全绕过加密阶段,选择偷窃数据来公开敲诈受害者。虽然后一种情况可能由于缺乏干扰而显得更易于实现,但对声誉的损害、潜在的责任和对企业生存能力的威胁仍然存在。因此,我们强调预防此类威胁。

我们建议所有企业和组织部署现代端点保护技术,这些技术超越了静态检查、基本签名和其它过时的组件。

 

IoC

文件哈希

SHA1

67f0c8d81aefcfc5943b31d695972194ac15e9f2

edba1b73ddd0e32784ae21844c940d7850531b82

2877b32518445c09418849eb8fb913ed73d7b8fb

cd8e4372620930876c71ba0a24e2b0e17dcd87c9

eaa2e1e2cb6c7b6ec405ffdf204999853ebbd54a

0f9484948fdd1b05bad387b14b27dc702c2c09ed

e3e8e28a70cdfa2164ece51ff377879a5151abdf

9d336b8911c8ffd7cc809e31d5b53796bb0cc7bb

1cc80ad88a022c429f8285d871f48529c6484734

3b40dbdc418d2d5de5f552a054a32bfbac18c5cc

2f3273e5b6739b844fe33f7310476afb971956dd

7777771aec887896be773c32200515a50e08112a

5dbe3713b309e6ecc208e2a6c038aeb1762340d4

480db5652124d4dd199bc8e775539684a19f1f24

Dc0ae41192272fda884a1a2589fe31d604d75af2

 

Hive.bat

C9471adc8db180a7da5a56966b156b440483856f

 

Shadow.bat

4714f1e6bb75a80a8faf69434726d176b70d7bd8

 

SHA256

a0b4e3d7e4cd20d25ad2f92be954b95eea44f8f1944118a3194295c5677db749

50ad0e6e9dc72d10579c20bb436f09eeaa7bfdbcb5747a2590af667823e85609

5ae51e30817c0d08d03f120539aedc31d094b080eb70c0691bbfbaa4ec265ef3

77a398c870ad4904d06d455c9249e7864ac92dda877e288e5718b3c8d9fc6618

e1a7ddbf735d5c1cb9097d7614840c00e5c4d5107fa687c0ab2a2ec8948ef84e

ed614cba30f26f90815c28e189340843fab0fe7ebe71bb9b4a3cb7c78ff8e3d2

c5fe23c626413a18cba8fb4ea93df81529c85f470577fb9c2336d6b692689d9d

88f7544a29a2ceb175a135d9fa221cbfd3e8c71f32dd6b09399717f85ea9afd1

2f7d37c22e6199d1496f307c676223dda999c136ece4f2748975169b4a48afe5

fdbc66ebe7af710e15946e1541e2e81ddfd62aa3b35339288a9a244fb56a74cf

1e21c8e27a97de1796ca47a9613477cf7aec335a783469c5ca3a09d4f07db0ff

bf7bc94506eb72daec1d310ba038d9c3b115f145594fd271b80fbe911a8f3964

c04509c1b80c129a7486119436c9ada5b0505358e97c1508b2cfb5c2a177ed11

612e5ffd09ca30ca9488d802594efb5d41c360f7a439df4ae09b14bce45575ec

0df750bf15895d410c3f6ce45279ab0329c5c723af38b99aadc9a60bcdc9a71d

5954558d43884da2c7902ddf89c0cf7cd5bf162d6feefe5ce7d15b16767a27e5

 

Hive.bat

93852dbd3a977cf2662b0c4db26b627736ba51c0df627eb36b41fdbde093c3c3

 

Shadow.bat

D158f9d53e7c37eadd3b5cc1b82d095f61484e47eda2c36d9d35f31c0b4d3ff8

 

通信

CobaltBeacon: 176.123.8.228

 

MITRE ATT&CK

T1574.001-劫持执行流程为:DLL搜索顺序劫持

https://attack.mitre.org/techniques/T1574/001/

 

TA0005-防御规避

https://attack.mitre.org/tactics/TA0005/

 

TA0004-特权提升

https://attack.mitre.org/tactics/TA0004/

 

T1486-数据加密的影响

https://attack.mitre.org/techniques/T1486/

 

T1027.002-混淆后的文件或信息:软件包装

https://attack.mitre.org/techniques/T1027/002/

 

T1003.001- OS凭证转储:LSASS内存

https://attack.mitre.org/techniques/T1003/001/

 

T1007-系统服务发现

https://attack.mitre.org/techniques/T1007/

 

T1059-命令和脚本解释器

https://attack.mitre.org/techniques/T1059/

 

T1059.001-命令和脚本解释器:PowerShell

https://attack.mitre.org/techniques/T1059/001/

 

T1059.003-命令和脚本解释器:Windows Command Shell

https://attack.mitre.org/techniques/T1059/003/

 

T1490-禁止系统恢复

https://attack.mitre.org/techniques/T1490/

 

 

原文链接:

https://labs.sentinelone.com/hive-attacks-analysis-of-the-human-operated-ransomware-targeting-healthcare/

 

 

本文始发于微信公众号(维他命安全):Hive勒索软件分析

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年11月1日09:02:15
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Hive勒索软件分析https://cn-sec.com/archives/500010.html

发表评论

匿名网友 填写信息