写点什么

隆重推出与 AWS Security Hub 集成的 Cloud Custodian

  • 2019-10-15
  • 本文字数:2539 字

    阅读完需:约 8 分钟

隆重推出与 AWS Security Hub 集成的 Cloud Custodian


对于云的安全性、合规性和成本管理解决方案而言,受欢迎的选择之一是 Cloud Custodian,一个由 Capital One 赞助的开源项目。Cloud Custodian 是灵活的规则引擎,采用简单的 YAML 配置文件写出政策,支持超过 130 种 AWS 资源类型。然而,因为 Cloud Custiodian 主要通过邮件通知或命令行输出以及云观察指标进行报告,所以缺乏带有搜索和过滤功能的统一视图对于拥有大型环境和多个账户的客户来说是一个痛点。


现在,这一痛点的处理方式是集成 Cloud Custodian,作为 AWS Security Hub 的结果提供商。新发布的 AWS Security Hub 提供了您在 AWS 中安全状态的全面视图,包括关于安全行业标准和最佳规范的合规性。Security Hub 搜集了关于 AWS 账户、服务和受支持第三方合作伙伴的安全数据,帮助分析安全趋势,识别最高优先度的安全问题。

解决方案概览

  • 该解决方案包含如何升级并配置现有 Cloud Custodian 环境,以便将调查结果发表(即为发送)至 AWS Security Hub,然后在 Security Hub 中查看该等结果。如果您没有可用的 Cloud Custodian 环境,请浏览 Cloud Custodian 的开始使用页面。

  • 必须在账户中提前激活 Security Hub。

  • 示例将展示 Cloud Custodian 如何对未有任何执行加密存储桶政策声明的 S3 存储桶进行检测。如果您没有这类存储桶,只需创建一个无任何加密政策的空的 S3 存储桶,或者使用您知晓将触发结果的 S3 或 EC2 政策。

  • 用于执行 Cloud Custodian 的 AWS 凭据需要允许 securityhub:ImportFindings 操作,以允许输入。

  • 第 1 步:升级 Cloud Custodian

  • 从现有的 Cloud Custodian 虚拟环境范围内,运行以下命令:


pip install c7n --upgrade
复制代码


第 2 步:设置所需的 AWS IAM 权限


需要 securityhub:BatchImportFinding 操作。如果将要使用的凭据不允许该操作,则将其添加至现有客户管理政策,或附上新的 AWSSecurityHubFullAccess AWS 管理政策。注意:arn:aws:iam::aws:policy/AdministratorAccess 或 arn:aws:iam::aws:policy/PowerUserAccess 的 IAM 用户或角色已有所需权限。


第 3 步:用新操作创建 Cloud Custodian 政策


Cloud Custodian 的优化是增加了 “post-finding” 操作类型。 以下是输入结果所需的最低限度的政策变更的示例:


    - type: post-finding        severity_normalized: 30        types:          - "Software and Configuration Checks/Industry and Regulatory Standards/NIST CSF Controls (USA)"
复制代码


将以下最低限度政策示例剪切并粘贴至名为 s3-no-encryption.yml 政策


的新文件:


  - name: s3-bucket-encryption-policy-absent    resource: s3    description: s3 buckets without encryption required     filters:      - type: no-encryption-statement    actions:      - type: post-finding        severity_normalized: 30        types:          - "Software and Configuration Checks/Industry and Regulatory Standards/NIST CSF Controls (USA)"
复制代码


第 4 步:运行政策


以下命令将执行 Cloud Custodian,使用本地目录中的政策文件 s3-no-encryption.yml。Cloud Custodian 支持与 AWS CLI 相同的安全凭据和地区设置。


custodian run -s /tmp s3-no-encryption.yml
复制代码


该运行命令的结果应该与以下情况相似,预计差别在于时间戳、execution_time、资源计数和编号。如果首行计数为零,则第二行不会显示,因为没有结果发送至 Security Hub。


2018-11-19 05:43:30,095: custodian.policy:INFO policy: s3-bucket-encryption-policy-absent resource:s3 region:us-east-1 count:22 time:5.80 2018-11-19 05:43:30,832: custodian.policy:INFO policy: s3-bucket-encryption-policy-absent action: bucketfinding resources: 22 execution_time: 0.73
复制代码


第 5 步:查看 Security Hub 控制台中的结果


登入 AWS 控制台,选择 Security Hub,然后,在“导航 (Navigation)”区域的左上方点击 Findings。


在“结果 (Findings)”区域点击输入窗口中的 Filters,然后在“过滤器 (Filters)”的选择列表中选择 Product Fields。密钥 (Key) 栏输入 “ProviderName”,数值 (Value) 栏输入 “CloudCustodian”。


观察 Cloud Custodian 政策中的“名称 (Name)”如何映射到结果“标题 (Title)”。政策中的“描述”映射到结果中的“描述”,显示于“结果 ID”下的详细信息面板。


要查看 Cloud Custodian 所纳入结果部分的完整数据集,点击右边的 “Finding ID”:


第 6 步:浏览可以略过的附加数据


要查看 Custodian 可支持提交至 Security Hub 的附加属性和“类型”字段允许的值,运行以下命令:


custodian schema ec2.actions.post-finding
复制代码


属性名称直接映射至 Security Hub 使用的标准结果格式中定义的字段。


第 7 步:浏览所支持的 AWS 资源类型


启动该集成时,支持以下 AWS 资源类型(如 CloudCustodian 中所定义):ec2 和 s3。其他来源即将加入,包括 rds、vpc、security-group、subnet、iam-user、iam-role、iam-profile、iam-policy,将在账户中首先加入上述部分。查看特定资源是否已有添加的后结果操作支持,运行:


custodian schema <resource>.actions.post-finding
复制代码


如果得到以下错误信息,则表示 Cloud Custodian 尚不支持与该来源集成:


custodian.commands:ERROR post-findings is not in the actions list for resource
复制代码


第 8 步:浏览代码及参与方式


Cloud Custodian 集成的源代码包含在 securityhub.py 中,函数程序 () 调用名为 BatchImportFindings 的 Security Hub 公开 API。在相同文件中,函数 Finding 包含资源级数据映射。鼓励拉取“请求 (Requests)” 支持附加资源,或者您可以提交标题前缀为 ‘[SecurityHub]’ 的问题。此外,有任何想要的附加数据映射至“Amazon 结果格式 (Amazon Finding Format)”,请提交 PR 或问题。您还可以加入 Cloud Custodian 在 gitter.im 上的聊天室,有数百位其他用户和开发者可以帮助您开始使用。


将此代码提供给 Cloud Custodian 的主要原因是支持已经使用 Cloud Custodian 的 AWS 客户。其他开源安全和合规评估项目也可以使用这一方法作为如何与 AWS Security Hub 集成的示例。


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/announcing-cloud-custodian-integration-aws-security-hub/


2019-10-15 08:00719
用户头像

发布了 1843 篇内容, 共 110.0 次阅读, 收获喜欢 77 次。

关注

评论

发布
暂无评论
发现更多内容

第四周作业总结

hunk

极客大学架构师训练营

第八周

等燕归

性能优化(文件、数据结构、算法、网络IO)

ABS

架构师训练营 - 第八周学习总结

chenlovehx

第四周总结

jizhi7

架构师训练营 2 期 Week04 总结

第四周作业

jizhi7

极客大学架构师训练营

week4-一个典型的大型互联网应用系统使用了哪些技术方案和手段,主要解决什么问题?请列举描述。

未来已来

Week 8 作业01

Croesus

动态规划 求最大连续子数组、Python range 函数指南、Postman 导出 curl命令、AWS知识图谱大赛架构设计、John 易筋 ARTS 打卡 Week 26

John(易筋)

动态规划 Postman ARTS 打卡计划 Range 知识图谱大赛

第四周作业

hunk

极客大学架构师训练营

架构师训练营 2 期 Week04 作业

性能优化-文件硬盘I/O,数据结构算法,网络通讯

garlic

极客大学架构师训练营

架构第八周作业

Geek_Gu

极客大学架构师训练营

架构师训练营第八周课程笔记及心得

Airs

第8周作业

paul

浏览器插件:那些你需会的操作

梁龙先森

Java chrome 大前端 浏览器

架构师训练营第四周作业

邢永春

架构师训练营第四周总结

邢永春

第八 周 性能优化(二)总结

蓝黑

极客大学架构师训练营

Week_08 总结

golangboy

极客大学架构师训练营

第八周总结

fmouse

极客大学架构师训练营

漫画:一分钟快速了解VPN

OpenVPN

架构师 01 期,第八周课后作业

子文

架构师训练营 - 第 8 周课后作业(1 期)

Pudding

week4-作业二:根据当周学习情况,完成一篇学习总结

未来已来

架构师训练营第 1 期 - 第 8 周 - 学习总结

wgl

Week_08 作业

golangboy

极客大学架构师训练营

Week4 系统架构

贺志鹏

极客大学架构师训练营

架构训练营 - 第8周课后作业 - 学习总结

Pudding

第八周作业及总结

solike

隆重推出与 AWS Security Hub 集成的 Cloud Custodian_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章