GCP - Cloud Build Unauthenticated Enum

支持 HackTricks

Cloud Build

有关 Cloud Build 的更多信息,请查看:

GCP - Cloud Build Enum

cloudbuild.yml

如果您获得了包含名为 cloudbuild.yml 的文件的存储库的写入访问权限,您可以在该文件中植入后门,该文件指定了将在 Cloud Build 中执行的命令,并窃取秘密信息,危及所做的工作以及危害 Cloud Build 服务帐号

请注意,GCP 允许管理员通过“评论控制”来控制来自外部 PR 的构建系统的执行。评论控制是一个功能,协作者/项目所有者需要评论“/gcbrun”来触发构建以针对 PR 进行构建,并且使用此功能固有地阻止任何互联网用户触发您的构建系统。

有关一些相关信息,您可以查看有关如何攻击 Github Actions 的页面(类似于此):

Abusing Github Actions

PR 批准

当触发器为 PR 时,因为任何人都可以对公共存储库执行 PR,所以仅仅允许使用任何 PR 执行触发器将非常危险。因此,默认情况下,执行将仅对所有者和协作者自动进行,为了使用其他用户的 PR 执行触发器,所有者或协作者必须评论 /gcbrun

因此,如果设置为**Not required**,攻击者可以对将触发执行的分支执行 PR,向 cloudbuild.yml 文件添加恶意代码执行,并危及 cloudbuild 执行(请注意,cloudbuild 将从 PR 下载代码,因此将执行恶意 cloudbuild.yml)。

此外,当您发送 PR 时,很容易看到是否需要执行某些 cloudbuild 执行,因为它会出现在 Github 中:

因此,即使 cloudbuild 没有执行,攻击者也将能够看到属于公司的 GCP 项目的项目名称

支持 HackTricks

Last updated