GCP - Cloud Build Unauthenticated Enum

AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE) GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)

HackTricksをサポートする

Cloud Build

Cloud Buildに関する詳細情報は次を確認してください:

GCP - Cloud Build Enum

cloudbuild.yml

cloudbuild.ymlという名前のファイルを含むリポジトリに対する書き込みアクセスを侵害した場合、このファイルをバックドアすることができ、Cloud Build内で実行されるコマンドを指定し、秘密情報を流出させ、実行される内容を侵害し、さらにCloud Buildサービスアカウントを侵害することができます。

GCPには、管理者が外部PRからビルドシステムの実行を制御できるオプション「コメントコントロール」があることに注意してください。コメントコントロールは、コラボレーター/プロジェクトオーナーがビルドをトリガーするために「/gcbrun」とコメントする必要がある機能であり、この機能を使用することで、インターネット上の誰もがビルドシステムをトリガーすることを本質的に防ぎます。

関連情報として、Github Actionsを攻撃する方法に関するページを確認できます(これに類似):

Abusing Github Actions

PR承認

トリガーがPRの場合、誰でも公開リポジトリにPRを行うことができるため任意のPRでトリガーの実行を許可することは非常に危険です。したがって、デフォルトでは、実行はオーナーとコラボレーターのみに自動で行われ、他のユーザーのPRでトリガーを実行するには、オーナーまたはコラボレーターが「/gcbrun」とコメントする必要があります。

したがって、これが**必要なしに設定されている場合、攻撃者はブランチにPRを行い**、悪意のあるコード実行を**cloudbuild.ymlファイルに追加してcloudbuildの実行を侵害することができます(cloudbuildはPRからコードをダウンロードするため、悪意のあるcloudbuild.yml**を実行します)。

さらに、PRを送信するときにcloudbuildの実行が必要かどうかを簡単に確認できます。なぜなら、それはGithubに表示されるからです:

そのため、cloudbuildが実行されなくても、攻撃者は会社に属するGCPプロジェクトのプロジェクト名を見ることができます。

AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE) GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)

HackTricksをサポートする

Last updated