swasthikunder/AWS-Security-Monitoring-and-Auto-Remediation
GitHub: swasthikunder/AWS-Security-Monitoring-and-Auto-Remediation
AWS云安全监控与自动修复平台,提升云安全防护能力。
Stars: 0 | Forks: 1
# 🔐 AWS 云安全监控与自动修复平台





# 📌 概述
现代云环境每天都会生成数千次 API 调用和配置更改。没有持续的监控,安全配置错误和未经授权的操作可能无法被发现,从而增加了数据泄露和权限提升的风险。
该项目实现了一个专注于保护 Amazon S3 环境的实时 AWS 安全监控和自动修复平台。
该解决方案结合了基础设施即代码(Terraform)、集中式日志记录、安全警报、事件驱动自动化和自动修复,以提高云可见性和安全态势。
架构遵循以下原则:
* AWS 优秀架构安全支柱
* CIS AWS 基础标准
* AWS 安全最佳实践
* 最小权限访问控制
* 深度防御原则
* 安全监控与检测工程实践
# 🚀 核心功能
## 🔐 S3 安全加固
* 启用 S3 版本控制
* 服务器端加密(SSE-S3)
* 启用公共访问阻止
* 服务器访问日志
* 遵守性资源标记
* 安全存储桶配置
## 👤 IAM 安全
* 自定义应用程序 IAM 角色
* 最小权限访问模型
* 限界 S3 权限
* 服务信任关系
* IAM 访问分析器集成
## 📜 日志记录与可审计性
* 多区域 CloudTrail
* CloudTrail 日志验证
* CloudWatch 日志集成
* 集中式安全日志记录
* API 活动监控
* 安全事件跟踪
## 🚨 安全监控
实时检测:
* 未授权的 API 调用
* IAM 策略更改
* CloudTrail 配置更改
* S3 公共访问更改
* 根账户使用
* 无 MFA 的控制台登录
* GuardDuty 禁用尝试
* S3 存储桶删除事件
* KMS 密钥删除事件
## 🔔 安全警报
* CloudWatch 警报
* SNS 通知
* 基于电子邮件的事件警报
* 安全事件通知
* 自动事件可见性
## 🤖 自动修复
* EventBridge 安全自动化
* 基于 Lambda 的响应工作流程
* 实时事件处理
* 安全验证逻辑
* 自动响应操作
# 🏗️ 安全架构
```
┌─────────────────────┐
│ CloudTrail │
│ Security Events │
└──────────┬──────────┘
│
▼
┌─────────────────────┐
│ CloudWatch Logs │
│ Centralized Logging │
└──────────┬──────────┘
│
┌────────────────┴────────────────┐
▼ ▼
┌──────────────────┐ ┌──────────────────┐
│ CloudWatch Alarm │ │ EventBridge │
│ Security Metrics │ │ Security Routing │
└────────┬─────────┘ └────────┬─────────┘
│ │
▼ ▼
┌──────────────────┐ ┌──────────────────┐
│ SNS Alerts │ │ Lambda Function │
│ Email Notification│ │ Auto Remediation │
└──────────────────┘ └────────┬─────────┘
│
▼
┌──────────────────┐
│ Secure S3 State │
└──────────────────┘
```
# 🧠 现实世界用例
该项目模拟了云安全团队如何监控 AWS 环境中的可疑活动,并自动响应安全敏感事件。
架构重点在于:
* 提高云可见性
* 检测风险配置更改
* 监控关键的 AWS API 活动
* 生成可操作警报
* 自动化事件响应
* 维护审计跟踪
* 减少运营响应时间
该项目可以作为:
* 云安全组合项目
* 检测工程项目
* DevSecOps 学习环境
* AWS 安全监控参考架构
* 安全自动化演示
# 🛠️ 使用的技术
| 技术 | 目的 |
| ------------------- | ---------------------------- |
| Terraform | 基础设施即代码 |
| Amazon S3 | 安全存储 |
| IAM | 身份与访问管理 |
| IAM Access Analyzer | 权限可见性 |
| CloudTrail | 审计日志 |
| CloudWatch | 监控与警报 |
| SNS | 警报通知 |
| EventBridge | 事件路由 |
| Lambda | 自动修复 |
| AWS CLI | 安全测试 |
# 📂 项目结构
```
aws-s3-iam-security/
│
├── environments/
│ └── dev/
│
├── modules/
│ ├── s3/
│ ├── iam/
│ ├── cloudtrail/
│ ├── cloudwatch/
│ ├── sns/
│ ├── lambda/
│ └── eventbridge/
│
├── lambda/
│ └── auto_remediation.py
│
├── screenshots/
│
├── README.md
│
└── architecture/
```
# ⚙️ 部署工作流程
## 初始化 Terraform
```
terraform init
```
## 验证配置
```
terraform validate
```
## 预览基础设施更改
```
terraform plan
```
## 部署基础设施
```
terraform apply
```
# 📋 先决条件
在部署前确保:
* Terraform >= 1.5
* 安装 AWS CLI
* 配置 AWS 凭据
* 适当的 IAM 权限
* 根账户启用 MFA
验证凭据:
```
aws sts get-caller-identity
```
# 🔒 实施的安全控制
| 类别 | 控制措施 |
| --------------------- | ------------------------------- |
| S3 安全 | 加密、版本控制、日志 |
| IAM | 最小权限角色 |
| 监控 | CloudWatch 警报 |
| 日志 | CloudTrail + CloudWatch |
| 警报 | SNS 通知 |
| 自动化 | EventBridge + Lambda |
| 检测工程 | 安全指标过滤器 |
| 治理 | 访问分析器 |
# 🧪 安全验证执行
使用受控安全测试验证了环境。
## 测试场景
### 未授权 API 检测
```
aws iam delete-user --user-name fake-user
```
### S3 公共访问修改
```
aws s3api delete-public-access-block \
--bucket
```
### IAM 策略更改监控
```
aws iam attach-role-policy ...
```
### CloudTrail 监控验证
```
aws cloudtrail lookup-events
```
# 🔥 安全事件模拟
通过模拟对 S3 存储桶的安全敏感更改验证了监控平台。
## 攻击模拟
执行命令:
aws s3api delete-public-access-block --bucket s3iam-sec-dev-77fb3d48
## 检测流程
1. CloudTrail 捕获 DeletePublicAccessBlock API 调用
2. EventBridge 匹配事件模式
3. Lambda 修复函数执行
4. CloudWatch 警报进入 ALARM 状态
5. SNS 电子邮件警报送达
6. 记录安全日志以供调查
## 结果
平台成功检测到安全事件,并为事件响应生成了实时警报。
# 📸 开发与验证证据
## 基础设施即代码(Terraform)
### Terraform 初始化与验证
标签:API监控, AWS, DevSecOps, DPI, ECS, IAM安全, Lambda函数, S3安全加固, SNS警报, Terraform, URL发现, 上游代理, 事件驱动自动化, 云监控, 人工智能安全, 公共访问控制, 合规性, 安全可观测性, 安全态势, 安全最佳实践, 安全检测, 日志验证, 最小权限访问, 服务器端加密, 服务器访问日志, 漏洞利用检测, 版本控制, 访问分析器, 资源标签, 跨区域日志, 防御深度, 集中式日志