威胁狩猎
SkillDev tools威胁狩猎方法论:假设驱动、遥测源选择、基线对比与验证闭环。 触发词:威胁狩猎、狩猎、hunting、假设驱动、遥测分析、异常检测。
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the 威胁狩猎 skill
What this skill tells your AI
The instructions your AI receives, as published by dslsdzc/rev-skills in .claude/skills/re-hunting/SKILL.md and read by ahel’s review.
何时使用 / 何时不用
- 用:主动狩猎请求(「环境里有没有 X 的活动」)、假设驱动的环境排查、威胁情报落地(情报线索转环境内搜索)
- 用:基线驱动的异常发现(无特定情报时先建基线再找偏离)
- 用:事件后扩大排查(一次确认命中 → 同 TTP/同基础设施再查一遍,找漏网)
- 用:告警驱动追溯(一次告警 → 反向狩猎同类未告警行为,找漏网)
- 不用:纯合规巡检(无假设的定期报表是运营不是狩猎,两者流程不同)
- 不用:已知样本分析([[re-behavior]]);IOC 查询([[re-ti]]);单点证据深挖(各域技能)
- 不用:应急响应单点处置(狩猎是主动面,应急是被动触发,结论可互哺但流程不同)
- 不用:无遥测来源时(数据源缺失无法支撑假设验证,先补齐采集再狩猎,见 [[gotchas]])
- 不用:设备/主机级单点排查(那是各域技能的事,狩猎面向环境整体)
工具准备
日志分析工具(通用)
- 多平台: jq / grep / awk(各发行版自带或
apt install jq/brew install jq) - 验证:
jq --version - python3(基线统计/聚类脚本):安装见 [[re-python]] 工具准备
- 快速频次统计:
grep -E+sort | uniq -c(基线初版可用)
遥测查询(按环境)
- SIEM/EDR 查询接口(按部署环境给查询指引,工具不绑定)
- 本地日志:
journalctl(Linux,结构化过滤:journalctl -o json --since "24 hours ago" | jq ...);PowerShellGet-WinEvent(Windows,如Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4624} -MaxEvents 100) - 网络遥测: 流量/防火墙日志(深挖见 [[re-netcap]])
- Windows 常用事件 ID(按环境实际启用情况核对):4624/4625 登录成功/失败、4688 进程创建、Sysmon 1 进程创建、Sysmon 11 文件创建
ATT&CK 导航(假设对齐参考)
- 网页工具(公开访问);本地可下载 Navigator 层文件;规则匹配格式可参考 Sigma(公开规则格式,按环境适配)
- 覆盖对照:结束后用 Navigator 层标记已覆盖技术,产出覆盖率声明(与盲区对照)
操作步骤
按顺序执行;假设明确再动手(坑 5)。每步产物存档(路径 + sha256,见 [[re-triage]])。
-
狩猎假设生成:
- 输入:威胁情报([[re-ti]])、已知攻击模式([[re-behavior]] 经验)、环境特征(暴露面/业务/历史事件)、红队/演练报告(已知成功路径优先查)
- 假设句式:「攻击者可能通过 X 技术在环境内做了 Y」——X 对齐 ATT&CK 技术,Y 是可观测的遥测痕迹
- 可证伪性检查:每个假设写得出「若为假应看到什么」(反证形态),写不出的不查
- 情报可检测性映射:情报的每条 IOC/TTP 都要回答「在环境里对应哪个遥测痕迹」;对不上的列为盲区假设
- 优先级:影响 × 可能性 × 可检测性(三者都低的不值得查)
- 假设数量控制:单轮 3-5 个高优先级假设(过多则无法深入验证)
- 假设卡片:编号/句式/来源情报/遥测痕迹/反证形态/优先级
- 产出:假设列表(每个假设 = 可证伪的搜索目标;按技术族覆盖多假设,避免单点)
-
遥测源选择:
-
按假设选数据源:进程行为 → EDR/进程日志(Windows 4688/Sysmon 1);网络 → 流量/防火墙日志;登录 → 认证日志(4624/4625);文件 → 文件系统监控(Sysmon 11)
-
数据源缺失 → 标注盲区(结论的有效性边界,见 [[gotchas]] 盲区坑)
-
同一假设有多个数据源时先查覆盖最全的,再交叉验证
-
先验证遥测管道健康(收一条已知测试事件),再信「无告警」
-
时间归一:各数据源时间戳统一为 UTC 与同格式(ISO8601),跨源比较前先做
-
数据源映射示例(按环境核对实际事件 ID):
假设侧重 数据源 事件/日志 缺失时 进程/执行 EDR、进程日志 4688、Sysmon 1 无法验证执行链 网络外联 流量/防火墙/代理 连接日志/NetFlow 无法验证外联行为 登录/凭据 认证日志 4624/4625 无法验证撞库/横向 文件落地 文件系统审计 Sysmon 11 无法验证投放
-
-
基线 vs 异常:
- 基线:正常窗口的统计分布(频率/来源/目标特征)——窗口选已知干净时段且覆盖业务周期(见坑 1)
- 统计方法:频率分布/百分位基线/环比突变(与上一窗口对比);用 python3 脚本做分布统计
- 异常检测:偏离基线的行为(新进程链、非常规时段、异常目标)、规则匹配(已知模式)
- 启发式异常示例:首次出现的进程/域名、非工作时间登录、罕见端口外联
- 聚类:异常条目按特征聚类(进程名/路径/目标域名/时间窗),减少人工逐个审查
- 聚类产出:异常组清单(每组:特征/数量/时间范围/关联假设编号)
- 基线产物:按实体的频率分布表(top N 进程/域名/登录源)+ 阈值建议
-
验证闭环:
- 命中确认:异常 → 深挖([[re-behavior]] 行为分析、[[re-variant]] 样本关联、[[re-netcap]] 网络侧核对)
- 误报排除:白名单核对、环境解释(合法变更/维护窗口)、与业务方确认
- 排除后留档:误报判定记录(为什么排除),复查不重复分析
- 白名单是动态资产:确认合法后入白名单(附原因),环境变化定期复查
- 证据存档:按 [[re-analyze/analysis-contract]] 复核格式(结论/证据/置信度)
- 闭环输出:确认命中 → 事件报告(含 IOC 沉淀,可转 [[re-ioc]]);未命中 → 假设归档(可复跑,标注盲区)
- 命中后扩大复查:同 TTP/同源再扫一遍(狩猎是迭代不是一次性)
- 复盘产出:假设命中率统计(下轮优先级依据)
- 交付结构:假设清单(含盲区)→ 命中列表(分级)→ 证据包路径 → 建议(规则/采集补强)
- 判定分级与终止条件见 [[decision-tree]](确认/可疑/未证实/未命中四级)
跨域联合
- [[re-forensics]] 网关:本技能归属
- [[re-ti]]:情报输入(假设来源)
- [[re-behavior]]:命中深挖(行为证据)
- [[re-variant]]:样本关联
- [[re-netcap]]:网络遥测深挖
- [[re-ioc]]:命中指标沉淀(YARA/规则)
- [[re-triage]]:产物存档规范(路径 + sha256)
- [[re-analyze/analysis-contract]]:结论按复核格式交付
常见坑与陷阱
- 基线污染:现象——异常被视为正常;原因——环境本身已被攻陷(基线含恶意活动);对策——基线窗口选择在已知干净时段,标注基线假设
- 遥测缺失盲区:现象——无异常结论但环境有活动;原因——关键数据源未采集;对策——步骤 2 显式标注盲区,结论限定「在已采集遥测内」
- 误报疲劳:现象——大量命中无人深挖;原因——规则过宽/阈值过低;对策——先聚类再审查,阈值按基线校准
- 假设过窄:现象——只查了一个技术;原因——假设单一;对策——按 ATT&CK 技术族生成多假设(覆盖率声明)
- 结论过强:现象——「环境干净」声明;原因——未标注盲区与假设边界;对策——结论带限定(见坑 2)
- 确认偏误:现象——只找支持假设的证据,忽略反证;原因——先有结论再找证据;对策——每个假设列「若为假应看到什么」,反证同样记录
- 时钟偏差/时区:现象——事件序列对不上;原因——端侧时钟未校准;对策——先归一 UTC,标注时间源
- 无告警 ≠ 无活动:现象——规则匹配全空即宣布安全;原因——监控盲区/规则逃逸/告警系统降级;对策——「已采集+已覆盖技术」与「未覆盖」分开陈述
- 只查一遍不复查:现象——命中处理后不再扩大范围;原因——把狩猎当一次性任务;对策——命中后按同 TTP/同基础设施再查,迭代两轮
- 查询权限不足:现象——结论带盲区但未标注;原因——只拿到部分数据源权限;对策——列出未授权数据源,结论限定在已授权范围
- 基线窗口含维护期:现象——维护窗口的合法大动作被当异常/污染基线;原因——窗口选择粗糙;对策——基线窗口排除维护期并标注
- 命中即定性:现象——单条日志命中即报事件;原因——未做环境解释;对策——过「环境解释」关再定性(决策树分级表)
- 任务类型选择、命中分级与归档规则见 [[decision-tree]] / [[gotchas]]
Signals
- GitHub stars
- 57
- Forks
- 8
- Last commit
- Sep 2026
ahel review
K1binfo
installs-packages
Automated review, not a security audit. Ruleset v1+k2.
Advanced
- Catalog kind
- skill
- Gateway key
re-hunting- Source
- github.com/dslsdzc/rev-skills