AWS Inspector 和 AWS Config – 逐步提高安全性

AWS Inspector 是一款功能强大且复杂的工具,可用于监控 AWS 资源的安全风险 – 但即使是微小的步骤也能带来巨大的变化。将其与 AWS Config 结合使用,可实现更高的合规性和可持续性。本文将提供一些关于如何使用 AWS Inspector 和 AWS Config 来确保 AWS 中的资源更加安全、合规的启发。

在处理客户项目时,出现了保护客户环境中的堡垒主机这一主题。最安全的堡垒主机是不存在的,但如果使用会话管理器不是一种选择,并且您无法在没有堡垒主机的情况下应对,那么应该采取一些安全措施。最明显的做法是使用强化映像来提供更多安全性,并通过仅允许真正需要的端口进入来加强堡垒主机所附加的安全组。

但是,运行了很长时间的实例可能会发生变化,或者刚刚发现新安全漏洞。如果许多人都在使用它,则最有可能在安全组和/或实例本身上打开受限制的 IP/端口 – 有时人们会忘记撤消此类更改。

 

AWS Config

对于后者,AWS Config使您能够评估、审计和评估 AWS 资源的配置。在此处描述的案例中,安全组控制对示例堡垒主机的访问。完成 AWS Config 检查后,任何违反规则的更改都将转发到 SNS 主题。这提供了对所做的更改做出快速反应的机会。AWS Config 定价基于记录的项目数量(0.003 美元)和规则评估数量(0.001 美元)。

 

AWS 检查器

另一个评估角度是针对EC2 实例本身的AWS Inspector。AWS Inspector 直接在 EC2 实例上执行安全检查,并提高部署的应用程序的安全性和合规性。

配备 AWS Inspector 代理的实例确实提供了各种系统特定检查,可在系统上进行评估。但即使系统上没有可用的代理,AWS Inspector 也可以从外部检查实例的可达性,例如,当堡垒主机仅涉及网络部分时,这足以进行检查。结合自动运行评估计划和通知概念,这可以成为一种简单但强大的安全风险警报。

需要注意的一些 AWS Inspector 特性:

  1. AWS Inspector 评估是从单独的 AWS 托管账户运行的。使用 terraform 或 CloudFormation 为每个区域单独编写 Inspector 评估代码时请记住这一点。必须按照此处列出的规则处理。
  2. AWS Inspector 无法触发 Cloudwatch 事件规则。Inspector 对事件做出反应的唯一方法是使用 SNS(由 Inspector 支持)作为通知目标,并(例如)通过调用 lambda 函数对“运行完成”事件做出反应,以进一步处理结果并将报告转发给电子邮件收件人或将其保存在 S3 存储桶中以供下载。AWS Inspector 支持 4 种可以在评估模板中定义的事件类型:“运行已开始”、“运行状态已更改”、“发现已报告”和“运行已完成”。
  3. 可以通过单击“下载报告”从 AWS 管理控制台检索所有扫描结果- 该控制台根据您选择的详细程度生成 PDF 并提供下载链接。此类链接是临时的,因此仅通过电子邮件将链接发送到某个警报目标(例如,仅允许收件人在报告可用时下载报告)。更好的解决方案是下载文件并将其存储在 S3 中,或将其作为电子邮件附件发送。例如,可以使用 boto3 的 Python lambda 函数来完成所有这些操作。它从 Inspector 通过 SNS 发送的事件中获取所有详细信息:
  4. 使用事件中的 Inspector 运行 ID → 描述评估运行
  5. 从运行详细信息中获取 assessment_template_arn
  6. 完整属性列表
  7. 如果您使用基础设施即代码,那么在使用 AWS 管理控制台时,您很可能遇到许多未声明的魔法。请确保授予正确的资源访问权限,例如,接收 Inspector 事件的 SNS 主题需要允许来自“inspector.amazonaws.com”的主体类型“Service”。这些可能是在尝试将控制台编辑的评估重现为代码时错过的事情。

 

当然,如果您只是想要收到可以从控制台手动检索新报告的通知,则无需使用 lambda 进行过滤和报告生成。只需提供对 SNS 主题的所需订阅即可。唯一需要的事件类型是“运行完成”事件类型;报告每个事件将导致大量通知。对于描述的两种情况(有和没有 lambda 进行过滤和报告生成),这都是唯一有趣的情况。

AWS Inspector 的定价取决于评估运行次数和细节。适合本文场景的一次网络可达性检查费用为 0.15 美元,如果每天运行一次,则每月总计 4.5 美元。

 

结论:

不能阻止可能影响安全性的变化,但如果发生变化,它会提醒您,以便您做出反应。

上述两种服务都可以满足此处提供的场景。您可能选择哪种服务在很大程度上取决于周围因素和您想要实现的最终目标。如果您只想涵盖这一个方面,那么使用预定的 Inspector 评估应该会为您提供最大的灵活性和控制力。为了涵盖更多场景,可以根据需要组合此处讨论的 AWS 服务集。AWS Inspector 是特定于实例的,并主动扫描缺陷和违规行为。AWS Config 记录您希望密切控制的任何资源,并提供有关更改和合规性违规的通知。在许多情况下,两者的结合将是一个不错的选择。

更多探索

Tell me what you need