L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Productivité · SKILL.md

detecting-dll-sideloading-attacks

detecting-dll-sideloading-attacks

检测 DLL 侧加载攻击,攻击者将恶意 DLL 放置在合法应用程序旁以劫持执行流程,实现防御规避。

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: detecting-dll-sideloading-attacks description: 检测 DLL 侧加载攻击,攻击者将恶意 DLL 放置在合法应用程序旁以劫持执行流程,实现防御规避。 domain: cybersecurity subdomain: threat-hunting tags: [threat-hunting, mitre-attack, dll-sideloading, defense-evasion, t1574, edr, proactive-detection] version: "1.0" author: mahipal license: Apache-2.0

检测 DLL 侧加载攻击

适用场景

  • 调查企业环境中潜在的 DLL 劫持时
  • EDR 告警显示已签名应用程序加载未签名 DLL 后
  • 狩猎使用合法应用程序包装器进行 APT 持久化时
  • 事件响应期间识别木马化应用程序时
  • 威胁情报表明 DLL 侧加载活动针对特定软件时

前置条件

  • 具备 DLL 加载监控功能的 EDR(CrowdStrike、MDE、SentinelOne)
  • 带哈希验证的 Sysmon 事件 ID 7(镜像加载)
  • 应用程序白名单或 DLL 完整性监控
  • 合法应用程序及预期 DLL 路径的软件清单
  • 代码签名验证能力

工作流程

  1. 识别侧加载目标:研究已知存在漏洞的、不使用完整路径限定加载 DLL 的应用程序(LOLBAS、DLL 侧加载数据库)。
  2. 监控 DLL 加载事件:查询 Sysmon 事件 ID 7,查找 DLL 路径与应用程序预期目录不同的 DLL 加载。
  3. 检查 DLL 签名:标记由已签名可执行文件加载的未签名或不受信任的 DLL。
  4. 检测路径异常:识别从异常位置(Temp、AppData、Public)运行的合法可执行文件,这些可能是诱饵包装器。
  5. 哈希验证:将加载的 DLL 哈希与已知良好版本和威胁情报 feeds 进行比对。
  6. 与进程行为关联:检查宿主进程在加载可疑 DLL 后是否表现出异常行为(网络连接、子进程)。
  7. 记录与修复:报告侧加载实例,隔离恶意 DLL,并更新检测规则。

核心概念

概念描述
T1574.002DLL 侧加载(DLL Side-Loading)
T1574.001DLL 搜索顺序劫持
T1574.006动态链接器劫持
T1574.008通过搜索顺序劫持进行路径拦截
DLL 搜索顺序Windows DLL 加载优先级路径
侧加载将恶意 DLL 放置在合法应用程序加载的位置
幻影 DLL合法应用程序尝试加载但不存在的 DLL
DLL 代理恶意 DLL 将调用转发给合法 DLL

工具与系统

工具用途
Sysmon事件 ID 7 DLL 加载监控
CrowdStrike Falcon带进程上下文的 DLL 加载检测
Microsoft Defender for EndpointDLL 加载异常检测
Process Monitor实时 DLL 加载跟踪
DLL Export Viewer验证 DLL 导出函数
Sigcheck数字签名验证
pe-sieve代理 DLL 的 PE 分析

常见场景

  1. 合法应用程序包装器:攻击者将已签名应用程序(如 OneDrive 更新程序)复制到临时文件夹,并在旁边放置与预期依赖项同名的恶意 DLL。
  2. 幻影 DLL 利用:恶意 DLL 被放置在 PATH 路径中,合法应用程序在此处搜索不存在的 DLL。
  3. DLL 代理加载:恶意 version.dll 将所有导出代理到真实的 version.dll,同时在 DllMain 中执行恶意代码。
  4. 软件更新劫持:攻击者在合法更新程序加载之前,替换更新暂存目录中的 DLL。

输出格式

Hunt ID: TH-SIDELOAD-[DATE]-[SEQ]
Technique: T1574.002
Host Application: [合法已签名可执行文件]
Sideloaded DLL: [恶意 DLL 名称和路径]
Expected DLL Path: [DLL 应合法所在的位置]
DLL Signed: [是/否]
App Location: [预期/异常]
Host: [主机名]
Risk Level: [Critical/High/Medium/Low]
Skills enregistrées