Ryuk勒索软件如何攻击企业



Ryuk是过去几年中最知名的勒索软件之一。自从他于2018年夏季首次露面以来,他已经编制了令人印象深刻的受害者名单,尤其是在商业环境中,这是他攻击的主要目标。

1.一般信息


本文档包含对Ryuk勒索软件选项的分析,以及负责将恶意软件下载到系统的引导程序。

Ryuk勒索软件于2018年夏季首次出现。 Ryuk与其他勒索软件之间的区别之一是,它旨在攻击企业环境。

在2019年中,网络犯罪集团借助该加密货币攻击了许多西班牙公司。


图。



1:El Confidencial摘录的Ryuk勒索软件攻击[1] 2:摘自ElPaís的Ryuk勒索软件攻击[2]
。今年,Ryuk攻击了不同国家的许多公司。如下图所示,德国,中国,阿尔及利亚和印度遭受的损失最大。

比较网络攻击的数量,我们可以看到Ryuk感染了数百万用户,大量数据遭到了破坏,从而造成了严重的经济损失。


图。 3:琉球全球活动的例证。


图。 4:16个国家受影响最严重Ryuk


图。 5:受到Ryuk勒索软件攻击的用户数(以百万计)

根据这种威胁的通常运行原理,加密后的此勒索软件会向受害者显示勒索通知,必须以比特币将勒索通知支付给指定地址,以恢复对加密文件的访问。

自首次出现以来,该恶意软件已经发生了变化。
在尝试于2020年1月发动攻击时,发现了本文档中分析的这种威胁的变体。

由于其复杂性,该恶意软件通常归因于有组织的网络犯罪分子,也称为APT组。

Ryuk代码的一部分与另一位著名的Hermes密码学家的代码和结构非常相似,具有许多相同的功能。这就是为什么Ryuk最初与北韩组织Lazarus有联系的原因,当时该组织涉嫌隶属于Hermes勒索软件。

随后,CrowdStrike的Falcon X注意到Ryuk实际上是由WIZARD SPIDER [4]创建的。

有一些证据支持这一假设。首先,该勒索软件在exploit.in网站上进行了广告宣传,该网站是俄罗斯一个知名的恶意软件市场,以前与一些俄罗斯APT组织相关。
这一事实不包括拉撒路APT小组可以开发Ryuk的理论,例如这与小组的行为方式不符。

此外,Ryuk被吹捧为无法在俄罗斯,乌克兰和白俄罗斯语系统上运行的加密器。此行为由Ryuk的某些版本中的功能确定,在该功能中,它将检查运行此加密器的系统的语言,并在系统具有俄语,乌克兰语或白俄罗斯语的情况下停止其操作。最后,在对被WIZARD SPIDER小组入侵的机器进行专家分析时,发现了一些“伪像”,据说是Hermes勒索软件的变体,用于Ryuk的开发中。

另一方面,专家加布里埃拉·尼古拉(Gabriela Nicolao)和卢西亚诺·马丁斯(Luciano Martins)提出,密码学家可能是由CryptoTech APT团队开发的[5]。
这是由于在Ryuk出现前几个月,该小组在他们开发了新版Hermes勒索软件的同一站点的论坛上发布了信息。

一些论坛用户想知道CryptoTech是否真的创建了Ryuk。此后,该小组为自己辩护,并表示有证据表明他们开发了该加密器的100%。

2.特点


我们从引导加载程序开始,引导加载程序的任务是识别它所在的系统,以便您可以运行“正确”版本的Ryuk加密器。
引导加载程序哈希值如下:

MD5 A73130B0E379A989CBA3D695A157A495
SHA256 EF231EE1A2481B7E627921468E79BB4369CCFAEB19A575748DD2B664ABC4F469

此引导加载程序的功能之一是它不包含任何数据-该恶意软件的创建者未在其中包含任何信息。

有时它们包含错误的数据,以使用户认为自己正在启动合法的应用程序。但是,正如我们稍后将看到的,如果感染不涉及与用户的交互(例如该加密器的情况),那么攻击者就认为没有必要使用元数据。


图。6:

样本元数据样本以32位格式编译,因此可以在32位和64位系统上运行。

3.渗透向量


下载并启动Ryuk的样本通过远程连接进入了我们的系统,由于初步的RDP攻击,获得了访问参数。


图。 7:攻击注册表

攻击者设法远程登录系统。之后,他用我们的示例创建了一个可执行文件。
启动之前,该可执行文件已被防病毒解决方案阻止。


图。 8:阻止样品



图。 9:样本锁定

当恶意文件被阻止时,攻击者试图下载可执行文件的加密版本,该文件也遭到了阻止。


图。 10:攻击者试图运行的一组示例

最后,他试图通过加密的控制台下载另一个恶意文件
PowerShell以绕过防病毒保护。但是他也被封锁了。


图。11:PowerShell和阻塞恶意内容


图。12:PowerShell中包含被阻止的恶意内容

4.引导程序


执行后,它将自述文件写入Ryuk典型%temp%文件夹。该文件-赎金要求,包含电子邮件地址protonmail域,在该恶意软件家族中很常见:msifelabem1981@protonmail.com




图。 13:兑换要求

执行Bootloader时,您会看到它启动了几个具有随机名称的可执行文件。它们存储在一个隐藏的PUBLIC文件夹中,但是如果“显示隐藏的文件和文件夹”选项在操作系统中未激活,则它们将保持隐藏状态。此外,与父文件(32位)不同,这些文件是64位的。




图。 14:示例启动的可执行文件

如上图所示,Ryuk启动icacls.exe,它将用于修改所有ACL(访问控制列表),从而保证访问和更改标志。

它可以在所有用户下完全访问设备(/ T)上的所有文件,而不管是否有错误(/ C),并且不显示任何消息(/ Q)。


图。图15:示例启动的icacls.exe的执行选项

必须注意Ryuk检查运行的是哪个Windows版本。为此,它
使用GetVersionExW检查版本,在其中检查lpVersionInformation标志的值。显示Windows的当前版本是否晚于Windows XP





引导加载程序将写入本地用户文件夹(在本例中为%Public%文件夹),具体取决于您运行的是Windows XP还是更高版本


图。 17:检查操作系统版本

记录的文件是Ryuk。然后启动它,并传递其自己的地址作为参数。


图。 18:通过ShellExecute运行Ryuk Ryuk要做

的第一件事是获取输入参数。这次有两个输入参数(可执行文件本身和放置程序地址),用于删除它们自己的跟踪。




图。 19:创建流程

您还可以看到,一旦他启动了可执行文件,他就会删除自己,因此在执行文件夹中没有任何痕迹。


图。20:删除文件

5. RYUK


5.1存在
Ryuk与其他恶意软件一样,会尝试在系统中保留的时间尽可能长。如上所示,一种实现此目标的方法是秘密创建和运行可执行文件。为此,最常见的做法是修改CurrentVersion \ Run注册表项
在这种情况下,您可以看到为此目的,第一个可执行文件VWjRF.exe
(文件名是随机生成的)启动cmd.exe




图。 21:执行VWjRF.exe文件

然后,运行命令中输入名称为“ svchos“因此,如果您想随时检查注册表项,鉴于此名称与svchost相似,您将不会轻易注意到此更改。感谢此密钥,Ryuk可以确保其在系统中的存在。如果系统尚未被感染,然后,当您重新启动系统时,该可执行文件将重试。


图22:该示例确保了注册表项的存在

我们还可以看到,该可执行文件停止了两个服务:
audioendpointbuilder ”,顾名思义,它与系统匹配音频,


图23:示例停止系统音频

samss服务,这是帐户管理服务。停止这两项服务是Ryuk的一个特点。在这种情况下,如果系统连接到SIEM系统,则加密器尝试停止向SIEM发送任何警告。因此,他捍卫了下一步,因为在执行Ryuk之后,某些SAM服务将无法正确启动其工作。


图。 24:该示例停止了Samss服务

5.2特权

通常,Ryuk从网络内部的水平移动开始,或者由另一个恶意程序(例如EmotetTrickbot)启动,在特权升级的情况下,Ryuk会将这些提升的权限转移给加密器。

预先,作为实现过程的序幕,我们看到它运行ImpersonateSelf过程,这意味着访问令牌的安全性内容将被传输到流中,在该流中将立即使用GetCurrentThread接收它


图。 25:调用ImpersonateSelf

然后我们看到它将访问令牌与流关联。我们还看到,标志之一是DesiredAccess,可以用来控制流将具有的访问。在这种情况下,edx将接收的值必须为TOKEN_ALL_ACESS,否则为TOKEN_WRITE




图。 26:创建流令牌

然后将使用SeDebugPrivilege还将进行调用以获取与流有关的Debug调试权限,其结果是,通过指定PROCESS_ALL_ACCESS,它将能够访问任何所需的进程。现在,假设加密器已经具有准备好的流,则仅保留进行到最后阶段。


图。 27:调用SeDebugPrivilege和权限提升功能

一方面,我们有LookupPrivilegeValueW,它为我们提供了有关我们要提升的特权的必要信息。


图。 28:请求有关特权升级的信息

另一方面,我们具有AdjustTokenPrivileges,它使我们能够获得对流的必要权限。在这种情况下,最重要的是NewState。其标志将授予特权。




图。图29:设置令牌的权限

5.3部署

在本节中,我们将显示示例如何执行此报告中先前提到的部署过程。

实施过程以及升级的主要目标是获得卷影副本的访问权限。为此,他需要使用权限高于本地用户权限的流。一旦获得更高的权限,他将删除副本并更改其他进程,以使其无法返回到操作系统中的较早还原点。

与这种类型的恶意软件通常一样,它使用CreateToolHelp32Snapshot完成实施,因此它将对当前正在运行的进程进行快照,并尝试使用OpenProcess访问这些进程。一旦他可以访问该流程,他还将使用其信息打开令牌以获取流程参数。


图。

30:从计算机接收进程我们可以使用CreateToolhelp32Snapshot在例程140002D9C中动态查看其如何接收正在运行的进程的列表。在收到它们之后,他浏览了该列表,尝试使用OpenProcess逐个打开进程,直到可以执行为止。在这种情况下,他能够打开的第一个进程是“ taskhost.exe”


图。 31:动态执行过程以获得过程

我们可以看到他随后读取了该进程的令牌,因此它是带有“ 20008 ”的OpenProcessToken 。 32:读取进程令牌信息 还可以验证将其嵌入到其中的进程不是csrss.exeexplorer.exe,lsaas.exe或不是具有一组NT授权权限图。图33:被排除的进程 我们可以动态地查看它如何首先使用140002D9C中的进程令牌信息进行检查,以查明其权限用于执行该进程的帐户是否为NT AUTHORITY帐户












图。 34:检查NT权限

然后,在该过程之外,它检查它是否不是csrss.exe,explorer.exelsaas.exe


图。 35:检查NT权限

在对进程进行快照,打开进程并确认没有排除任何进程后,他准备将要实现的进程记入内存。

为此,他首先在内存中保留一个区域(VirtualAllocEx),对其进行写入(WriteProcessmemory),然后创建一个流(CreateRemoteThread)。为了使用这些功能,他使用了所选进程的PID,这些PID是他先前使用CreateToolhelp32Snapshot获得的


图。 36:嵌入代码

在这里,我们可以动态观察它如何使用进程PID来调用VirtualAllocEx函数


图。图37:调用VirtualAllocEx

5.4加密
在本节中,我们将研究与加密有关的本示例的一部分。在下图中,您可以看到两个名为“ LoadLibrary_EncodeString ”和“ Encode_Func ”的例程,它们负责执行加密过程。


图。 38:加密过程

首先,我们可以看到它如何加载一个字符串,该字符串随后将用于反混淆所需的所有内容:导入,DLL,命令,文件和CSP。


图。 39:去模糊链

下图显示了它在R4寄存器LoadLibrary中进行模糊处理的第一个导入。稍后将使用它来加载必要的DLL。我们还可以在寄存器R12中看到另一行,该行与前一行一起用于执行去模糊处理。


图。 40:动态模糊处理

他继续加载命令,稍后将执行这些命令以禁用备份,还原点和安全启动模式。


图。 41:下载命令

然后加载将放置3个文件的位置:Windows.bat,run.sctstart.bat








图。 42:文件位置

这3个文件用于检查每个位置所具有的特权。如果所需的特权不可用,Ryuk将停止执行。

它继续加载对应于三个文件的行。第一个DECRYPT_INFORMATION.html包含还原文件所需的信息。第二个PUBLIC包含RSA公钥。


图。 43:字符串DECRYPT INFORMATION.html

第三,UNIQUE_ID_DO_NOT_REMOVE,包含将在下一个例程中执行加密的加密密钥。


图。 44:唯一标识不要删除字符串

最后,它将加载所需的库以及所需的导入和CSP(Microsoft增强RSAAES密码提供程序)。


图。 45:下载库

完成所有去模糊处理后,他继续执行加密所需的操作:遍历所有逻辑驱动器,执行上一子例程中加载的内容,增强系统中的存在性,删除RyukReadMe.html文件,加密,枚举所有网络驱动器,切换到发现的设备及其加密。
这一切都始于下载“ cmd.exe ”并编写RSA公钥。


图。 46:准备加密

然后它使用GetLogicalDrives检索所有逻辑驱动器,并禁用所有备份,恢复点和安全启动模式。


图。 47:停用恢复工具

之后,他增强了他在系统中存在,正如我们上面看到的,和第一写入RyukReadMe.html文件TEMP


图。

48:发布回购通知在下图中,你可以看到它是如何创建一个文件,下载的内容,并将其写入:


图。图49:下载并记录文件内容

为了能够在所有设备上执行相同的操作,它使用了上面显示的
icacls.exe ”。


图。 50:使用icalcls.exe

最后,它开始加密文件,但“ * .exe”,“ * .dll”文件,系统文件和其他指定为加密白名单的位置除外。为此,它使用导入:CryptAcquireContextW(指示使用AES和RSA),CryptDeriveKey,CryptGenKeyCryptDestroyKey等。还试图使用WNetEnumResourceW扩大对检测到的网络设备的影响,然后对其进行加密。


图。51:系统文件加密

6.进口及相关标志


下表列出了该示例使用的最相关的导入和标志:



7.国际奥委会




参考文献
  • 用户\公共\ run.sct
  • 开始菜单\程序\启动\ start.bat AppData \漫游\ Microsoft \ Windows \开始
  • 菜单\ ProgramsStartup \ start.bat




由PandaLabs防病毒实验室专家编写的Ryuk勒索软件技术报告。

8.参考


1.“ Everis y Prisa Radio sufren ungrave ciberataque que secuestra sus sistemas。” Https:// www。 elconfidencial.com/tecnologia/2019-11-04/everis-la-ser-ciberataque-ransomware-15_2312019 /,Publicada el 04/11/2019。

2.“重要的西班牙国家病毒”。Https://elpais.com/ tecnologia / 2019/11/04 / actualidad / 1572897654_ 251312.html,Publicada el 04/11/2019。

3.“ VB2019文件:Shinigami的报仇:Ryuk恶意软件的长尾巴。” Https://securelist.com/ story-of-the-year-2019-cities-under-ransomware-siege / 95456 /,Publicada el 11 /

12/2019 4.“与Ryuk进行大型游戏狩猎:另一种基于Lucrative的勒索软件。” Https:// www。 Popularstr.com/blog/big-game-hunting-with-ryuk-another-lucrative-targeted-ransomware/,Publicada el 01/10/2019。

5.“ VB2019文件:Shinigami的复仇:Ryuk恶意软件的长尾巴。” Https:// www。virusbulletin.com/virusbulletin/2019/10/vb2019-paper-shinigamis-revenge-long-tail-r

All Articles