GCP - Cloud Build 未认证枚举

Tip

学习并练习 AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
学习并练习 GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
学习并练习 Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

支持 HackTricks

Cloud Build

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

GCP - Cloud Build Enum

cloudbuild.yml

如果您获得了对包含名为 cloudbuild.yml 的文件的存写访问权限,您可以 后门 此文件,该文件指定将在 Cloud Build 中执行的 命令 并提取机密,妨碍所做的工作,并且还会妨碍 Cloud Build 服务账户

Note

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

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

Abusing Github Actions

PR 批准

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

Caution

因此,如果此设置为 不需要,攻击者可以对将触发执行的 分支 执行 PR,将恶意代码执行添加到 cloudbuild.yml 文件中并妨碍 cloudbuild 执行(请注意,cloudbuild 将从 PR 下载代码,因此它将执行恶意的 cloudbuild.yml)。

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

Warning

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

Tip

学习并练习 AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
学习并练习 GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
学习并练习 Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

支持 HackTricks