
新发现 SharkLoader 恶意软件在 StrikeShark 攻击中部署 Cobalt Strike
Kaspersky 发现名为 StrikeShark 的攻击活动正利用 SharkLoader 作为加载器,在受害主机上部署 Cobalt Strike Beacon。该活动瞄准多个国家与行业,结合公开 PoC、web shell、DLL side-loading 和多种漏洞利用,显示出广泛而机会主义的攻击特征。
一项新发现的 cyber attack campaign 已被观察到投递一个此前未被记录的 malware family,名为 SharkLoader,它充当 loader,用于在受感染主机上部署 Cobalt Strike Beacon。
Kaspersky 以 StrikeShark 这一名称追踪该活动,并表示,这次 campaign 已经针对印度尼西亚的一个外交组织、台湾的政府组织、多个国家的软件开发公司,以及位于香港、黎巴嫩、叙利亚、哥伦比亚、北马其顿、尼泊尔和塞尔维亚、与其他 sector 相关的实体。
“所观察到的 victimology 表明,这是一场具有广泛地理覆盖范围和多样化目标集合的 campaign,而不是对特定行业或地区的狭窄聚焦,”这家俄罗斯 cybersecurity vendor 说。
该 campaign 没有显示出与任何已知 threat actor 或 group 的直接联系,尽管操作者使用了多个 open-source post-compromise tools,例如 FScan 和 Pillager,这些工具通常被中文开发者使用。据信,这场 campaign 是一名说中文的 threat actor 所为。
攻击链涉及两条初始访问路径:利用已知的 Exchange Server 漏洞,例如 CVE-2021-26855(又名 ProxyLogon),攻击印度尼西亚外交实体;或者在台湾软件开发组织的案例中,通过影响 Openfire 的 path traversal vulnerability(CVE-2023-32315);又或者利用 GeoServer 中一个 critical remote code execution bug(CVE-2024-36401)来针对哥伦比亚某组织。
该 threat actor weaponized 的其他 remote code execution 和 authentication bypass vulnerabilities 列如下 -
Apache Shiro: CVE-2016-4437
Hikvision Products: CVE-2021-36260
Microsoft SharePoint: CVE-2021-27076
Zimbra Collaboration Suite: CVE-2022-27925
Microsoft Exchange Server: CVE-2022-41082(又名 ProxyNotShell)
F5 BIG-IP: CVE-2023-46747
Fortinet FortiOS: CVE-2024-21762
React Server Components: CVE-2025-55182
Fortinet FortiOS: CVE-2022-40684
Cisco IOS XE Web UI: CVE-2023-20198
目前评估认为,这些 threat actors 很可能正以机会主义方式,使用托管在 GitHub 或其他 open-source platforms 上、公开可用的 proof-of-concept (PoC) exploits 来获取初始访问。一旦站稳脚跟,threat actors 就会通过部署 web shells 来建立 persistence,并触发一个涉及 “SystemSettings.exe”(CVE-2021-27076)的 DLL side-loading 链,从而投递 SharkLoader(“SystemSettings.dll”)。
StrikeShark 用于分发该 loader 的第二种方法,是通过 custom dropper executables,它们伪装成合法的软件安装程序或应用,例如 Google Update 和 Cisco AnyConnect,并在安装过程完成后执行 malware loader。这些 droppers 的分发方式目前尚不清楚。
“Kaspersky 解释说,除了 installer-themed lures 之外,还有多个 SharkLoader droppers 使用 decoy PDF documents 来诱使受害者打开恶意文件。” “不过,并非所有样本都使用这种技术,因为有些 droppers 只是作为 SharkLoader 的投递机制,而不提供任何 lure content。”
一旦 DLL 被加载,SharkLoader 就会实施所谓的 Perfect DLL Hijacking,这是安全研究员 Elliot Killick 在 2023 年 10 月详细说明的一种技术,用来在绕过 Windows Loader Lock 的同时执行恶意代码;Windows Loader Lock 是操作系统在加载和卸载 DLL 时持有的一个 system-wide lock。
具体来说,它被设计为解密并加载 “DscCoreR.mui”,随后利用它来解压并在一个处于 suspended state 的新线程中加载 Cobalt Strike,同时还有另外两个组件 -
SyncRes.dat,它使用 Microsoft Detours library 安装多个 Windows API hooks,以监控运行时生成的 exceptions。
MinHook DLL,它为 VirtualAlloc 和 Sleep functions 安装 API hooks,以便使用 VirtualAlloc 将解压后的 Cobalt Strike Beacon 复制到分配的 memory region 中。当 Beacon 调用 Sleep 时,会触发与 Sleep 相关的 hook,这很可能是为了规避内存扫描技术,因为这类技术会识别内存中的可执行(RWX)code regions。
“Kaspersky 解释说,最后,在安装好 API hooks 且 Cobalt Strike Beacon shellcode 已写入 thread buffer 后,malware 会调用 ResumeThread API 来恢复已挂起的线程并开始执行 beacon。”
尽管 SharkLoader 本身不包含 persistence mechanisms,但已发现 threat actor 利用 Registry Run keys 和 scheduled tasks 作为一种方式,在用户登录时,甚至在没有用户登录的情况下,激活 “SystemSettings.exe” 的启动。
这些攻击还包括在初始入侵和 persistence 之后进行的广泛 reconnaissance phase,threat actor 会进行 Active Directory enumeration、通过针对 LSASS process 和 NTDS database file 实施 credential theft,以及部署开源扫描器和信息收集工具,如 FScan、Searchall 和 Pillager。
由于没有发现 active data exfiltration,目前尚不清楚 StrikeShark 的最终目标是什么。不过,对政府和软件开发组织的针对性表明,这场 cyber espionage 可能意在搜集政治 intelligence 或 intellectual property。
“Kaspersky 同时表示,SharkLoader 和 Cobalt Strike 的使用,再加上对 public-facing applications 以及恶意 installers 和 droppers 的利用,表明攻击者也可能在机会主义地针对 vulnerable systems。” “到目前为止,没有明确的数据 exfiltration 证据并不能排除这种可能性,因为 Cobalt Strike 的 file operation 和 data exfiltration modules 可能会在后期被使用。”