GCP - Cloud Scheduler Enum

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

基本信息

Google Cloud Scheduler 是一个完全托管的 cron 作业服务,允许您在固定的时间、日期或间隔运行任意作业,例如批处理、大数据作业、云基础设施操作。它与 Google Cloud 服务集成,提供了一种 定期自动化各种任务,如更新或批处理 的方式。

虽然从攻击的角度来看,这听起来很棒,但实际上并没有那么有趣,因为该服务仅允许在特定时间安排某些简单操作,而不是执行任意代码。

在撰写本文时,该服务允许安排的操作如下:

  • HTTP:发送一个 HTTP 请求,定义请求的头部和主体。
  • Pub/Sub:向特定主题发送消息。
  • App Engine HTTP:向在 App Engine 上构建的应用发送 HTTP 请求。
  • Workflows:调用 GCP 工作流。

服务账户

并非每个调度器都需要服务账户。Pub/SubApp Engine HTTP 类型不需要任何服务账户。Workflow 需要一个服务账户,但它只会调用工作流。
最后,常规的 HTTP 类型不需要服务账户,但可以指示工作流需要某种身份验证,并将 OAuth 令牌或 OIDC 令牌添加到发送的 HTTP 请求中。

Caution

因此,可以窃取 OIDC 令牌并滥用服务账户的 OAuth 令牌 滥用 HTTP 类型。有关更多信息,请参见特权提升页面。

请注意,可以限制发送的 OAuth 令牌的范围,但默认情况下,它将是 cloud-platform

枚举

# Get schedulers in a location
gcloud scheduler jobs list --location us-central1

# Get information of an specific scheduler
gcloud scheduler jobs describe --location us-central1 <scheduler-name>

权限提升

GCP - Cloud Scheduler Privesc

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