t-tragrammaton/incident-response
GitHub: t-tragrammaton/incident-response
基于 Python 的 AWS GuardDuty 威胁响应工具,按严重程度自动隔离 EC2 或触发人工告警。
Stars: 0 | Forks: 0
# 事件响应自动化
一个 Python 工具,用于获取 AWS GuardDuty 发现结果,按严重程度进行分类,自动修复低严重程度的事件,并对严重威胁进行人工告警。
## 功能
| 严重程度 | 分数 | 动作 |
|---|---|---|
| CRITICAL | 9.0 - 10.0 | 人工告警 |
| HIGH | 7.0 - 8.9 | 人工告警 |
| MEDIUM | 4.0 - 6.9 | 自动修复 |
| LOW | 0.1 - 3.9 | 自动修复 |
## 自动修复
低和中等严重程度的发现会触发自动 EC2 隔离 —— 被标记的实例将从所有安全组中移除,切断其网络访问,同时保留实例以进行取证分析。
## 运行方法
**1. 克隆仓库**
`git clone https://github.com/aljinns/incident-response.git`
`cd incident-response`
**2. 创建虚拟环境并安装依赖**
`python -m venv venv`
`venv\Scripts\activate`
`pip install -r requirements.txt`
**3. 使用模拟 GuardDuty 发现结果运行**
`python main.py`
**4. 针对真实 AWS 运行**
使用 `aws configure` 配置 AWS 凭证,在 `main.py` 中设置 `mock=False`,并将获取指向真实的 SNS 或 EventBridge 触发器。
## 项目结构
- `responder/mock_finding.py` — 用于本地测试的模拟 GuardDuty 发现结果
- `responder/classifier.py` — 严重程度分类引擎
- `responder/remediation.py` — 自动修复和人工告警
- `responder/logger.py` — 将所有事件记录到 JSON
- `logs/incident_log.json` — 每个发现和操作的审计跟踪
- `main.py` — 入口点
## 状态
- [x] 模拟 GuardDuty 发现结果获取
- [x] 严重程度分类器
- [x] 通过 EC2 隔离进行自动修复
- [x] 高/严重发现的人工告警
- [x] JSON 审计日志
- [ ] 真实 EventBridge/SNS 获取
- [ ] CloudWatch 日志集成
- [ ] Slack/PagerDuty 告警
标签:AMSI绕过, AWS GuardDuty, EC2 隔离, EventBridge, Python, SNS, 严重性分类, 云取证, 威胁检测, 安全告警, 安全编排与自动化响应 (SOAR), 无后门, 漏洞 remediation, 网络安全, 自动修复, 逆向工具, 隐私保护