Best use case
containing-active-security-breach is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
通过隔离受攻陷系统、阻断攻击者通信并保全证据,同时最大程度减少业务中断,快速遏制活跃安全攻陷。
Teams using containing-active-security-breach 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/containing-active-security-breach/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How containing-active-security-breach Compares
| Feature / Agent | containing-active-security-breach | 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
# 遏制活跃安全攻陷(Containing an Active Security Breach)
## 适用场景
- 在网络或系统上检测到活跃的未授权访问
- IDS/IPS 告警显示正在进行的漏洞利用或数据外泄
- SOC 分析员确认需要立即遏制的真实安全事件
- 实时观察到横向移动或权限提升
- 在完全部署前检测到勒索软件加密活动
## 前置条件
- 具有明确遏制流程的事件响应计划
- 对防火墙、交换机和端点管理控制台的网络访问权限
- 跨端点部署的 EDR/XDR 平台(CrowdStrike、SentinelOne、Microsoft Defender for Endpoint)
- 具有实时日志关联的 SIEM 访问权限(Splunk、Elastic、QRadar)
- 预先批准的系统隔离授权(记录在 IR 计划中)
- 已准备好取证镜像工具用于证据保全
## 工作流程
### 步骤 1:验证并分类事件
```bash
# 在 SIEM 中检查关联告警 - Splunk 示例
index=security sourcetype=ids_alerts severity=critical
| stats count by src_ip, dest_ip, signature
| where count > 5
| sort -count
# 通过 CrowdStrike Falcon API 验证端点告警
curl -X GET "https://api.crowdstrike.com/detects/queries/detects/v1?filter=status:'new'+max_severity_displayname:'Critical'" \
-H "Authorization: Bearer $FALCON_TOKEN"
```
### 步骤 2:识别攻陷范围
```bash
# 识别所有与攻击者 C2 通信的系统
# 使用 Zeek 连接日志
cat conn.log | zeek-cut id.orig_h id.resp_h id.resp_p duration orig_bytes resp_bytes \
| awk '$3 == 443 && $5 > 1000000' | sort -t$'\t' -k5 -rn | head -20
# 检查 Windows 事件日志中的横向移动
wevtutil qe Security /q:"*[System[(EventID=4624)] and EventData[Data[@Name='LogonType']='3']]" /f:text /c:50
# 查询 Active Directory 中最近的认证异常
Get-WinEvent -FilterHashtable @{LogName='Security';ID=4625} -MaxEvents 100 |
Group-Object -Property {$_.Properties[5].Value} | Sort-Object Count -Descending
```
### 步骤 3:执行网络遏制
```bash
# 在边界防火墙阻断攻击者 IP(Palo Alto 示例)
set cli pager off
configure
set rulebase security rules emergency-block from any to any source [attacker_ip] action deny
set rulebase security rules emergency-block from any to any destination [attacker_ip] action deny
commit force
# 在交换机层面隔离受攻陷 VLAN(Cisco)
configure terminal
interface vlan 100
shutdown
end
write memory
# 在 DNS 层面阻断 C2 域名
# 添加到 DNS Sinkhole 或 RPZ
echo "attacker-c2-domain.com CNAME ." >> /etc/bind/rpz.local
rndc reload
```
### 步骤 4:隔离受攻陷端点
```bash
# CrowdStrike - 通过 API 对主机进行网络遏制
curl -X POST "https://api.crowdstrike.com/devices/entities/devices-actions/v2?action_name=contain" \
-H "Authorization: Bearer $FALCON_TOKEN" \
-H "Content-Type: application/json" \
-d '{"ids": ["device_id_1", "device_id_2"]}'
# Microsoft Defender for Endpoint - 隔离计算机
curl -X POST "https://api.securitycenter.microsoft.com/api/machines/{machineId}/isolate" \
-H "Authorization: Bearer $MDE_TOKEN" \
-H "Content-Type: application/json" \
-d '{"Comment": "IR-2024-001: 活跃攻陷遏制", "IsolationType": "Full"}'
# SentinelOne - 断开网络连接
curl -X POST "https://usea1.sentinelone.net/web/api/v2.1/agents/actions/disconnect" \
-H "Authorization: ApiToken $S1_TOKEN" \
-H "Content-Type: application/json" \
-d '{"filter": {"ids": ["agent_id"]}, "data": {}}'
```
### 步骤 5:完全隔离前保全易失性证据
```bash
# 从受攻陷 Windows 主机采集实时内存
winpmem_mini_x64.exe memdump_hostname_$(date +%Y%m%d).raw
# 采集网络连接和运行中的进程
netstat -anob > netstat_capture_$(date +%Y%m%d_%H%M).txt
tasklist /V /FO CSV > process_list_$(date +%Y%m%d_%H%M).csv
wmic process list full > process_detail_$(date +%Y%m%d_%H%M).txt
# Linux 易失性证据采集
dd if=/proc/kcore of=/mnt/forensics/memory_$(hostname)_$(date +%Y%m%d).raw bs=1M
ss -tulnp > /mnt/forensics/network_$(hostname).txt
ps auxwwf > /mnt/forensics/processes_$(hostname).txt
```
### 步骤 6:禁用受攻陷账号
```bash
# 禁用受攻陷的 Active Directory 账号
Import-Module ActiveDirectory
Disable-ADAccount -Identity "compromised_user"
Set-ADUser -Identity "compromised_user" -Description "已禁用 - IR-2024-001 $(Get-Date)"
# 撤销所有活跃会话
Revoke-AzureADUserAllRefreshToken -ObjectId "user_object_id"
# 重置服务账号凭据
Set-ADAccountPassword -Identity "svc_compromised" -Reset -NewPassword (ConvertTo-SecureString "TempP@ss$(Get-Random)" -AsPlainText -Force)
```
### 步骤 7:验证遏制有效性
```bash
# 验证没有活跃的 C2 通信
tcpdump -i eth0 host attacker_ip -c 100 -w verification_capture.pcap
# 检查新的横向移动尝试
index=security sourcetype=wineventlog EventCode=4624 LogonType=3
earliest=-15m
| stats count by src_ip, dest_ip
| where src_ip IN ("compromised_hosts")
# 验证端点隔离状态
curl -X GET "https://api.crowdstrike.com/devices/entities/devices/v2?ids=device_id" \
-H "Authorization: Bearer $FALCON_TOKEN" | jq '.resources[].status'
```
## 核心概念
| 概念 | 说明 |
|------|------|
| **短期遏制(Short-term Containment)** | 阻止活跃损害的即时措施(网络隔离、账号禁用) |
| **长期遏制(Long-term Containment)** | 在调查继续进行时的可持续措施(VLAN 分段、增强监控) |
| **证据保全(Evidence Preservation)** | 在遏制措施销毁取证产物之前采集易失性数据 |
| **爆炸半径(Blast Radius)** | 攻陷影响的系统、账号和数据的总范围 |
| **遏制边界(Containment Boundary)** | 为防止进一步传播而建立的网络和逻辑边界 |
| **杀伤链中断(Kill Chain Disruption)** | 在尽可能早的阶段打断攻击者的操作链 |
| **业务连续性(Business Continuity)** | 在遏制威胁的同时维持关键运营 |
## 工具与系统
| 工具 | 用途 |
|------|------|
| CrowdStrike Falcon | 端点检测、主机网络遏制 |
| Microsoft Defender for Endpoint | 端点隔离和自动调查 |
| Palo Alto NGFW | 用于 IP/域名阻断的边界防火墙规则 |
| Splunk/Elastic SIEM | 实时告警关联和范围分析 |
| Zeek(Bro) | 用于 C2 识别的网络流量分析 |
| Velociraptor | 远程取证采集和端点查询 |
| Active Directory | 账号管理和认证控制 |
## 常见场景
1. **勒索软件加密前**:攻击者已部署勒索软件二进制文件但加密尚未开始。隔离零号病人、阻断 C2 并防止横向部署。
2. **活跃数据外泄**:数据正在向外部服务器外泄。阻断到 C2 的出口流量、采集网络证据、隔离受影响系统。
3. **域控制器受攻陷**:攻击者拥有 DC 访问权限。将 DC 从网络隔离、两次重置 KRBTGT、轮换所有特权凭据。
4. **供应链受攻陷**:恶意更新已在整个环境中部署。阻断更新服务器、隔离收到更新的系统、评估范围。
5. **内部威胁 - 活跃外泄**:员工正在主动复制敏感数据。禁用账号、阻断 USB 访问、保全证据链。
## 输出格式
- 带时间戳的遏制操作日志(谁、做了什么、何时)
- 网络隔离验证报告
- 受攻陷/已隔离系统清单及理由
- 证据保全校验和及监管链记录
- 遏制有效性验证结果
- 包含当前状态和后续步骤的利益相关方通知Related Skills
triaging-security-incident
使用 NIST SP 800-61r3 和 SANS PICERL 框架对安全事件进行初始分类,确定严重性、范围和所需响应行动。 按类型对事件分类,根据业务影响分配优先级,并路由到相应的响应团队。适用于事件分类、 安全告警分类、严重性评估、事件优先级排序或初始事件分析等请求场景。
triaging-security-incident-with-ir-playbook
使用结构化 IR Playbook 对安全事件进行分类和优先排序,确定严重性、分配响应团队并启动适当的响应程序。
triaging-security-alerts-in-splunk
在 Splunk Enterprise Security 中对安全告警进行分类,通过 SPL 查询和事件审查(Incident Review) 仪表板对重要事件进行严重性分类、调查、关联相关遥测并做出升级或关闭决策。 适用于 SOC 分析师需要处理关联搜索产生的告警队列、确定调查优先级, 或需要为交接给二/三级分析师记录分类决策时。
testing-websocket-api-security
测试 WebSocket API 实现中的安全漏洞,包括 WebSocket 升级时缺少身份认证、跨站 WebSocket 劫持(Cross-Site WebSocket Hijacking,CSWSH)、通过 WebSocket 消息进行的注入攻击、输入校验不足、通过消息泛洪实施拒绝服务,以及通过 WebSocket 帧造成的信息泄露。测试人员使用 Burp Suite 拦截 WebSocket 握手和消息,构造恶意 payload,并测试 WebSocket 通道上的授权绕过。适用于 WebSocket 安全测试、WS 渗透测试、CSWSH 攻击或实时 API 安全评估相关请求。
testing-jwt-token-security
在安全测试活动中,评估 JSON Web Token(JWT)实现中的密码学弱点、算法混淆攻击和授权绕过漏洞。
testing-api-security-with-owasp-top-10
使用自动化和手工测试技术,针对 OWASP API 安全 Top 10 风险对 REST 和 GraphQL API 端点进行系统性评估。
performing-wireless-security-assessment-with-kismet
使用 Kismet 通过被动射频监控进行无线网络安全评估,检测流氓接入点(Rogue AP)、隐藏 SSID、弱加密和未授权客户端。
performing-ssl-tls-security-assessment
使用 sslyze Python 库评估 SSL/TLS 服务器配置,评估加密套件、证书链、协议版本、HSTS 头部,以及 Heartbleed 和 ROBOT 等已知漏洞。
performing-soap-web-service-security-testing
通过分析 WSDL 定义,测试 XML 注入(XML Injection)、XXE、WS-Security 绕过和 SOAPAction 欺骗,对 SOAP Web 服务执行安全测试。
performing-serverless-function-security-review
对 AWS Lambda、Azure Functions 和 GCP Cloud Functions 中的无服务器函数(Serverless Function)执行安全审查,识别过度宽松的执行角色(Execution Role)、不安全的环境变量、注入漏洞和缺失的运行时保护措施。
performing-scada-hmi-security-assessment
对 SCADA 人机界面(HMI, Human-Machine Interface)系统进行安全评估,识别基于 Web 的 HMI、瘦客户端配置、认证机制以及 HMI 与 PLC 之间通信信道中的漏洞,符合 IEC 62443 和 NIST SP 800-82 指南要求。
performing-s7comm-protocol-security-analysis
对西门子SIMATIC S7 PLC使用的S7comm和S7CommPlus协议进行安全分析,识别漏洞,包括重放攻击、完整性绕过、未授权的CPU停止命令以及针对S7-300、S7-400、S7-1200和S7-1500控制器弱点的程序下载操控。