# GCP - Cloud Scheduler Enum

{{#include ../../../banners/hacktricks-training.md}}

## Osnovne informacije

Google Cloud Scheduler je potpuno upravljana **cron job service** koja vam omogućava da pokrećete proizvoljne poslove—kao što su batch, big data poslovi, operacije u cloud infrastrukturi—u fiksnim vremenima, datumima ili intervalima. Integrisan je sa Google Cloud uslugama, pružajući način da se **automatizuju razne zadatke poput ažuriranja ili batch obrade na redovnoj osnovi**.

Iako sa ofanzivne tačke gledišta ovo zvuči neverovatno, zapravo nije toliko zanimljivo jer usluga samo omogućava zakazivanje određenih jednostavnih akcija u određenom trenutku, a ne izvršavanje proizvoljnog koda.

U trenutku pisanja, ovo su akcije koje ova usluga omogućava da se zakazuju:

<figure><img src="../../../images/image (347).png" alt="" width="563"><figcaption></figcaption></figure>

- **HTTP**: Pošaljite HTTP zahtev definišući zaglavlja i telo zahteva.
- **Pub/Sub**: Pošaljite poruku u određenu temu.
- **App Engine HTTP**: Pošaljite HTTP zahtev aplikaciji izgrađenoj u App Engine.
- **Workflows**: Pozovite GCP Workflow.

## Servisni nalozi

Servisni nalog nije uvek potreban za svaki scheduler. Tipovi **Pub/Sub** i **App Engine HTTP** ne zahtevaju nikakav servisni nalog. **Workflow** zahteva servisni nalog, ali će samo pozvati workflow.\
Na kraju, regularni HTTP tip ne zahteva servisni nalog, ali je moguće naznačiti da je neka vrsta autentifikacije potrebna od strane workflow-a i dodati ili **OAuth token ili OIDC token u poslati** HTTP zahtev.

> [!CAUTION]
> Stoga, moguće je ukrasti **OIDC** token i zloupotrebiti **OAuth** token iz servisnih naloga **zloupotrebom HTTP tipa**. Više o ovome na stranici o eskalaciji privilegija.

Napomena da je moguće ograničiti opseg poslatog OAuth tokena, međutim, podrazumevano će biti `cloud-platform`.

## Enumeracija
```bash
# 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>
```
## Eskalacija privilegija

{{#ref}}
../gcp-privilege-escalation/gcp-cloudscheduler-privesc.md
{{#endref}}

{{#include ../../../banners/hacktricks-training.md}}
