Lace TempestDEV-0950利用 SysAid CVE-2023-47246 攻击链的 Sigma 检测规则全解析【免费下载链接】sigmaMain Sigma Rule Repository项目地址: https://gitcode.com/GitHub_Trending/si/sigma导读本文以当前仓库 rules-emerging-threats/2023/TA/Lace-Tempest 目录为核心完整解析微软代号为 Lace TempestDEV-0950的 APT 组织如何利用 SysAid 本地部署On-Premises软件的零日漏洞 CVE-2023-47246 入侵主机以及该目录下 5 条 Sigma 检测规则分别从文件事件、PowerShell 脚本日志与进程创建三个日志源覆盖攻击链的哪些环节。读完本文你将掌握每条规则的检测逻辑、日志源依赖、部署前提与误报控制策略并能在自己的 Windows 环境中落地这些新兴威胁检测能力。攻击背景SysAid 零日漏洞与 Lace Tempest 的完整入侵链该目录的 README即本篇文章的主体依据记录了一次典型的零日漏洞 → WebShell → 横向载荷攻击事件漏洞入口攻击者利用 SysAid 本地部署软件中的一个零日漏洞后编号为 CVE-2023-47246该漏洞允许未授权访问。WebShell 落地威胁行为者将一个包含 WebShell 及其他 payload 的WAR 归档文件上传至 SysAid Tomcat Web 服务的 webrootusersfiles目录中。远程控制WebShell 为攻击者提供了对受影响系统的未授权访问与控制能力。PowerShell 脚本投放攻击者通过 WebShell 部署一个 PowerShell 脚本用于在受害主机上执行名为user.exe的恶意加载器malware loader。最终载荷该加载器负责加载GraceWire 木马。从威胁情报角度Lace Tempest 是微软追踪的勒索软件尤其是 Cl0p关联组织DEV-0950 是其曾用编号之一。本文不重复该组织的泛化背景而是聚焦于本仓库中与其 SysAid 入侵行为直接相关的检测规则资产。规则所在目录的定位Emerging Threats 的 TA 子目录在深入规则之前有必要先理解这些规则在仓库中的组织方式。当前仓库的 rules-emerging-threats 目录专门承载 Sigma 的emerging-threats分类规则其设计目标见 rules-emerging-threats/README.md是覆盖特定时间窗口内时效性强、相关性高的具体威胁包括特定 APT 攻击活动、零日漏洞利用、攻击中使用的特定恶意软件等。该目录按年份组织每年份下可包含三个子目录Exploits覆盖漏洞利用的规则Malware覆盖恶意软件、勒索软件及任何可疑软件TA覆盖 APT、威胁行为者及相关恶意活动。本文讨论的 5 条规则全部位于2023/TA/Lace-Tempest/下属于典型的按威胁行为者TA归档的检测包与3CX-Supply-Chain、PaperCut-Print-Management-Exploitation、FIN7等目录并列。它们由 Nasreddine BencherchaliNextron Systems于 2023-11-09 编写状态均为test表示规则已具备完整结构但尚未经历大规模生产环境验证部署时建议先在小范围日志源上观察告警质量。五条规则逐一深度解析该目录下的 5 条规则覆盖了攻击链中三个不同的日志源file_event、ps_script、process_creation。以下逐一给出完整检测逻辑与逐字段解读。1. 文件指示器WebShell 与载荷落地的第一道防线规则文件file_event_win_apt_lace_tempest_indicators.yml规则 IDe94486ea-2650-4548-bf25-88cbd0bb32d7描述检测具有特定名称或后缀的 PowerShell 脚本文件创建行为这些命名模式在 FIN7 的 PowerShell 脚本中经常出现Lace Tempest 与 FIN7 存在工具链相似性故规则描述中引用了 FIN7 的观察。日志源file_event/windows检测逻辑detection: selection: - TargetFilename|endswith: - :\Program Files\SysAidServer\tomcat\webapps\usersfiles\user.exe - :\Program Files\SysAidServer\tomcat\webapps\usersfiles.war - :\Program Files\SysAidServer\tomcat\webapps\leave - TargetFilename|contains: :\Program Files\SysAidServer\tomcat\webapps\user. condition: selection该规则的selection由两个子条件组成YAML 列表与contains的 OR 关系TargetFilename|endswith精确匹配三条以:\Program Files\SysAidServer\tomcat\webapps\为前缀的路径后缀usersfiles\user.exe即最终执行的恶意加载器可执行文件usersfiles.war攻击者上传的包含 WebShell 的 WAR 归档leave与证据擦除脚本中出现过的清理目标相关的目录名。TargetFilename|contains则用模糊匹配捕获webapps\user.前缀下的任意文件如user.jsp、user.war等变体以覆盖攻击者可能的文件重命名变种。误报评估Unlikely。正常情况下 SysAidServer 的 webapps 目录只应出现产品自身的部署文件出现user.*或usersfiles.war是异常事件。level: high表明一旦命中应立即调查。2. PowerShell 证据擦除脚本反取证行为的指纹规则文件posh_ps_apt_lace_tempest_eraser_script.yml规则 IDb377ddab-502d-4519-9e8c-5590033d2d70描述检测 Lace Tempest 用于擦除受害服务器证据的 PowerShell 脚本基于 SysAid 团队披露内容。日志源ps_script/windows前置条件必须启用 PowerShell Script Block Logging脚本块日志。这一点在规则头的definition字段中明确声明部署时必须确保 GPO 或主机策略已开启 Script Block Logging否则该规则将无数据可检测。检测逻辑detection: selection: ScriptBlockText|contains|all: - cleanLL - usersfiles.war - Remove-Item -Path $tomcat_dir - SysAidServer - sleep - while(1) condition: selectionScriptBlockText|contains|all表示六个子串必须全部命中同一脚本块这是强特征组合cleanLL脚本内部自定义的函数或变量名清理逻辑标识usersfiles.war指向攻击者上传的 WAR 归档Remove-Item -Path $tomcat_dir删除 Tomcat 目录下文件的命令片段SysAidServer目标服务路径关键字sleep与while(1)脚本中反复休眠轮询的循环结构用于确保清理逻辑持续运行。六个特征共同出现几乎不可能在正常运维脚本中偶然命中因此误报评估为Unlikelylevel: high。3. PowerShell 恶意加载器启动脚本user.exe 的启动器规则文件posh_ps_apt_lace_tempest_malware_launcher.yml规则 ID37dc5463-f7e3-4f61-ad76-ba59cd02a651描述检测 Lace Tempest 用于启动其恶意加载器的 PowerShell 脚本基于 SysAid 团队披露内容。日志源ps_script/windows同样要求启用 Script Block Logging。检测逻辑detection: selection: ScriptBlockText|contains|all: - \SysAidServer\tomcat\webapps - Starting user.exe - \usersfiles\user.exe - Remove-Item -Force $wapps - (Sophos). condition: selection五个contains|all特征组合刻画了启动器的完整行为\SysAidServer\tomcat\webapps操作目标位于 SysAid Tomcat 部署目录Starting user.exe启动加载器时的日志/提示字符串\usersfiles\user.exe加载器的实际路径Remove-Item -Force $wapps启动后强制删除 webapps 相关文件以清理痕迹-Force表明绕过只读/隐藏属性(Sophos).脚本中疑似包含针对 Sophos 杀软检测逻辑的字符串。值得注意的是该规则与第 2 条擦除脚本规则都依赖ps_script日志二者组合可以还原启动加载器 → 清理证据的完整脚本行为。误报Unlikelylevel: high。4. Cobalt Strike 下载PowerShell 内存加载的经典模式规则文件proc_creation_win_apt_lace_tempest_cobalt_strike_download.yml规则 IDaa5b0a40-ed88-46aa-9fdc-0337b379ca9d描述检测 Lace Tempest 用于下载 Cobalt Strike 的特定命令行基于 SysAid 团队披露内容。日志源process_creation/windows检测逻辑detection: selection: CommandLine|contains|all: - -nop -w hidden -c IEX ((new-object net.webclient).downloadstring( - /a) condition: selection两个子串必须同时出现在命令中-nop -w hidden -c IEX ((new-object net.webclient).downloadstring(这是 PowerShell内存中下载执行的经典一句命令download cradle-nopNoProfile与-w hiddenWindowStyle Hidden是规避监控的常见参数/a下载 URL 的结尾特征匹配以/a结尾的下载地址片段例如.../a形式的短路径。该命令模式本身并不新鲜任何安全团队都应对IEX (new-object net.webclient).downloadstring(保持警惕但将其与/a结尾组合是针对本次 Lace Tempest 活动中特定 C2/分发 URL 结构的定制化检测。误报Unlikelylevel: high。5. 恶意加载器执行文件名 哈希双保险规则文件proc_creation_win_apt_lace_tempest_loader_execution.yml规则 ID745ea50b-9673-4ba7-9426-cb45cf4a8e6d描述基于文件名和哈希检测 Lace Tempest 用于加载其他恶意软件的特定二进制基于 SysAid 团队披露内容。日志源process_creation/windows检测逻辑detection: selection_img: Image|endswith: :\Program Files\SysAidServer\tomcat\webapps\usersfiles\user.exe selection_hash: Hashes|contains: SHA256B5ACF14CDAC40BE590318DEE95425D0746E85B1B7B1CBD14DA66F21F2522BF4D condition: 1 of selection_*这是五条规则中**唯一同时使用静态 IOC哈希与行为特征路径**的规则selection_img进程映像路径以:\Program Files\SysAidServer\tomcat\webapps\usersfiles\user.exe结尾——即攻击者上传到 webroot 的加载器selection_hash进程哈希包含SHA256B5ACF14CDAC40BE590318DEE95425D0746E85B1B7B1CBD14DA66F21F2522BF4D——Lace Tempest 使用的user.exe样本的已知 SHA256condition: 1 of selection_*两个子条件满足其一即告警OR 逻辑既能捕获原样样本哈希命中也能捕获重命名或拷贝到其他路径的变体路径命中。使用注意哈希条件属于一次性 IOC仅对本次活动中已披露的样本有效路径条件则具备更长的有效期因为 SysAidServer 的 webapps 目录下出现可执行文件本身就是强异常。误报Unlikelylevel: high。攻击链与规则的映射关系将五条规则放入攻击阶段可以清晰看到检测覆盖的完整链路攻击阶段攻击行为对应规则日志源初始访问/漏洞利用上传包含 WebShell 的 WAR 到 SysAid Tomcat webroot文件指示器file_event执行/持久化WebShell 提供远程控制投放 PowerShell 启动脚本恶意加载器启动脚本ps_script执行运行user.exe恶意加载器加载器执行process_creation命令与控制PowerShell 下载 Cobalt Strike 等后续工具Cobalt Strike 下载process_creation防御规避PowerShell 擦除 webapps 目录中的攻击痕迹证据擦除脚本ps_script五条规则相互配合形成文件落地 → 脚本启动 → 进程执行 → 后续下载 → 痕迹清理的纵深覆盖。攻击者无论在哪一环暴露都可能触发告警而清理证据的脚本本身第 2 条恰是攻击者最后一击的反取证行为往往是检测时间窗口中最有价值的一环。日志源部署前提Script Block Logging 是关键两条 PowerShell 规则擦除脚本与加载器启动都依赖ps_script日志源其definition字段明确写着Requirements: Script Block Logging must be enabled。这意味着若目标 Windows 主机未启用 PowerShell Script Block Logging默认情况下 Windows 事件日志 4104 事件不会完整记录脚本块内容这两条规则将静默失效不会产生任何命中建议在域环境通过组策略启用PowerShell 脚本块日志记录同时考虑开启 Transcription转录日志作为补充file_event规则依赖 Sysmon 或同类文件事件采集器如 Sysmon 事件 ID 11process_creation规则依赖 Sysmon 事件 ID 1 或 Windows 安全审计 4688 启用命令行记录——这两类数据源在 Sigma 的 logsource 指南 中有更详细的配置说明。与仓库中其他 SysAid 规则的协同当前仓库的正式规则库中还存在另一条与 SysAid 服务相关的检测规则proc_creation_win_java_sysaidserver_susp_child_process.ymlID60bfeac3-0d35-4302-8efb-1dd16f715bc6。该规则检测java.exe/javaw.exe且命令行包含SysAidServer的父进程派生的可疑子进程源自 MERCURY 组织利用 Log4j 漏洞攻击以色列组织的活动level: medium误报Unknown。两条规则虽然针对不同的攻击事件MERCURY 的 Log4j 利用 vs. Lace Tempest 的 CVE-2023-47246但存在天然的互补关系前者从父进程视角监控 SysAidServer 的 Java 进程派生了什么本目录的规则从文件落地、脚本执行、子进程路径/哈希等视角监控攻击载荷本身。在 SysAid 未及时修补的环境里将两类规则同时部署可以同时捕获利用入口与载荷落地两个阶段的行为。部署与调优建议规则状态认知5 条规则status: test且falsepositives均标注为Unlikely——两者组合的实践含义是可以直接部署试运行先以监控模式不阻断观察 12 周确认无环境相关误报后再转为告警/联动处置。优先级排序level: high的 5 条规则应获得较高告警优先级其中哈希类规则第 5 条属于确定性 IOC可视为准确定位路径类与脚本特征类规则建议结合主机上下文二次确认。数据源完备性检查部署前务必核对三件事——Sysmon 或等效工具是否在采集file_event与process_creationPowerShell Script Block Logging 是否开启否则两条ps_script规则失效事件采集链路是否覆盖SysAidServer所在主机。结合补丁状态CVE-2023-47246 属于零日利用最根本的缓解是升级 SysAid 到修复版本检测规则的价值在于补丁窗口期与事后溯源。若环境中仍有未升级的 SysAidServer建议同时启用 Suspicious SysAidServer Child 规则强化覆盖。小结Lace Tempest 的 SysAid 入侵事件完整展示了零日漏洞 WebShell 内存加载 痕迹清理的现代 APT 攻击范式。本目录的 5 条 Sigma 规则以最小化的检测特征路径、脚本块子串、命令行片段、哈希覆盖了攻击链的五个关键环节且全部聚焦于SysAidServer\tomcat\webapps这一强异常区域误报面极窄。对于部署了 SysAid 本地版的企业这套规则是补丁之外最直接的检测资产对于安全研究者和 SIEM 工程师它也是理解按威胁行为者组织新兴威胁检测规则这一 Sigma 最佳实践的典型范例。【免费下载链接】sigmaMain Sigma Rule Repository项目地址: https://gitcode.com/GitHub_Trending/si/sigma创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考