Som-uka/aws-infrastructure-audit
GitHub: Som-uka/aws-infrastructure-audit
这是一个针对活跃AWS环境的安全与运营审计项目,旨在识别配置风险并提供可操作的修复方案。
Stars: 0 | Forks: 0
# AWS 基础设施审计
对活跃 AWS 环境进行结构化安全与运营审计,涵盖身份、网络暴露、计算生命周期、存储态势和成本优化。
## 概述
本项目记录了对 AWS 环境的端到端审计,涵盖关键风险领域。目标是建立清晰的当前安全态势基线,识别高风险发现,并产出包含已验证 CLI 步骤的可操作修复手册。
对活跃环境的所有更改均遵循严格的变更记录流程:先审计,再完整记录,最后执行。
## 范围
| 领域 | 关注点 |
|---|---|
| **IAM** | 用户、角色、策略、MFA 强制实施、访问密钥年龄 |
| **网络** | 安全组、公开可访问资源、VPC 暴露 |
| **计算** | EC2 实例、Elastic Beanstalk 环境、运行时生命周期 |
| **数据库** | RDS/Aurora 实例、公开可访问性、引擎版本 |
| **存储** | EBS 卷:加密状态、类型 (gp2/gp3)、附加状态 |
| **无服务器** | Lambda 函数:运行时版本、EOL 状态 |
| **成本** | 未附加资源、超大实例、存储类别优化 |
## 主要发现(已脱敏)
### 网络 / 安全组
- 生产数据库集群附加了允许 `0.0.0.0/0` 访问敏感端口 (MySQL, Redis) 的安全组
- 多个 RDS/Aurora 实例公开可访问且无 IP 限制
- 面向互联网的负载均衡器和 CDN 分发未部署 WAF Web ACL
### 管理" or something, but that might not be accurate.
- 大多数 IAM 用户未启用 MFA
- 活跃账户上存在长期有效的访问密钥(部分超过 365 天)
- 对敏感服务使用带有通配符操作的过度宽泛的托管策略
- AWS Config 未记录 IAM 变更,缺乏审计追踪
### 计算生命周期
- Elastic Beanstalk 环境运行 Amazon Linux 1(已终止支持)
- 存在待处理健康事件的 EC2 Windows 实例
- Lambda 函数使用已弃用的运行时 (nodejs16.x, nodejs14.x, nodejs12.x)
### 存储
- 所有 EBS 卷均未加密
- 大多数 EBS 卷使用 gp2(而非 gp3)
- 未附加的 EBS 卷产生不必要的成本
## 变更记录格式
```
CR-YYYY-MM-DD-###_Name.md
├── Summary
├── Risk rating
├── Pre-change state (CLI output)
├── Remediation steps (exact CLI commands)
├── Post-change validation
└── Rollback plan
```
## 仓库结构
```
aws-infrastructure-audit/
├── README.md
├── CHANGE-LOG.md
├── findings/
│ ├── network-exposure.md
│ ├── iam-posture.md
│ ├── compute-lifecycle.md
│ ├── storage-posture.md
│ └── cost-optimization.md
├── change-records/
│ ├── iam/
│ ├── network/
│ ├── compute/
│ └── storage/
└── scripts/
├── audit-security-groups.sh
├── audit-iam-users.sh
└── audit-ebs-volumes.sh
```
## 技术栈
- AWS CLI, AWS Config, CloudTrail
- RDS, Aurora, EC2, Lambda, Elastic Beanstalk, IAM, VPC
- PowerShell, Bash / Git
## 架构图

标签:AI合规, AWS, DevOps安全, DPI, 云基础设施, 变更管理, 基础设施审计, 威胁识别, 存储安全, 应用安全, 成本优化, 最佳实践, 漏洞修复, 网络安全, 网络安全培训, 网络安全研究, 计算安全, 身份和访问管理, 运行手册, 隐私保护