mar20210937/cloud-incident-response-system
GitHub: mar20210937/cloud-incident-response-system
一个基于FastAPI的Docker化云事件响应后端,通过规则引擎检测并分类安全与系统事件,实现AWS环境下的日志记录与告警通知。
Stars: 0 | Forks: 0
# 云事件响应系统
本项目是一个使用 FastAPI 构建的 Docker 化化云事件响应后端。
它接收安全和系统事件,使用基于规则的逻辑检测可疑行为,按严重程度对事件进行分类,并记录响应操作。
## 功能
- 事件收集 API
- 暴力破解登录检测
- 无效 token / 未授权访问检测
- 高请求率检测
- 服务故障检测
- 系统过载检测
- 严重程度分类
- 受控的响应操作
- Docker 化后端
## 本地运行
运行此命令:
```
uvicorn app.main:app --reload
```
然后打开:
```
http://127.0.0.1:8000/docs
```
## 使用 Docker 运行
构建镜像:
```
docker build -t cloud-incident-backend .
```
运行容器:
```
docker run --rm -p 8000:8000 cloud-incident-backend
```
然后打开:
```
http://127.0.0.1:8000/docs
```
## AWS 部署
该后端使用 Docker 部署在 AWS EC2 实例上。
### 使用的 AWS 服务
- EC2:托管 Docker 化的 FastAPI 后端。
- DynamoDB:存储检测到的事件记录。
- CloudWatch Logs:存储后端日志和事件活动。
- SNS:为 High 和 Critical 级别的事件发送电子邮件警报。
- IAM Role:允许 EC2 访问 DynamoDB、CloudWatch 和 SNS,而无需硬编码凭证。
### 在 EC2 上运行
```
docker run -d --name cloud-incident-backend -p 8000:8000 \
-e DYNAMODB_ENABLED=true \
-e AWS_REGION=us-east-1 \
-e AWS_DEFAULT_REGION=us-east-1 \
-e DYNAMODB_TABLE=CloudIncidents \
-e CLOUDWATCH_ENABLED=true \
-e CLOUDWATCH_LOG_GROUP=/cloud-incident-response/backend \
-e SNS_ENABLED=true \
-e SNS_TOPIC_ARN="arn:aws:sns:us-east-1::CloudIncidentAlerts"
cloud-incident-backend
```
### 测试 URL
```
http://EC2_PUBLIC_IP:8000/docs
http://EC2_PUBLIC_IP:8000/storage/status
```
### 主要检测规则
- 登录尝试失败:60 秒内 5 次登录失败 → High 严重程度。
- 无效 token 尝试:3 次无效 token 尝试 → Critical 严重程度。
- 高请求率:每分钟 100 个请求 → Medium 严重程度。
- 服务故障:health check 失败 → Critical 严重程度。
- 系统过载:CPU 在 120 秒内超过 85% → High 严重程度。
标签:API安全, AV绕过, AWS, CISA项目, CloudWatch, Docker, DPI, DynamoDB, EC2, FastAPI, IaC, JSON输出, Python, SNS, 事件分类, 云计算, 免杀技术, 后端开发, 安全事件响应, 安全告警, 安全防御评估, 异常检测, 无后门, 暴力破解检测, 红队行动, 规则引擎, 请求拦截, 逆向工具