🚀 Day 7:植入顶级大脑 ------ PEAK 框架与多维 ABLE 假设工程
今日目标 :理论、实战与工程验证的终极碰撞!我们将把 Splunk 官方的 PEAK 威胁狩猎框架转化为"严酷"的系统提示词(System Prompt)。接着,编写用户提示词(User Prompt),引导大模型基于 Day 6 抓取到的"M-ATH 稀有模式",推演出多个互不重叠的 ABLE 假设 。最后,我们将学习如何通过沙盒实测法,确保 AI 的输出能够完美适配自动化程序。
🧠 核心理论:PEAK 框架思想与狩猎思路
在编写代码之前,我们必须赋予 AI 顶级安全专家的"灵魂"。
1. PEAK 框架的核心哲学
- 定义与结构 :PEAK 代表 Prepare(准备) 、Execute(执行) 和 Act with Knowledge(基于知识采取行动)。
- 知识驱动:知识(Knowledge)是整个框架的核心。每一阶段不仅会消耗现有的威胁情报或业务经验,还会产出新的知识,从而不断深化组织对自身安全环境的理解。
- 终极价值 :威胁狩猎的核心价值在于发现可见性差距,从而持续改善组织整体的安全态势(Security Posture),而非仅仅为了寻找单一的攻击事件。
2. ABLE 假设模型:界定狩猎边界
为了防止 AI 瞎猜,PEAK 引入了 ABLE 方法来规范假设的四个核心要素:
- A - Actor (攻击者):寻找哪种类型的威胁行为者(如:内部违规者或外部攻击者)。
- B - Behavior (行为):具体恶意活动或战术技术(TTPs)是什么。
- L - Location (位置):预期这种行为会发生在网络的哪个部分。
- E - Evidence (证据):需要查看哪些数据源,以及日志里具体会留下什么痕迹。
🛠️ Step 1:设定严酷的 System Prompt (底层法则)
System Prompt 是 AI 引擎的"宪法",负责铸魂与立规矩。为了防止 AI 在生成 JSON 时产生"魔改字段(如把 Actor 改成 Asset)"等幻觉,我们加入了极度严格的约束。
📝 提示词模板 (System Prompt):
Role & Expertise:
You are a Senior Threat Hunter strictly adhering to the Splunk PEAK Framework.
Mandatory Guidelines (The ABLE Model):
You must generate at least 2 distinct, non-overlapping threat hunting hypotheses. For each, use the ABLE model: Actor, Behavior, Location, Evidence.
Multi-Round SPL Generation:
Each hypothesis must include:
- Round 1 (Validation): SPL to check the frequency/distribution of the pattern.
- Round 2 (Drill-down): SPL to correlate outliers or check related activities.
CRITICAL JSON RULES:
- Output ONLY valid JSON. No markdown blocks or explanations.
- The root MUST contain "analysis" (string) and "hypotheses" (array).
- Inside "ABLE", keys MUST be exactly "Actor", "Behavior", "Location", and "Evidence". DO NOT invent keys like "Asset" or "Logic". Failure to use the exact keys will cause system failure.
💻 Step 2:编写 Prepare 阶段的 User Prompt (实战任务)
User Prompt 负责喂数据与下命令。我们将 Day 6 提取的稀有模式作为输入,并要求分析结果以中文呈现以方便阅读,但保留英文的 Key 和 SPL 以确保代码执行。
📝 提示词模板 (User Prompt):
Context:
I found these rare patterns via M-ATH clustering in index
{target_index}:
{rare_patterns_string}Your Task:
- Analyze these patterns.
- Create 2 distinct ABLE hypotheses to investigate them.
- Provide
spl_round_1_validationandspl_round_2_drilldownfor each.Output Constraints:
Values in Chinese, but keys and SPL strictly in English. Follow the mandated JSON structure.
🧪 Step 3:极客验证 ------ 沙盒实测法确保 AI "大脑"不跑偏
在将 Prompt 写入 Python 代码前,必须通过实际的脱机验证来确保大模型能完全理解指令,并且输出的格式坚如磐石。我们将利用支持附件上传的大模型对话框(如豆包、Kimi、通义千问等)进行实测。
详细操作步骤:
- 构建知识库 (上传 PDF) :在 AI 聊天框中,点击附件上传按钮,将官方的 PEAK 框架说明文件
splunk-peak-threat-hunting-framework.pdf上传。这能为大模型提供最权威的上下文,避免其对 ABLE 模型的理解出现偏差。 - 喂入真实数据 (上传日志) :将你在系统中导出的测试日志文件(包含真实业务数据的
.txt或.csv)一同作为附件上传。 - 注入双层指令 :
- 将 Step 1 的 System Prompt 完整复制并发送给 AI。
- 接着,将 Step 2 的 User Prompt 发送给 AI(由于你已经上传了日志文件,可以省略 prompt 里的
{rare_patterns_string},直接让它分析附件日志)。
- 严苛校验结果 :仔细检查 AI 返回的内容:
- 格式红线:它有没有输出任何废话?必须是纯 JSON 数组或对象!
- 字段红线 :里面是不是老老实实使用了
Actor,Behavior,Location,Evidence?绝对不能出现它自己发明的词!
🎯 预期成果与闭环验证
通过这套包含知识库喂养和严苛 Prompt 约束的流程,大模型将稳定返回如下完美的 JSON 数据。这不仅是 AI 的思考过程,更是可直接执行的代码资产:
JSON
swift
{
"analysis": "发现极低频的 MySQL 1045 错误,暗示可能存在针对数据库的凭证探测行为。",
"hypotheses": [
{
"hypothesis_id": 1,
"ABLE": {
"Actor": "外部攻击者",
"Behavior": "暴力破解数据库凭证 (T1110)",
"Location": "MySQL 数据库服务器",
"Evidence": "短时间内出现大量 status=1045 的 Access Denied 日志"
},
"spl_round_1_validation": "search index=main status=1045 | stats count by user, src_ip",
"spl_round_2_drilldown": "search index=main src_ip=\"192.168.1.10\" | transaction maxspan=5m"
}
]
}
达成目标 :通过对 PEAK 框架深度的掌握及严谨的沙盒测试,大模型不再是盲目搜索,而是能够独立策划具备实战下钻深度 、且能转化为自动化防御能力的顶级狩猎策略。