conducting-post-incident-lessons-learned
主持结构化的事件后审查,以识别根本原因、记录有效和无效的措施,并提出可操作的改进建议以提升未来的事件响应能力。
Best use case
conducting-post-incident-lessons-learned is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
主持结构化的事件后审查,以识别根本原因、记录有效和无效的措施,并提出可操作的改进建议以提升未来的事件响应能力。
Teams using conducting-post-incident-lessons-learned should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/conducting-post-incident-lessons-learned/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How conducting-post-incident-lessons-learned Compares
| Feature / Agent | conducting-post-incident-lessons-learned | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
主持结构化的事件后审查,以识别根本原因、记录有效和无效的措施,并提出可操作的改进建议以提升未来的事件响应能力。
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# 事件后经验总结(Post-Incident Lessons Learned)
## 适用场景
- 安全事件完全解决且恢复完成后
- 桌面推演或 IR 模拟后
- 重大险情事件后
- 季度性的累积事件趋势审查
- 需要根据实际经验更新 IR 运行手册时
## 前置条件
- 事件已完全解决(遏制、根除、恢复均已完成)
- 事件时间线和文档已收集
- 所有事件响应人员可参与审查会议
- 协作讨论的会议场所
- 用于指标分析的事件工单系统数据
## 工作流程
### 步骤 1:收集事件数据
```bash
# 从工单系统导出事件时间线
curl -s "https://thehive.local/api/v1/case/$CASE_ID/timeline" \
-H "Authorization: Bearer $THEHIVE_API_KEY" | jq '.' > incident_timeline.json
# 从 SIEM 提取检测和响应指标
index=notable incident_id="IR-2024-042"
| stats min(_time) as first_alert, max(_time) as last_alert,
count as total_alerts, dc(src) as unique_sources
# 汇编所有响应人员操作和时间戳
grep -E "timestamp|action|analyst" /var/log/ir/IR-2024-042/*.json | \
python3 -m json.tool > compiled_actions.json
```
### 步骤 2:召开免责事后审查会议
```
结构化议程(90 分钟):
1. 事件摘要(5 分钟)- 事实性概述
2. 时间线梳理(20 分钟)- 按时间顺序的事件
3. 哪些有效(15 分钟)- 积极成果
4. 哪些需要改进(15 分钟)- 差距和失败
5. 根本原因分析(15 分钟)- 5 个为什么或鱼骨图
6. 行动项目(10 分钟)- 有负责人的具体改进措施
7. 运行手册更新(10 分钟)- IR 流程变更
免责原则:
- 关注系统和流程,而非个人
- 假设在现有信息下做出了最佳决策
- 寻求理解,而非归责
```
### 步骤 3:执行根本原因分析
```bash
# 5 个为什么分析示例:
# 为什么 1:为什么勒索软件加密了生产服务器?
# 答:攻击者拥有域管理员凭据
# 为什么 2:为什么攻击者拥有域管理员凭据?
# 答:对服务账号进行了 Kerberoasting 并破解了密码
# 为什么 3:为什么服务账号密码可以被破解?
# 答:使用了 12 个字符的基于字典的密码
# 为什么 4:为什么服务账号密码很弱?
# 答:没有强制执行服务账号密码策略
# 为什么 5:为什么没有服务账号密码策略?
# 答:未对服务账号实施 PAM
# 根本原因:缺少特权访问管理
```
### 步骤 4:计算响应指标
```python
from datetime import datetime
events = {
'compromise': '2024-01-10 14:00:00',
'detection': '2024-01-15 08:30:00',
'triage': '2024-01-15 08:45:00',
'containment': '2024-01-15 09:30:00',
'eradication': '2024-01-16 14:00:00',
'recovery': '2024-01-18 16:00:00',
'closure': '2024-01-25 10:00:00',
}
fmt = '%Y-%m-%d %H:%M:%S'
times = {k: datetime.strptime(v, fmt) for k, v in events.items()}
print(f"驻留时间: {times['detection'] - times['compromise']}")
print(f"MTTD: {times['triage'] - times['detection']}")
print(f"MTTC: {times['containment'] - times['detection']}")
print(f"MTTR: {times['recovery'] - times['eradication']}")
print(f"总时长: {times['closure'] - times['detection']}")
```
### 步骤 5:记录发现并创建行动项目
```bash
# 在项目管理系统中创建可追踪的行动项目
curl -X POST "https://jira.local/rest/api/2/issue" \
-H "Authorization: Bearer $JIRA_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"fields": {
"project": {"key": "SEC"},
"summary": "为服务账号实施 PAM(IR-2024-042)",
"issuetype": {"name": "Task"},
"priority": {"name": "High"},
"assignee": {"name": "security_engineer"},
"duedate": "2024-03-15"
}
}'
```
### 步骤 6:更新运行手册和检测规则
```yaml
# 基于事件经验的新 Sigma 检测规则
title: 检测到 Kerberoasting 活动
status: stable
description: 基于 IR-2024-042 经验检测 Kerberoasting
logsource:
product: windows
service: security
detection:
selection:
EventID: 4769
TicketEncryptionType: '0x17'
condition: selection
level: high
tags:
- attack.credential_access
- attack.t1558.003
```
## 核心概念
| 概念 | 说明 |
|------|------|
| **免责事后审查(Blameless Post-Mortem)** | 以系统为焦点而非追究个人责任的事件审查方式 |
| **根本原因分析(Root Cause Analysis)** | 识别导致事件发生的根本原因 |
| **5 个为什么(5 Whys)** | 通过迭代提问找到根本原因的技术 |
| **MTTD(Mean Time to Detect,平均检测时间)** | 从攻陷到检测的时间 |
| **MTTC(Mean Time to Contain,平均遏制时间)** | 从检测到遏制的时间 |
| **MTTR(Mean Time to Recover,平均恢复时间)** | 从根除到完全恢复的时间 |
| **持续改进(Continuous Improvement)** | 基于真实事件数据迭代优化 IR 流程 |
## 工具与系统
| 工具 | 用途 |
|------|------|
| TheHive/ServiceNow | 事件时间线和文档管理 |
| Jira/Azure DevOps | 行动项目跟踪 |
| Confluence/SharePoint | 经验总结文档 |
| Splunk/Elastic | 事件指标和检测改进 |
| Sigma | 检测规则开发 |
## 常见场景
1. **勒索软件事后审查**:审查从初始访问到加密的完整杀伤链,识别检测缺口和备份失败。
2. **钓鱼活动审查**:分析用户为何点击、邮件过滤器为何遗漏以及如何改进培训。
3. **云配置错误事件**:审查 IaC 流水线、CSPM 覆盖范围和变更管理流程。
4. **内部威胁审查**:检查 DLP 有效性、访问控制缺口和用户监控能力。
5. **第三方泄露影响**:审查供应商风险评估流程和数据共享协议。
## 输出格式
- 事件后审查会议记录
- 根本原因分析文档
- 事件指标报告(MTTD、MTTC、MTTR)
- 有负责人和截止日期的行动项目列表
- 更新后的 IR 运行手册和检测规则
- 面向管理层的执行摘要Related Skills
triaging-security-incident
使用 NIST SP 800-61r3 和 SANS PICERL 框架对安全事件进行初始分类,确定严重性、范围和所需响应行动。 按类型对事件分类,根据业务影响分配优先级,并路由到相应的响应团队。适用于事件分类、 安全告警分类、严重性评估、事件优先级排序或初始事件分析等请求场景。
triaging-security-incident-with-ir-playbook
使用结构化 IR Playbook 对安全事件进行分类和优先排序,确定严重性、分配响应团队并启动适当的响应程序。
performing-ransomware-incident-response
执行结构化的勒索软件事件响应,包括遏制、解密评估、从备份恢复以及根除勒索软件持久化机制。
performing-cloud-incident-containment-procedures
在 AWS、Azure 和 GCP 中执行云原生事件遏制,包括隔离受攻陷资源、撤销凭据、保全取证证据,以及应用安全组限制以防止横向移动。
performing-api-security-testing-with-postman
使用 Postman 构建测试集合,执行结构化 API 安全测试,覆盖 OWASP API 安全 Top 10 漏洞, 包括认证绕过、授权缺陷、注入和数据暴露。测试人员创建包含多个用户角色的环境, 编写自动化安全验证测试脚本,并将 Postman 与 OWASP ZAP 和 Newman 集成以进行 CI/CD 安全测试。 当请求涉及 Postman 安全测试、API 安全集合、自动化 API 测试或使用 Postman 进行 OWASP API 测试时触发。
investigating-phishing-email-incident
调查钓鱼(Phishing)邮件事件,从初始用户举报开始,经过邮件头分析、URL/附件引爆、 受影响用户识别和遏制行动,使用 Splunk、Microsoft Defender 和沙箱分析平台等 SOC 工具。 适用于收到的钓鱼邮件举报需要进行完整事件调查以确定范围和影响时。
implementing-ticketing-system-for-incidents
实施集成事件工单系统,将 SIEM 告警对接 ServiceNow、Jira 或 TheHive, 用于结构化事件跟踪、SLA 管理、升级工作流和合规文档记录。 适用于 SOC 团队需要通过自动化工单创建、分配路由和解决跟踪来规范事件生命周期管理时。
implementing-ot-incident-response-playbook
按照SANS PICERL框架、IEC 62443和NIST SP 800-82,开发并实施OT专用事件响应剧本,解决包括安全关键系统、有限停机容忍度以及IT SOC、OT工程和工厂运营团队协调等ICS特有挑战。
implementing-device-posture-assessment-in-zero-trust
在零信任访问控制中实施设备态势评估,将来自 CrowdStrike ZTA、Microsoft Intune 和 Jamf 的端点健康信号集成到条件访问策略中,在授予资源访问权限前强制执行合规性。
implementing-cloud-vulnerability-posture-management
使用 AWS Security Hub、Azure Defender for Cloud 以及 Prowler、ScoutSuite 等开源工具实施云安全态势管理(CSPM),实现多云漏洞检测。
implementing-cloud-security-posture-management
实施云安全态势管理(CSPM),使用 Prowler、ScoutSuite、AWS Security Hub、Azure Defender 和 GCP Security Command Center 对多云环境中的错误配置、合规违规和安全风险进行持续监控。
implementing-api-security-posture-management
实施API安全态势管理,持续发现、分类并基于风险对API评分,同时在API生命周期中强制执行安全策略。