课题研究 威胁情报分析研究 子课题07 · 第2页 / 共7页
07十大核心研究子课题 · 流程与数据

狩猎流程与数据源体系

狩猎假设再精妙,落在残缺的数据上也是空中楼阁。本页解决威胁狩猎的两个地基问题:一是把"假设—调查—发现—固化"的狩猎循环工程化为可执行的操作规范;二是建立覆盖终端、网络、身份、云与欺骗层的遥测数据源全景,并给出数据采集粒度与留存基线建议。查询语言按KQL/SPL/EQL分层设计,保证狩猎方案在不同SIEM/EDR平台上可移植、可复现。本页全部数据与文献均经2026年9月终审逐项核验。

狩猎循环假设工程遥测数据SysmonKQL / SPL / EQL研究状态:研究中
所属阶段生命周期 · 消费与反馈
目标受众威胁狩猎师、SOC分析师、检测工程师
本页结构操作循环 → 假设工程 → 数据源 → 留存基线 → 查询语言 → 成本控制

01 · 狩猎循环操作规范

Sqrrl狩猎循环把威胁狩猎抽象为四阶段闭环,其核心设计思想是:每次狩猎都必须以"自动化"收尾——无论发现威胁与否,狩猎产出的查询逻辑、排除结论都应转化为可复用资产,使下一次狩猎站在更高起点上。

狩猎循环四阶段(Sqrrl Hunting Loop)
第4阶段是强制收尾:人工发现必须沉淀为自动化分析能力,否则狩猎不成体系
来源:Sqrrl狩猎循环(David Bianco等),见第1页参考文献[5]。循环的两个隐性要求:假设必须可证伪(被推翻同样是有效产出);固化必须成文(规则入库、排除清单入库、假设标注结论),避免个人经验随人员流动而流失。

1.0.1 交付物填写示例(教学样板)

以下为一个按假设模板完整填写的示例,展示"一句话假设"如何展开为可执行的四件套(假设、查询、判定、固化):

假设陈述:攻击者可能通过RDP在工作站之间横向移动(ATT&CK T1021.001),
           因为M-Trends 2026与CrowdStrike 2026 GTR均记录横向扩散时间窗已压缩至分钟级。
依据来源:情报——M-Trends 2026 / CrowdStrike 2026 GTR;知识库——ATT&CK T1021.001
预期观测:AD安全日志中工作站到工作站、登录类型10(RemoteInteractive)的
           4624成功登录,且登录账户为用户账户(非机器账户)、登录源非运维跳板机
检索范围:近90天 × AD安全日志 × 全量工作站(按资产清单排除服务器网段)
证伪条件:查询零命中;或全部命中均可由"开发测试互访清单"解释并登记
处置分支:命中未登记来源 → 证据链归档 → 升级IR(按第5页§03证据包标准);
           零命中 → 排除逻辑(为何正常流量无此特征)写入假设库

注:本示例为方法论样板,字段取值需按本组织资产清单、命名约定与排除清单替换;事件编号语义以微软官方文档为准。

1.1 每次狩猎的最低交付标准

  • 假设文档:一句话假设陈述 + 依据来源 + 预期观测行为 + 证伪条件。
  • 查询方案:可复现的查询语句(含时间窗、数据源、过滤条件),入查询库。
  • 结论记录:发现(含证据链)或未发现的排除逻辑,均标注置信度。
  • 固化动作:发现→转SIGMA规则进入检测工程流程;未发现→排除逻辑写入假设库,避免重复狩猎。

02 · 假设工程方法

假设是狩猎的货币。高质量假设有三个特征:具体(指向明确行为而非"找异常")、可证伪(存在明确的推翻条件)、有依据(来自情报、知识库或环境洞察而非臆测)。

2.1 假设的三个生成来源

来源生成方式示例假设适配阶段
威胁情报驱动从情报报告、漏洞公告、行业通报中提取TTP,转化为"本组织是否存在相同行为"的假设"报告披露某团伙滥用云存储服务做C2——查本组织是否有进程异常连接该类域名"HM1起步即可
ATT&CK驱动选取矩阵中本组织无检测覆盖或业务高相关的技术,逐项提出假设"攻击者可能通过RDP(T1021.001)横向移动——查非常规时段/非常规源的工作站RDP登录"HM2主力方法
环境洞察驱动结合资产清单、暴露面、历史事件、业务季节性提出本组织特有假设"财务结账期攻击者可能针对财务共享目录——查该目录非常规访问与批量读取"HM3核心能力

2.1.1 情报TTP提取示例(示意)

假设生成的第一道工艺是"从情报文本中剥离攻击行为并翻译为查询目标"。下表展示转化链条(示例行为为领域常见技战术的通用描述,具体组织应以来源报告的原始表述为准):

情报观察(报告中看到什么)行为抽象ATT&CK映射狩猎假设示例
某团伙使用PowerShell下载并执行载荷脚本解释器下载执行T1059.001是否存在非管理员账户在非工作时段执行带下载参数(-enc/-ep bypass等)的powershell.exe
滥用rundll32/regsvr32执行恶意代码签名系统二进制代理执行T1218.011 / T1218.010办公进程(Office/浏览器)的子孙进程中是否出现带脚本协议或异常DLL路径的rundll32/regsvr32调用
创建服务实现持久化创建或修改系统进程/服务T1543.003近90天服务安装事件(7045)是否超出基线——重点核查服务路径指向用户可写目录或临时目录的条目
通过DNS TXT记录与外联应用层协议滥用做C2T1071.004是否存在客户端高频、高熵、长域名(或TXT查询占比异常)的DNS外联模式

注:本表为转化方法示意(教学用),ATT&CK技术编号可在attack.mitre.org逐项核验;真实情报消化时应逐条引用报告原文并标注页码,避免二手转述引入偏差。

2.2 假设模板(本课题推荐结构)

假设陈述:攻击者可能通过【行为描述】实现【战术目标】,因为【依据来源】。
依据来源:情报报告名称/ATT&CK技术编号/环境事件编号
预期观测:数据源A中的字段X取值Y;数据源B中的行为模式Z
检索范围:时间窗(建议≥30天回溯)× 数据源 × 资产范围
证伪条件:查询零命中,或命中均可由【已登记的正常行为】解释
处置分支:发现→证据链固化→转检测规则;未现→排除逻辑入库

为什么强调"证伪也是产出":未命中的假设排除了一类风险路径,其排除逻辑(为何正常流量会造成相似特征)是组织最稀缺的防御知识之一。没有排除清单积累的团队会反复狩猎同一假设,成本翻倍而认知不增。

03 · 狩猎执行节奏

狩猎不是一次性项目,而是有节奏的常态运营。本课题推荐"周狩猎"制:每周固定投入狩猎窗口(建议SOC在告警负载之外划出独立时段),按季度轮换战术主题(本季度聚焦横向移动、下季度聚焦凭证访问),使覆盖度沿ATT&CK矩阵均衡推进而非随缘触碰。

  • 计划(周初):从假设库挑选2—4个高优先级假设,确定数据源与时间窗。
  • 执行(周内):执行查询,对命中做逐条甄别(关联资产属主、业务上下文、历史基线)。
  • 验证(周末前):对疑似发现做独立复核(第二人复核或换数据源交叉验证),避免单源误判。
  • 固化(周末):按§01交付标准归档,更新假设库与排除清单。

04 · 遥测数据源全景

狩猎的可见性由数据源决定。下表梳理六类遥测源、典型数据内容与狩猎价值,数据质量要求贯穿其中:

数据源典型内容高价值狩猎视角关键采集点
终端遥测进程创建、命令行、镜像加载、注册表、文件落地LOLBins滥用、无文件攻击、持久化机制、凭证转储痕迹Windows进程创建审核(事件4688,需开启命令行审核)、Sysmon(进程创建事件1、网络连接3、远程线程创建8等)、EDR全量遥测
网络遥测网络连接、DNS查询、代理访问、NetFlow、被动DNS可疑外联、DNS隧道、罕见目的地、C2心跳周期、数据渗出防火墙/代理日志、DNS解析日志、NDR流量元数据、被动DNS
身份遥测认证事件、票据请求、权限变更、组变更异常登录(非常规时段/来源/频率)、Kerberoasting、特权提升、影子账号AD安全事件(4624/4625登录、4672特权指派、4768/4769票据、7045服务安装、4720账号创建)、IdP登录日志(如Microsoft Entra ID)
云平台遥测管理面操作、IAM变更、存储访问、审计日志密钥泄露滥用、权限提升、存储桶异常读取、跨区域异常操作AWS CloudTrail、Azure Activity Log、GCP Cloud Audit Logs、Kubernetes审计日志
应用与邮件邮件网关投递与点击、Web应用访问、办公套件日志钓鱼邮件落地与二次传播、邮箱规则滥用、恶意附件执行邮件网关日志、Web代理、协作平台审计日志
欺骗层蜜罐/蜜标/金丝雀凭证的触碰记录低误报的早期预警:任何触碰即高度可疑内部蜜罐会话、诱饵文件访问、金丝雀凭据使用告警

数据源组合原则:单一数据源只能讲半个故事。进程日志告诉你"做了什么",网络日志告诉你"和谁通信",身份日志告诉你"以谁的身份"。狩猎分析必须跨源关联(如4688进程创建 ↔ Sysmon网络连接3 ↔ DNS查询 ↔ 4624登录链),这也是第3页SIGMA规则设计logsource字段分层的根本原因。

注:Windows事件编号与Sysmon事件编号为微软官方文档定义的事件标识(Sysmon为微软Sysinternals工具,由Mark Russinovich主导开发),具体字段含义以微软官方文档为准。

4.1 数据质量六维检查表

同样的数据源,质量差异可以差出一个数量级的狩猎效率。每次狩猎假设设计前,先按六维核查数据可用性(任何一维不达标都应先走数据整改流程,而非硬写查询):

维度检查问题常见缺陷与后果
覆盖度目标行为涉及的每台主机/每个账户是否都产生日志?笔记本与服务器策略不一致、分支/并购资产遗漏 → 命中解释时出现"看不见的死角"
粒度关键字段是否齐全(进程命令行、父进程、用户名、源IP)?4688未开启命令行审核 → LOLBins狩猎基本失效;代理只记域名不记完整URI → 渗出狩猎受限
完整性是否存在日志丢失、截断、重复?管道缓冲区溢出静默丢日志 → 狩猎"零命中"可能是假阴性;需周期性对账(预期事件量vs实际入库量)
时延事件发生到可查询的间隔是多少?时延超过狩猎窗口 → 近实时假设无法执行;批量传输型日志源须在假设中显式声明时间窗边界
时钟一致性各源时间戳是否可拼接(NTP同步状态)?跨源关联(4624×Sysmon×DNS)依赖统一时间轴;时钟漂移几分钟即可斩断登录链重建
规范化同义字段是否统一映射(主机名大小写、账户格式、IP归属)?字段口径不一 → 关联查询漏配;应维护本组织数据字典并随采集变更更新

4.2 采集配置参考

  • Sysmon配置基线:Sysmon的价值高度依赖XML配置质量。社区有成熟配置可直接研究改造——SwiftOnSecurity维护的sysmon-config仓库与Olaf Hartong维护的sysmon-modular模块化配置(均为GitHub公开项目),覆盖进程、网络、注册表等关键事件的常用裁剪方案;组织应在测试环境验证开销后再推广。
  • Windows审核策略:除Sysmon外,原生审核策略需显式开启"审核进程创建"并勾选"在事件日志中包括命令行"(对应4688事件的CommandLine字段),否则进程狩猎将缺失最关键字段。
  • 时间同步:所有日志源统一接入组织NTP层级;狩猎工具包中应常备"时间漂移检查脚本",在跨源关联异常时第一时间核查时钟。
  • 日志量估算:留存基线落地前应做量级估算(每台Windows终端开启上述采集后,典型量级为每日数百MB至数GB事件日志,视配置裁剪而异;域控制器与DNS服务器通常高出一个量级),据此规划SIEM许可/存储与冷热分层,避免留存策略写在纸上、落地时被成本击穿。

注:Sysmon与Windows审核策略字段语义以微软官方文档为准;上述社区配置仓库以GitHub当期内容为准;日志量数值为工程经验量级,实际以本组织实测为准。

05 · 数据采集与留存基线(工程建议)

M-Trends 2026揭示的122天长驻留间谍案件意味着:回溯能力是狩猎的生死线。若遥测只留存7天,任何慢于一周的入侵对狩猎者都不可见。以下为工程实践建议(属本课题经验基线,非强制标准):

≥90天
关键遥测热数据留存
进程、身份、DNS等高频高价值日志建议可检索热留存不少于90天,覆盖多数攻击行动的发现窗口
≥12个月
摘要级冷留存
聚合摘要(如日粒度连接统计、登录统计)低成本冷留存一年以上,支撑长周期回溯与年度基线
全量命令行
进程遥测采集粒度
进程创建事件必须包含命令行参数——LOLBins狩猎(如rundll32、regsvr32滥用识别)高度依赖命令行内容

留存不足的真实代价(M-Trends 2026实证):Mandiant在2025年的一线调查中反复确认:多数组织仅保留90天以内的日志,而UNC6201/BRICKSTORM类长驻留边缘设备行动的平均活动周期远超该窗口——攻击者在"日志已删除"的时间带内自由活动,防御方既无法回溯确认入侵起点,也无法评估泄露范围。90天不是安全目标的上限,而是多数攻击行动的"起步窗口"的下限;将90天当作"合规完成线"的组织,等于主动放弃了对最危险攻击者(长驻留、慢速、高价值目标导向)的可见性。

采集合规提示:留存基线的落地须同步完成两件事:一是告知与最小化——终端与身份遥测涉及员工操作行为,采集范围限于安全分析必要字段,遵循最小必要原则;二是访问控制——狩猎查询权限按需授予、全程审计,查询结果按敏感等级管理。

06 · 查询语言组合

狩猎查询需要跨平台可移植。本课题要求每个狩猎假设的查询方案以SIGMA规则(平台无关)为规范载体,同时给出主流平台的落地写法对照:

语言平台特点与适用
KQLMicrosoft Sentinel / Defender(基于Azure Data Explorer的Kusto引擎)强类型、管道式语法、关联分析(join/cluster)表达力强,云原生生态完整
SPLSplunk平台生态最成熟、检索语言灵活、社区检测内容(如Splunk Security Content)丰富
EQLElastic Stack事件序列表达能力突出(sequence语法适合描述多步攻击链),端侧代理集成紧密
OSQuery跨平台终端SQL式查询以SQL查询终端实时状态(进程、连接、启动项),适合交互式排查与基线核查
EDR原生查询各EDR厂商 hunt 接口语义最接近遥测原始字段,用于厂商平台的深度下钻与响应联动

6.1 对照示例:异常RDP登录狩猎查询

假设:攻击者可能通过RDP在工作站之间横向移动(ATT&CK T1021.001)——检索"工作站到工作站的RDP登录"(服务器运维场景除外)。

// KQL(Microsoft Sentinel / Microsoft Defender XDR Advanced Hunting 同义骨架)
SecurityEvent
| where EventID == 4624 and LogonType == 10        // 4624=登录成功, Type 10=RemoteInteractive(RDP)
| where AccountType =~ "User"                      // 聚焦用户账户(自动排除以$结尾的机器账户)
| where Computer !endswith "-SV"                   // 排除服务器命名约定(按资产清单调整)
| summarize dc(TargetLogonId), min(TimeGenerated), max(TimeGenerated) by Account, Computer, IpAddress
| where IpAddress !in~ (已登记运维跳板机)           // 排除清单:登记的合法来源
# SPL(Splunk,Windows TA 数据模型字段)—— 同义对照
index=wineventlog EventCode=4624 Logon_Type=10
| search NOT Computer="*-SV"
| where NOT match(Account_Name, "\$$")            // 排除机器账户(名称以$结尾)
| stats earliest(_time) as first, latest(_time) as last, count by Account_Name, Computer, Source_Network_Address
| search NOT Source_Network_Address IN (已登记运维跳板机)

注:上述查询为方法示意(教学用骨架),实际部署需按本组织资产清单、命名约定与排除清单调整;SecurityEvent表的AccountType字段取值(User/Machine)与Splunk Windows TA字段名以各平台数据字典为准;事件编号与字段语义以微软官方文档为准。

6.2 对照示例:办公进程派生脚本解释器(EQL)

假设:攻击者通过钓鱼文档投递宏或利用漏洞,使Office进程派生脚本解释器执行载荷(对应第3页剧本B、第6页案例D所涉攻击链的通用前置行为)。

// EQL(Elastic Stack)—— 事件序列示例:Office启动后60秒内派生脚本引擎
sequence by process.entity_id with maxspan=60s
  [process where event.type == "start" and
     (process.name : "winword.exe" or process.name : "excel.exe" or process.name : "outlook.exe")]
  [process where event.type == "start" and
     process.name in ("powershell.exe", "cmd.exe", "wscript.exe", "mshta.exe", "rundll32.exe")]

6.3 对照示例:疑似DNS隧道(KQL骨架)

// KQL 教学骨架:按客户端统计"长域名、高离散"的可疑DNS查询
DnsEvents
| where TimeGenerated > ago(30d)
| extend NameLength = strlen(Name)
| where NameLength > 52                                  // 隧道型域名通常显著长于常规域名
| summarize QueryCount=count(), DistinctNames=dcount(Name) by ClientIP, bin(TimeGenerated, 1h)
| where DistinctNames > 30                               // 单位时间内大量离散子域
| order by QueryCount desc                               // 命中后需人工排除CDN、杀毒云查杀等正常高频源

注:EQL的sequence语法为Elastic官方文档定义的能力;上述查询均为教学骨架,阈值需按本组织DNS基线校准,命中后必须经§07交叉验证流程后方可定性。

07 · 误报与成本控制

  • 排除清单先行:任何假设执行前,先加载已登记的正常行为(运维跳板机、备份窗口、扫描器网段),从源头压噪。
  • 分层收敛:查询设计遵循"宽检索→聚合→聚焦"三级收敛,先粗筛再下钻,避免逐条检查原始事件。
  • 双人复核与交叉验证:疑似发现须经第二数据源独立验证(如身份日志×终端日志×网络日志三方印证),单源命中不得直接进入事件流程。
  • 时间盒纪律:单次狩猎设定时间盒(如4—8小时),超时未获决定性证据即归档为"待补充数据"而非无限下钻——控制机会成本是狩猎可持续运营的前提。

本节参考来源(第2页)

以下均为真实可查的权威来源,用于支撑本页事实性表述与技术事实;全部链接经2026年9月终审核验可访问。

[1]

Sqrrl《Hunt Evil: Your Practical Guide to Threat Hunting》(狩猎循环与HMM出处):threathunting.net/files/hunt-evil-practical-guide-threat-hunting.pdf

[2]

MITRE ATT&CK技术条目T1021.001(远程桌面协议):attack.mitre.org/techniques/T1021/001;T1059(命令与脚本解释器)、T1218(系统二进制代理执行)等家族条目:attack.mitre.org

[3]

微软官方文档:审核进程创建事件(事件4688)与Sysmon实用程序说明:learn.microsoft.com/.../event-4688;learn.microsoft.com/.../sysinternals/downloads/sysmon;LogonType字段语义:learn.microsoft.com/.../event-4624

[5]

OSQuery项目:osquery.io;Splunk PEAK狩猎框架:splunk.com/en_us/blog/security/peak-threat-hunting-framework.html;SwiftOnSecurity sysmon-config:github.com/SwiftOnSecurity/sysmon-config;sysmon-modular:github.com/olafhartong/sysmon-modular

[6]

Mandiant M-Trends 2026("多数组织仅保留90天以内日志"与BRICKSTORM/UNC6201长驻留观察):cloud.google.com/blog/topics/threat-intelligence/m-trends-2026