安全和IAM
Awsume 4发布
最方便的假定角色助手的更新:2020年4月更新
2019年8月14日,星期三
在Trek10上,一些客户问我们如何做才能避免类似非常公开和最近的Capital One违规的违规行为。在研究了该主题并收集了过去几周的数据点之后,我们汇总了一些建议。在跳入之前,请注意,本博文不是对实际攻击中发生的事情的深入探讨。我们将做一个快速回顾,但是这篇文章旨在作为指南,指导企业在其AWS环境中可以采取哪些措施来减轻此类攻击的风险。
与数据泄露一样,攻击通常包括两个部分:首先是对外围的攻击,然后是整个环境的横向移动以进行数据渗透。在这种情况下,初始攻击发生在托管开源Modsec WAF的面向公众的EC2实例遭到破坏时。允许首次违反此漏洞的漏洞是未知的,这意味着攻击者几乎可以允许任何数量的漏洞。根据覆盖范围,这几乎不是零日漏洞,这意味着它可以避免具有适当的安全控制。
一旦攻击者破坏了EC2实例,EC2实例就可以通过连接到该实例的IAM角色的IAM策略访问所有AWS服务。 EC2实例配置文件 (在起诉书中称为“ *****-WAF-角色”)现在可以通过 AWS的元数据服务.
这很容易分解成一个完全独立的博客文章,但我们会尽力使其快速!自攻击以来,AWS的元数据服务引起了很大争议(该服务允许具有终端访问实例的任何用户查询 http://169.254.169.254/latest/... 获得对临时IAM凭据的访问权限。
元数据服务为EC2实例提供AWS IAM凭证,以访问其他AWS服务,而无需手动创建IAM访问密钥并将其硬编码到您的应用程序中-这是一项巨大的安全性胜利。由于这种攻击,EC2角色和AWS元数据服务已被广泛批评为主要的AWS漏洞。我们认为这与事实相去甚远。
实际上,此服务允许自动密钥旋转,并且无需将访问密钥硬编码到应用程序代码中即可访问AWS服务。 Amazon是否有办法改善元数据服务的安全性?当然,安全性应始终在提高,但是完全删除此服务将导致安全性大大降低。
可以从EC2实例的终端以及实例外部的攻击者的本地环境访问这些AWS服务……但是这些密钥是临时的,每天会自动旋转多次,如果在本地使用,它们将很快失效)。
有趣的是,数据泄露是通过使用S3 Sync命令从VPN提供商的IP地址完成的。 AWS的威胁检测服务GuardDuty提供了 高严重性通知 与EC2实例配置文件关联的凭据是否在EC2实例之外使用。在Trek10,我们将GuardDuty集成到我们的票务系统中(内部和针对客户),以便高严重性警报创建票证以供审核。
与违规有关的关键讨论点之一是围绕是否附加了IAM策略 *-WAF-Role过于宽容。目前尚不清楚为什么Modsec实例需要访问S3。我们尚未找到与此相关的任何公共详细信息,但是鉴于我们知道攻击者先运行了ListBuckets命令,然后又运行了Sync命令,因此我们可以假定该角色的IAM策略看起来像这样(尽管范围仅限于特定的S3存储桶):
{ "Effect": "Allow", "Actions": [ "s3:ListBuckets", "s3:ListAllMyBuckets", "s3:ListBuckets", "s3:GetObject" ], "Resource": "*"}
本节概述了基于攻击的针对您的AWS环境的建议概述,以及有关Trek10如何在其CloudOps产品中实施最佳安全实践的一些详细信息。根据建议是否减轻了外围攻击或允许S3数据渗透的横向攻击的风险,对建议进行了细分。我们将从侧向攻击开始,由于可获得的公共信息会更加有趣!
请记住,AWS IAM是一项非常强大的服务(我们在Trek10上非常重视这一服务-请查看 我们的IAM升级方法 了解如何认真!)。消除此漏洞的关键在于理解AWS IAM的强大功能意味着组织需要采取 最小特权原则 非常重视并确保所有IAM实体的范围都适当。以下是一些基于违规的建议:
您甚至可能发现有许多未使用的IAM实体,请先取消激活任何密钥以确保没有中断,然后再删除它们,以将其删除。
就像我们为客户所做的那样,GuardDuty应该集成到您的票务系统中。我们还提供仅通知高严重性结果的选项,例如,以减少噪音。
由于Amazon Macie相当昂贵,因此我们正在尝试一些不同的方法来检测和阻止客户端的S3数据泄漏(例如,如果S3 API调用了帐户中所有S3对象的一定百分比,则会切断对身份验证的访问权限) IAM实体,直到提供手动批准为止。
由于公众对EC2实例的最初攻击知之甚少,因此这些“缓解措施”只是EC2的一般良好安全做法-特别着重于组织如何利用AWS庞大的安全服务库来保护EC2实例:
Trek10的CloudOps服务将各种AWS安全服务集成到票证系统中,并使用预构建的模板自动进行部署。此外,Trek10正在构建高级的云原生安全检测和防御服务。我们将AWS本机安全服务与绝对最佳的第三方商业和开源安全工具相结合,以全面保护EC2实例和云本机AWS服务。我们正在与 Sophos Cloud Optix 为此服务,我们很高兴在今年晚些时候发布此服务。请留意未来的博客文章!