关于 implementing-aws-security-hub
面向需要在多个 AWS 账户集中管理安全发现和合规检查的团队,介绍 AWS Security Hub CSPM 的实施。涵盖服务集成、自动修复和审计报告。
主要功能
- 01启用安全标准
- 02跨账户和区域汇总发现
- 03集成 AWS 与第三方发现
- 04通过 EventBridge 和 Lambda 自动修复
- 05监控合规评分并生成报告
适用场景
- 01集中查看多个 AWS 账户的发现
- 02检查是否符合支持的标准
- 03修复反复出现的配置问题
- 04为合规审计准备证据
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ mukul975/ anthropic-cybersecurity-skills --skill implementing-aws-security-hub安装后在 Claude Code 中输入/implementing-aws-security-hub确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
LICENSEreferences/api-reference.mdscripts/agent.py详细介绍
实施 AWS Security Hub
何时使用
- 在多个 AWS 账户之间建立集中式安全发现仪表板时
- 针对 CIS、PCI-DSS、NIST 或 AWS Foundational Security Best Practices 启用自动化合规检查时
- 集成来自 GuardDuty、Inspector、Macie 以及第三方安全工具的发现时
- 为反复出现的安全错误配置构建自动化修复工作流时
- 为需要持续态势监控的审计人员准备合规证据时
不要使用于实时威胁检测(参见 detecting-cloud-threats-with-guardduty)、Azure 合规监控(参见 securing-azure-with-microsoft-defender),或容器镜像的深度漏洞扫描(参见 securing-container-registry)。
前置条件
- 具有指定安全管理员账户的 AWS Organization
- 在所有目标账户和区域中启用 AWS Config
- 激活 GuardDuty、Inspector 和 Macie 以进行发现集成
- 管理员账户中具有 securityhub:* 和 config:* 的 IAM 权限
工作流
步骤 1:启用带标准的 Security Hub
在委派管理员账户中激活 Security Hub 并启用安全标准。AWS Security Hub CSPM 支持 CIS AWS Foundations Benchmark v5.0、AWS Foundational Security Best Practices、PCI DSS v3.2.1 和 NIST SP 800-53。
# Enable Security Hub with standards
aws securityhub enable-security-hub \
--enable-default-standards \
--tags '{"Environment":"production","ManagedBy":"security-team"}'
# Enable CIS AWS Foundations Benchmark v5.0
aws securityhub batch-enable-standards \
--standards-subscription-requests '[
{"StandardsArn": "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/5.0.0"},
{"StandardsArn": "arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0"},
{"StandardsArn": "arn:aws:securityhub:us-east-1::standards/pci-dss/v/3.2.1"}
]'
# Verify enabled standards
aws securityhub get-enabled-standards \
--query 'StandardsSubscriptions[*].[StandardsArn,StandardsStatus]' --output table
步骤 2:配置多账户聚合
指定一个 Security Hub 管理员,并自动注册所有组织成员账户。配置跨区域聚合,将发现整合到单个区域。
# Designate delegated admin
aws securityhub enable-organization-admin-account \
--admin-account-id 111122223333
# Auto-enable for all org members
aws securityhub update-organization-configuration \
--auto-enable \
--organization-configuration '{"ConfigurationType": "CENTRAL"}'
# Enable cross-region aggregation
aws securityhub create-finding-aggregator \
--region-linking-mode ALL_REGIONS
步骤 3:集成安全服务和第三方工具
配置产品集成,以接收来自 AWS 服务和合作伙伴安全工具的发现。将第三方发现映射到 AWS Security Finding Format (ASFF)。
# List available product integrations
aws securityhub describe-products \
--query 'Products[*].[ProductName,CompanyName,ProductSubscriptionResourcePolicy]' --output table
# Enable specific integrations
aws securityhub enable-import-findings-for-product \
--product-arn "arn:aws:securityhub:us-east-1::product/aws/guardduty"
aws securityhub enable-import-findings-for-product \
--product-arn "arn:aws:securityhub:us-east-1::product/aws/inspector"
# Import custom findings using ASFF format
aws securityhub batch-import-findings --findings '[{
"SchemaVersion": "2018-10-08",
"Id": "custom-finding-001",
"ProductArn": "arn:aws:securityhub:us-east-1:123456789012:product/123456789012/default",
"GeneratorId": "custom-scanner",
"AwsAccountId": "123456789012",
"Types": ["Software and Configuration Checks/Vulnerabilities/CVE"],
"Title": "Unpatched OpenSSL in production ALB backend",
"Description": "CVE-2024-12345 detected on backend instances",
"Severity": {"Label": "HIGH"},
"Resources": [{"Type": "AwsEc2Instance", "Id": "arn:aws:ec2:us-east-1:123456789012:instance/i-0abc123"}]
}]'
步骤 4:构建自动化修复
创建链接到 EventBridge 规则和 Lambda 函数的 Security Hub 自定义操作,用于对常见发现进行一键或全自动修复。
# Create a custom action for remediation
aws securityhub create-action-target \
--name "IsolateInstance" \
--description "Isolate EC2 instance by replacing security groups" \
--id "IsolateInstance"
# EventBridge rule for automated remediation of specific controls
aws events put-rule \
--name SecurityHubAutoRemediate \
--event-pattern '{
"source": ["aws.securityhub"],
"detail-type": ["Security Hub Findings - Imported"],
"detail": {
"findings": {
"Compliance": {"Status": ["FAILED"]},
"Severity": {"Label": ["CRITICAL", "HIGH"]},
"GeneratorId": ["aws-foundational-security-best-practices/v/1.0.0/S3.1"]
}
}
}'
步骤 5:监控合规分数并生成报告
跟踪各标准的安全分数,监控随时间变化的合规漂移,并生成用于审计证据的报告。
# Get security score for a standard
aws securityhub get-security-control-definition \
--security-control-id "S3.1"
# List all failed controls with counts
aws securityhub get-findings \
--filters '{
"ComplianceStatus": [{"Value": "FAILED", "Comparison": "EQUALS"}],
"RecordState": [{"Value": "ACTIVE", "Comparison": "EQUALS"}]
}' \
--sort-criteria '{"Field": "SeverityLabel", "SortOrder": "desc"}' \
--max-items 50
关键概念
| 术语 | 定义 |
|---|---|
| Security Standard | 预打包的控制集,映射到 CIS、PCI-DSS、NIST 800-53 和 AWS 最佳实践等合规框架 |
| Security Control | 针对特定 AWS 资源配置评估其是否符合安全要求的单项自动化检查 |
| ASFF | AWS Security Finding Format,一种标准化 JSON 模式,用于规范化来自所有集成安全产品的发现 |
| Compliance Score | 给定安全标准中处于通过状态的控制所占百分比,按账户计算并在组织级别聚合 |
| Finding Aggregator | 一种跨区域机制,将所有已启用区域的发现整合到单个管理员区域 |
| Custom Action | 用户定义的操作,可从 Security Hub 控制台触发以调用 EventBridge 规则,用于手动或自动响应 |
工具与系统
- AWS Security Hub CSPM:用于自动化安全态势检查和发现聚合的核心平台
- AWS Config:Security Hub 依赖其进行资源评估的底层配置记录器
- Amazon EventBridge:用于将 Security Hub 发现连接到自动化修复工作流的事件路由服务
- AWS Systems Manager:Security Hub 可调用其自动化文档来修复常见错误配置
- AWS Audit Manager:使用 Security Hub 发现作为证据生成可供审计的报告
常见场景
场景:跨 50 个账户的 CIS 控制项失败
背景:某企业启用了 CIS AWS Foundations Benchmark v5.0,发现 50 个账户中共有 340 个控制项失败,主要集中在 IAM 密码策略、CloudTrail 配置和 VPC 流日志启用方面。
做法:
- 导出所有按控制项 ID 分组的 FAILED 发现结果,以识别最普遍的问题
- 优先处理影响账户数量最多的 Critical 和 High 严重性控制项
- 为排名前 10 的反复出现的失败创建 Systems Manager Automation 文档
- 针对 S3.1(阻止公共访问)和 CloudTrail.1(启用多区域跟踪)等控制项,通过 EventBridge 部署自动修复
- 安排每周合规评分审查,并在 90 天的修复窗口期内跟踪改进情况
陷阱:一次性为所有控制项启用自动修复,可能会破坏那些合法需要公共 S3 访问或特定网络配置的生产工作负载。务必先在预发布账户中测试修复。
输出格式
AWS Security Hub Compliance Report
====================================
Organization: acme-corp
Administrator Account: 111122223333
Report Date: 2025-02-23
Standards Enabled: CIS v5.0, AWS FSBP v1.0, PCI DSS v3.2.1
COMPLIANCE SCORES:
CIS AWS Foundations Benchmark v5.0: 78%
AWS Foundational Security Best Practices: 85%
PCI DSS v3.2.1: 72%
TOP FAILED CONTROLS (by account count):
[S3.1] Block public access settings enabled - 23/50 accounts FAILED
[CT.1] CloudTrail multi-region enabled - 12/50 accounts FAILED
[IAM.4] Root account has no access keys - 3/50 accounts FAILED
[EC2.19] Security groups restrict unrestricted ports- 31/50 accounts FAILED
[RDS.3] RDS encryption at rest enabled - 18/50 accounts FAILED
FINDING SUMMARY:
Total Active Findings: 1,247
Critical: 34 | High: 189 | Medium: 567 | Low: 457
Auto-Remediated This Month: 89
Suppressed: 23