EricBorba/ce-lab-inspect-workload-misconfiguration

GitHub: EricBorba/ce-lab-inspect-workload-misconfiguration

一个 AWS 云安全错误配置动手实验项目,通过创建、检测、修复三类常见云安全风险来教学安全配置管理实践。

Stars: 0 | Forks: 0

# 实验室 M8.02 — 检查工作负载错误配置示例 ![AWS Config](https://img.shields.io/badge/AWS-Config-FF9900?logo=amazonaws&logoColor=white) ![AWS IAM](https://img.shields.io/badge/AWS-IAM-DD344C?logo=amazonaws&logoColor=white) ![Amazon S3](https://img.shields.io/badge/AWS-S3-FF9900?logo=amazons3&logoColor=white) ![AWS EC2](https://img.shields.io/badge/AWS-EC2%20Security%20Groups-FF9900?logo=amazonec2&logoColor=white) ![Security](https://img.shields.io/badge/Security-STRIDE%20Threat%20Model-red?logo=amazonaws&logoColor=white) ![Bash](https://img.shields.io/badge/Bash-CLI%20Only-4EAA25?logo=gnubash&logoColor=white) 本动手实验旨在刻意创建并修复云安全错误配置,使用 AWS Config 进行检测,并使用 STRIDE 威胁模型记录风险。 ## 本实验室的用途 创建三个故意的错误配置,使用 AWS Config 规则进行检测,然后进行修复和验证: | # | 错误配置 | 检测方法 | STRIDE | |---|-----------------|-----------------|--------| | 1 | 禁用了 Block Public Access 的 S3 存储桶 | AWS Config `s3-bucket-public-read-prohibited` | I | | 2 | 对 0.0.0.0/0 开放 SSH 的安全组 | AWS Config `restricted-ssh` | S | | 3 | 具有 AdministratorAccess 的 IAM 角色 | 人工审查 | E | ## 文件 | 文件 | 描述 | |------|-------------| | `findings-report.md` | 包含真实资源 ID、截图和修复措施的完整错误配置发现报告 | | `threat-model.md` | 针对简单 Web 应用程序(S3 + ALB + EC2 + RDS)的 STRIDE 威胁模型 | | `app-policy.json` | 在 IAM 修复期间应用的最小权限 IAM 策略 | | `cli-commands.md` | 实验期间执行的所有 CLI 命令的按时间顺序记录 | | `screenshots/` | 所有错误配置和合规性结果的证据截图 | ## 截图 | 文件 | 内容 | |------|---------| | `01-s3-misconfiguration-bucket-public-access-disabled.png` | 禁用了 Block Public Access 的 S3 存储桶创建 | | `02-security-group-ssh-open-to-internet.png` | 创建了允许来自 0.0.0.0/0 的 SSH 的安全组 | | `03-iam-role-administrator-access-attached.png` | 附加了 AdministratorAccess 策略的 IAM 角色 | | `04-config-role-and-s3-bucket-setup.png` | 创建 Config IAM 角色和 S3 日志存储桶 | | `05-config-recorder-delivery-channel-started.png` | 启用 Config recorder 和交付通道 | | `06-config-rules-s3-and-ssh-created.png` | 为 S3 和 SSH 检测创建的 Config 规则 | | `07-compliance-non-compliant-before-remediation.png` | 修复前两条规则均为 NON_COMPLIANT | | `08-security-group-ssh-remediated.png` | 吊销 SSH 规则并应用受限的 CIDR | | `09-iam-role-least-privilege-applied.png` | 分离 AdministratorAccess,应用最小权限策略 | | `10-s3-bucket-compliant-after-remediation.png` | 重新启用 Block Public Access 后 S3 存储桶变为 COMPLIANT | | `11-security-group-compliant-after-remediation.png` | SSH 受限后安全组变为 COMPLIANT | ## 关键发现 - `restricted-ssh` Config 规则在账户中发现了 **6 个不合规的安全组**——而不仅仅是为本次实验创建的那一个。这凸显了安全组是如何随着时间推移积累开放规则的。 - 现代 AWS 账户默认强制执行 **BucketOwnerEnforced** Object Ownership,从而完全禁用 ACL。这是除 Block Public Access 之外的额外保护层。 - AWS Config 是从头开始设置的——该实验室最初的说明中缺少 IAM 角色且 recorder 语法不正确,这两点都在执行过程中得到了修复。
标签:AWS, DPI, 威胁建模, 安全配置核查, 应用安全, 运维审计