用户感染恶意软件的方式之一是通过搜索引擎优化 (SEO) 投毒。这种技术是一种网络,可以诱捕搜索特定术语的用户群体。通过在合法网站上植入恶意软件或创建误导性网站,攻击者可以诱骗人们下载恶意代码。一组有效利用 SEO 投毒来感染计算机的威胁行为者是 GootLoader 恶意软件的幕后黑手。GootLoader 是一种加载器恶意软件,于 2020 年底出现。在早期,GootLoader 会投放Gootkit银行木马以促进账户接管 (ATO)。然而,Gootkit 现在已经很少见了。GootLoader 的任务已经多样化,其运营商已转向初始访问代理 (IAB) 模型。访问代理是网络犯罪即服务的一部分,其特点是威胁行为者专门获取系统访问权限,然后将该访问权限出售给其他威胁行为者。然后,这些访问购买者会利用这些计算机,无论是用于数据盗窃、勒索软件还是其他计划。GootLoader 的访问权限还被用于安装用于侦察和横向移动的工具,包括Rubeus、SharpHound、SystemBC和 Cobalt Strike(一种被威胁行为者滥用的合法渗透测试框架)。
2023 年初,GootLoader 开始在搜索结果中出现的网站上传播,这些网站在搜索“协议”、“合同”、“表格”、“法律”、“许可证”和“模板”等术语时会出现。为了创建这些恶意链接,GootLoader 的运营者会利用使用 WordPress 内容管理系统 (CMS) 的网站和论坛中的漏洞。这使得威胁行为者能够在其网络中添加新服务器,从而增加其传播范围,并增加用户在搜索中遇到植入 GootLoader 的网站的机会。
GootLoader 仍然是对组织机构的普遍威胁。由于其隐蔽性、有效性以及许多勒索软件活动都在利用它,因此团队必须评估并准备应对此加载器的功能。及早发现并清除 GootLoader 感染意味着可以避免数据泄露或勒索软件攻击。本文将讨论如何使用 Intel 471 的 HUNTER 平台寻找 GootLoader 感染的线索。
要开始威胁搜寻,我们首先需要收集 GootLoader 当前使用的策略、技术和程序 (TTP)。这些 TTP 可以来自各种来源,例如供应商报告和独立研究人员共享的数据。TTP 包括恶意软件当前使用的行为,不太可能被恶意软件的操作员更改。
在本威胁搜寻示例中,我们将从DFIR 报告中收集 TTP ,该报告由一群研究人员撰写,他们发表了有关恶意软件感染、勒索软件事件和数据泄露的调查报告。2024 年 2 月,DFIR 报告发布了“从 SEO 中毒到域控制:GootLoader 传奇仍在继续”。该帖子讨论了一个组织中发生的事件,该事件源于一名用户搜索“默示雇佣协议”。返回的网站之一是一个被入侵的网站,模仿托管 GootLoader 的论坛。此人点击链接下载了据称是雇佣协议但实际上是 GootLoader 的文件。
DFIR报告包含有关GootLoader执行的详细信息:
向下滚动到 DFIR 报告中的“持久性”部分,可以看到更多关于计划任务的信息,这是 GootLoader 的重复行为之一,以及它留下的证据。我们还可以识别执行 GootLoader 的用户和计划任务执行的触发器。如果我们查看 LogonTrigger,我们可以看到它已启用,并且可以得出结论,当特定用户登录到计算机时(UserID 已被删除),计划任务将触发:
我们还能发现哪些其他 TTP?我们可以看到 GootLoader 运行其他操作或命令,包括在意外位置执行计划任务。攻击者喜欢将恶意软件藏在用户不太注意的意想不到的位置。你上次将重要文档存储在appdata/roaming目录中是什么时候?这个目录通常是隐藏文件夹。这是一个值得关注的领域。
我们可以少关注对手使用的参数或文件名。如果对手很聪明,就不会重复使用相同的文件名,因为它是一个妥协指标 (IoC),可以很容易地更改为对新目标的新攻击。通过关注行为(安排任务)和位置(奇怪的目录),可以反复捕获 GootLoader,而不是集中使用原子或时间点工件(例如文件名、哈希、IP 地址等)进行检测。
不过,我们不必依赖外部开源报告来了解 GootLoader 的 TTP。GootLoader 是 Intel 471恶意软件情报团队追踪的数十个恶意软件家族之一。该团队跟踪恶意软件家族和感染活动,并模拟恶意软件以了解新行为。然后可以将这些情报应用于威胁搜寻。自 2024 年 5 月 Intel 471收购Cyborg Security 以来,我们一直在使用收集到的有关 GootLoader 等恶意软件的数据来编写威胁搜寻包。这些包是 HUNTER 平台的一部分,是预先编写的查询,适用于在广泛的端点检测和响应 (EDR)、扩展检测和响应 (XDR)、日志记录和安全信息和事件管理 (SIEM) 平台中搜索可能的感染迹象。
对于安全团队来说,预先编写的优势在于,它允许威胁猎手专注于根据最近恶意软件活动的最新情报执行当前搜索,而不是研究和编写查询。由于我们可以访问恶意软件情报,我们可以提高威胁搜索包的相关性,以更紧密地匹配当前的威胁环境,并减少对老化开源情报的依赖。这并不是要轻视或低估开源情报的价值。它非常有价值,威胁情报社区的共享可以增强所有人的防御能力。然而,开源情报也可供威胁行为者使用,他们可能会阅读相同的博客、社交媒体信息和供应商报告。一些行为者可能会随后做出改变以避免被发现。
对于那些还不是英特尔 471 客户的用户,我们已经将 GootLoader 搜索查询作为 HUNTER 社区版的一部分提供,它是免费的。
在 HUNTER 社区版中可以找到名为“从异常位置执行的计划任务”的威胁搜寻。
之前我们提到过GootLoader会将计划任务隐藏在异常位置。HUNTER社区版中包含的威胁搜索之一名为“异常位置计划任务详情”。如果我们点击搜索包,我们可以看到这种威胁搜索不仅适用于GootLoader,还适用于其他类型的恶意软件,包括Spectre远程访问木马(RAT)、Lumma信息窃取程序以及各种勒索软件,包括MedusaLocker、Nokoyawa、Quantum和LockBit 3.0。
如果我们向下滚动到查询逻辑表,我们可以识别出我们将在某些字段中分析的字段值关系(见下面的屏幕截图)。首先,我们有一个计划任务,即 event_id 4698。这是捕获计划任务的本机 Windows 日志记录事件 ID。
接下来,我们可以查看消息字段,该字段捕获本机 Windows 事件日志中的信息。这些是 GootLoader 可能处于活动状态的位置。进一步分析,我们排除了 Windows Defender 和 MicrosftWindowsApplications。这些是 ScheduledTasks 经常引用的位置,可能会导致大量的误报。
为了了解此搜索在实践中如何进行,让我们切换到 Splunk。以下屏幕截图中可见的数据反映了查询的逻辑。
这里,我们有包含用户的任务参数,这在我们通过使用一些正则表达式创建的任务参数字段中进行了检查。我们还特别看到了用户和事件代码 4689。此外,我们看到任务参数包含在 UsersJames MurphyAppDataLocalTemp 目录中运行的批处理 (.bat) 文件。我们看到命令包含 command.exe,任务名称为 DailyBackup。
根据这些数据接下来可以采取多种途径。如果这在您的环境中完全不正常,那么可能是时候提醒事件响应和数字取证团队,让他们知道计算机可能已受到威胁。另一种方法是从计划任务转向进程创建,并确定文件是否已执行。可以为进程创建事件编写另一个查询,以查看 AutoLogoff.bat 是否存在于任何命令行参数或父命令行参数中。
原文始发于微信公众号(Ots安全):威胁追踪案例研究:追踪 GootLoader
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论