View a markdown version of this page

扫描安全漏洞和格式错误 - AWS 规范性指导

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

扫描安全漏洞和格式错误

基础设施即代码(IaC)和自动化已成为企业所必不可少的。鉴于 IaC 如此强大,您在管理安全风险方面责任重大。常见的 IaC 安全风险可能包括:

  • Over-permissive AWS Identity and Access Management (IAM) 权限

  • 开放安全组

  • 未加密资源

  • 未打开访问日志

安全方法和工具

我们建议您采用以下安全方法:

  • 开发中的漏洞检测 - 由于开发和分发软件修补程序的复杂性,修复生产中的漏洞既昂贵又耗时。此外,生产中的漏洞也有被利用的风险。我们建议您对 IaC 资源使用代码扫描,以便在发布到生产环境之前可以检测和修复漏洞。

  • 合规性和自动修复- AWS Config 提供 AWS 托管规则。这些规则可帮助您强制合规,并允许您尝试使用AWS Systems Manager 自动化进行自动修复。您还可以使用 AWS Config 规则创建和关联自定义自动化文档。

常见开发工具

本节介绍的工具可帮助您使用自定义规则扩展内置功能。我们建议您将自定义规则与组织的标准保持一致。以下是一些值得考虑的常见开发工具:

  • 使用 cdk-nag 来验证给定范围内的构造是否符合一组定义的规则。您还可以将 cdk-nag 用于规则抑制和合规性报告。cdk-nag 工具通过扩展中的各个方面来验证构造。 AWS CDK有关更多信息,请参阅博客中的使用和 cdk-nag 管理应用程序的安全性和合规性。 AWS Cloud Development Kit (AWS CDK) AWS DevOps

  • 使用开源工具 Checkov 对您的 IaC 环境执行静态分析。Checkov 通过在 Kubernetes、Terraform 或中扫描你的基础设施代码来帮助识别云端配置错误。 CloudFormation您可以使用 Checkov 获取不同格式的输出,包括 JSON、JUnit XML 或 CLI。Checkov 可通过构建显示动态代码依赖关系的图形来有效地处理变量。欲了解更多信息,请参阅 Bridg GitHub ecrew 的 Checkov 存储库。

  • 使用 TFLint 检查错误和已弃用的语法,帮助您实施最佳实践。请注意,TFLint 可能无法验证特定于提供者的问题。有关 tfLint 的更多信息,请参阅 Terraform Linter GitHub s 的 tfLint 存储库。

  • 使用 Amazon Q 开发人员执行安全扫描。在集成开发环境 (IDE) 中使用时,Amazon Q Devel AI-powered oper 可提供软件开发帮助。它可以聊聊代码,提供内联代码补全,生成全新的代码,扫描代码中是否存在安全漏洞,以及进行代码升级和改进。