

Zeus
AWS 审计与加固工具
Zeus 是一款强大的工具,用于 AWS EC2 / S3 / CloudTrail / CloudWatch / KMS 的最佳安全实践。它根据用户创建的配置文件检查安全设置,并根据用户的请求,基于 CIS AWS 基准源将其更改为推荐设置。
目前,它仅包含日志记录机制。
身份与访问管理
- 避免使用 "root" 账户
- 确保所有拥有控制台密码的 IAM 用户启用了多因素认证(MFA)
- 确保禁用超过 90 天或更长时间未使用的凭证
- 确保访问密钥每 90 天或更短时间轮换一次
- 确保 IAM 密码策略要求至少一个大写字母
- 确保 IAM 密码策略要求至少一个小写字母
- 确保 IAM 密码策略要求至少一个符号
- 确保 IAM 密码策略要求至少一个数字
- 确保 IAM 密码策略要求最小长度为 14 或以上
- 确保不存在 root 账户访问密钥
- 确保为 "root" 账户启用 MFA
- 确保在 AWS 账户中注册了安全提示问题
- 确保 IAM 策略仅附加到组或角色
- 启用详细账单
- 保持联系信息为最新
- 确保注册了安全联系信息
- 确保从实例访问 AWS 资源时使用 IAM 实例角色
日志记录
- 确保 CloudTrail 在所有区域启用
- 确保 CloudTrail 日志文件验证已启用
- 确保 CloudTrail 日志写入的 S3 存储桶不可公开访问
- 确保 CloudTrail 跟踪与 CloudWatch Logs 集成
- 确保 AWS Config 在所有区域启用
- 确保 CloudTrail S3 存储桶上启用了 S3 存储桶访问日志记录
- 确保 CloudTrail 日志使用 KMS CMK 进行静态加密
- 确保为客户创建的 CMK 启用了轮换
网络
- 确保没有安全组允许从 0.0.0.0/0 访问端口 22
- 确保没有安全组允许从 0.0.0.0/0 访问端口 3389
- 确保在所有 VPC 中启用 VPC 流日志
- 确保每个 VPC 的默认安全组限制所有流量
监控
- 确保存在针对未授权 API 调用的日志指标过滤器和告警
- 确保存在针对未使用 MFA 登录管理控制台的日志指标过滤器和告警
- 确保存在针对 "root" 账户使用的日志指标过滤器和告警
- 确保存在针对 IAM 策略变更的日志指标过滤器和告警
- 确保存在针对 CloudTrail 配置变更的日志指标过滤器和告警
- 确保存在针对 AWS 管理控制台身份验证失败的日志指标过滤器和告警
- 确保存在针对禁用或计划删除客户创建的 CMK 的日志指标过滤器和告警
- 确保存在针对 S3 存储桶策略变更的日志指标过滤器和告警
- 确保存在针对 AWS Config 配置变更的日志指标过滤器和告警
- 确保存在针对安全组变更的日志指标过滤器和告警
- 确保存在针对网络访问控制列表(NACL)变更的日志指标过滤器和告警
- 确保存在针对网络网关变更的日志指标过滤器和告警
- 确保存在针对路由表变更的日志指标过滤器和告警
- 确保存在针对 VPC 变更的日志指标过滤器和告警
变更日志
即将推出。
要求
Zeus 使用 bash 脚本编写,基于 AWS-CLI,适用于 Linux/UNIX 和 OSX。
确保系统已安装 AWS-CLI 工具并配置了配置文件(aws configure)。
更新:
已添加基于操作系统的 pip 与 aws-cli 检查功能。
用法
git clone https://github.com/DenizParlak/Zeus.git && cd Zeus && chmod +x zeus.sh && ./zeus.sh