AWS - CodeBuild Post Exploitation
Last updated
Last updated
学习和实践 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE) 学习和实践 GCP 黑客技术:HackTricks 培训 GCP 红队专家 (GRTE)
有关更多信息,请查看:
如果在 Codebuild 中设置了凭据以连接到 Github、Gitlab 或 Bitbucket,形式为个人令牌、密码或 OAuth 令牌访问,这些 凭据将作为秘密存储在秘密管理器中。 因此,如果您有权限读取秘密管理器,您将能够获取这些秘密并转向连接的平台。
为了配置 CodeBuild,它需要 访问将要使用的代码仓库。多个平台可能托管此代码:
CodeBuild 项目必须具有 对配置的源提供程序的访问权限,可以通过 IAM 角色 或使用 github/bitbucket 令牌或 OAuth 访问。
具有 提升权限的攻击者 可以滥用此配置的访问权限,泄露配置仓库的代码以及其他设置凭据可以访问的仓库。 为了做到这一点,攻击者只需 将仓库 URL 更改为配置凭据可以访问的每个仓库(请注意,AWS 网站会为您列出所有仓库):
并 更改 Buildspec 命令以提取每个仓库。
然而,这 项任务是重复且乏味的,如果配置了具有 写权限 的 github 令牌,攻击者 将无法(滥用)这些权限,因为他没有访问令牌。 或者他有吗?查看下一部分
您可以泄露在 CodeBuild 中授予的平台访问权限,例如 Github。检查是否授予了对外部平台的任何访问权限:
codebuild:DeleteProject
攻击者可以删除整个 CodeBuild 项目,导致项目配置丢失,并影响依赖该项目的应用程序。
潜在影响:项目配置丢失和使用已删除项目的应用程序服务中断。
codebuild:TagResource
, codebuild:UntagResource
攻击者可以添加、修改或删除CodeBuild资源的标签,从而干扰您组织基于标签的成本分配、资源跟踪和访问控制策略。
潜在影响:成本分配、资源跟踪和基于标签的访问控制策略的中断。
codebuild:DeleteSourceCredentials
攻击者可以删除 Git 存储库的源凭证,从而影响依赖该存储库的应用程序的正常运行。
潜在影响:由于源凭证的删除,依赖受影响存储库的应用程序的正常功能受到干扰。
学习和实践 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE) 学习和实践 GCP 黑客技术:HackTricks 培训 GCP 红队专家 (GRTE)