专家揭露导致远程代码执行、数据窃取及服务全面接管的严重AWS漏洞

网络安全研究人员在 Amazon Web Services (AWS) 产品中发现了多个严重漏洞,如果成功利用这些漏洞,可能会导致严重后果。

“这些漏洞的影响范围包括远程代码执行(RCE)、全方位服务用户接管(可能提供强大的管理访问权限)、操纵人工智能模块、暴露敏感数据、数据泄露和拒绝服务,”云安全公司Aqua在与The Hacker News分享的一份详细报告中说。

在 2024 年 2 月负责任地披露后,亚马逊在 3 月至 6 月的几个月内解决了这些缺点。研究结果在 2024 年美国黑帽大会上公布。

该问题的核心被称为“桶垄断”,是一种称为“影子资源”的攻击向量,在本例中,它指的是在使用 CloudFormation、Glue、EMR、SageMaker、ServiceCatalog 和 CodeStar 等服务时自动创建 AWS S3 存储桶。

以这种方式创建的 S3 存储桶名称既是唯一的,又遵循预定义的命名约定(例如,“cf-templates-{Hash}-{Region}”)。攻击者可利用此行为在未使用的 AWS 区域中设置存储桶,并等待合法的 AWS 客户使用易受攻击的服务之一来秘密访问 S3 存储桶的内容。

根据授予对手控制的 S3 存储桶的权限,该方法可用于升级以触发 DoS 条件,或执行代码、操纵或窃取数据,甚至在用户不知情的情况下完全控制受害者账户。

为了最大限度地提高成功的机会,使用 Bucket Monopoly,攻击者可以在所有可用区域提前创建无人认领的存储桶,并在存储桶中存储恶意代码。当目标组织首次在新区域中启用其中一项易受攻击的服务时,恶意代码将在不知不觉中被执行,从而可能导致创建可以向攻击者授予控制权的管理员用户。

CloudFormation 漏洞概述

但是,重要的是要考虑到,攻击者必须等待受害者首次在新区域部署新的 CloudFormation 堆栈才能成功发起攻击。修改 S3 存储桶中的 CloudFormation 模板文件以创建流氓管理员用户还取决于受害者账户是否具有管理 IAM 角色的权限。

Glue 漏洞概述
CodeStar 漏洞概述

Aqua 表示,它发现其他五项 AWS 服务依赖于类似的 S3 存储桶命名方法——{服务前缀}-{AWS 账户 ID}-{区域}——从而使它们暴露于影子资源攻击,并最终允许威胁行为者提升权限并执行恶意操作,包括 DoS、信息泄露、数据操纵和任意代码执行 –

  • AWS Glue:aws-glue-assets-{账户 ID}-{区域}
  • AWS Elastic MapReduce (EMR):aws-emr-studio -{Account-ID}-{Region}
  • AWS SageMaker:sagemaker-{区域}-{账户ID}
  • AWS CodeStar:aws-codestar-{区域}-{账户 ID}
  • AWS 服务目录:cf-templates-{Hash}-{Region}

该公司还指出,AWS账户ID应该被视为秘密,这与亚马逊在其文档中所说的相反,因为它们可能被用来发动类似的攻击。

此外,可以使用 GitHub 正则表达式搜索或 Sourcegraph 来发现用于 AWS 账户的哈希值,或者通过抓取未解决的问题来发现,从而即使在没有直接从账户 ID 或任何其他账户相关元数据计算哈希值的情况下,也可以将 S3 存储桶名称拼凑在一起。

Aqua 说:“这种攻击媒介不仅影响 AWS 服务,还影响组织用来在其 AWS 环境中部署资源的许多开源项目。“许多开源项目会自动创建 S3 存储桶作为其功能的一部分,或者指示其用户部署 S3 存储桶。”

“建议为每个区域和账户生成唯一的哈希或随机标识符,并将此值合并到 S3 存储桶名称中,而不是在存储桶名称中使用可预测或静态标识符。这种方法有助于防止攻击者过早地认领您的存储桶。

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。查看原文

为您推荐