r0shhh/CloudSentinel

GitHub: r0shhh/CloudSentinel

基于 Python 的模块化 AWS 配置错误扫描器,通过将检查项映射至 CIS 基准实现安全审计与严重性分级报告。

Stars: 2 | Forks: 0

# CloudSentinel 一款基于 Python 的模块化 AWS 安全审计工具,旨在检测配置错误。 ## 工程亮点 - **配置驱动架构:** 使用 `importlib` 进行动态插件加载。新增检查仅需一个扫描器函数和一条 YAML 条目。 - **CLI 控制:** 通过 CLI 标志(`--service`、`--severity`)实现过滤。 - **模拟测试:** 使用 `pytest` 和 `moto` 实现单元测试,以模拟 AWS 环境。 - **改进的 CLI 报告:** 使用 Rich 库重构了输出格式,以提供实时进度跟踪和颜色区分的严重性级别概览。 - **CIS 映射:** 每项检查均映射至 CIS AWS Foundations Benchmark v5.0.0 控制项,其严重性级别由 AWS Security Hub 官方文档指定。 ## 架构 CloudSentinel 遵循模块化架构: * `main.py` 负责协调扫描、过滤资源并管理任务流。 * `scanners/` 中的独立模块通过 `boto3` 与 AWS 交互。 * 使用 `checks.yaml` 定义扫描参数,将特定的安全检查映射到其对应的模块、严重性级别以及 CIS 基准。 * `ReportGenerator` 处理检查结果,并使用 `Rich` 将其渲染至 CLI 仪表板中。 ## 输出示例 ![替代文本](https://raw.githubusercontent.com/r0shhh/CloudSentinel/main/image.png) ## 技术栈 - **核心:** Python 3 - **Cloud SDK:** `boto3` - **测试:** `pytest`、`moto` - **UI/UX:** `rich` ## 前置条件 #### 所需的 IAM policy: - AmazonS3ReadOnlyAccess - IAMReadOnlyAccess - AmazonEC2ReadOnlyAccess - AWSCloudTrail_ReadOnlyAccess - AmazonRDSReadOnlyAccess ## 设置 ``` git clone https://github.com/r0shhh/CloudSentinel cd CloudSentinel python3 -m venv venv source venv/bin/activate pip install -r requirements.txt aws configure python3 main.py # run all checks python3 main.py --service s3 # only S3 checks python3 main.py --severity CRITICAL # only CRITICAL findings ``` ## 当前检查项 | 检查项 | 服务 | 严重性 | CIS | |---|---|---|---| | 未启用阻止公共访问 | S3 | 高危 | 2.1.4 | | 控制台用户未启用 MFA | IAM | 中危 | 1.9 | | 访问密钥超过 90 天 | IAM | 中危 | 1.13 | | 用户拥有管理员权限 | IAM | 高危 | 1.15 | | 存在 Root 用户访问密钥 | IAM | 严重 | 1.3 | | 端口 22/3389/3306/5432 对 0.0.0.0/0 和 ::/0 开放 | EC2 | 高危 | 3.1.1 & 3.1.2 | | CloudTrail 未配置或未记录日志 | CloudTrail | 高危 | 3.1 | | 数据库可公开访问 | RDS | 严重 | 2.2.3 | | 未为所有 VPC 启用 VPC Flow Logs | VPC | 中危 | 3.7 | | 未启用 EBS 加密 | EBS | 中危 | 5.1.1 | ## 项目状态 - [x] **核心引擎:** 核心扫描器已在 S3、IAM、EC2、CloudTrail、RDS、VPC 和 EBS 上实现功能。 - [x] **可扩展性:** 成功实现了配置驱动架构。 - [x] **报告:** 自动化 JSON 导出以及精致的实时交互式终端 UI。 - [x] **测试:** 已实施单元测试以确保安全检查的可靠性。 - [x] **合规性:** 已激活与 CIS AWS Foundations 基准的基线映射。 ## 未来路线图 - [ ] **扩展扫描器覆盖范围:** 整合对 RDS 加密等额外 AWS 服务的检查,以及高级 IAM policy 分析。 - [ ] **多区域支持:** 支持跨多个 AWS 区域的并发扫描,以提供全面的全球安全态势视图。 - [ ] **增强报告功能:** 实现 PDF 和 HTML 导出格式,便于与非技术利益相关者共享审计结果。
标签:Anthropic, AWS, CIS基准, DPI, Python, 云计算, 安全规则引擎, 无后门, 规则引擎, 逆向工具