GCP - Cloud Scheduler Enum

Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks

Grundinformationen

Google Cloud Scheduler ist ein vollständig verwalteter Cron-Job-Dienst, der es Ihnen ermöglicht, beliebige Jobs – wie Batch-, Big-Data-Jobs, Cloud-Infrastrukturoperationen – zu festen Zeiten, Daten oder Intervallen auszuführen. Er ist in Google Cloud-Dienste integriert und bietet eine Möglichkeit, verschiedene Aufgaben wie Updates oder Batch-Verarbeitung nach einem regelmäßigen Zeitplan zu automatisieren.

Obwohl dies aus offensiver Sicht großartig klingt, ist es tatsächlich nicht so interessant, da der Dienst nur das Planen bestimmter einfacher Aktionen zu einem bestimmten Zeitpunkt und nicht das Ausführen beliebigen Codes ermöglicht.

Zum Zeitpunkt dieses Schreibens sind dies die Aktionen, die dieser Dienst erlaubt zu planen:

  • HTTP: Senden Sie eine HTTP-Anfrage, die die Header und den Body der Anfrage definiert.

  • Pub/Sub: Senden Sie eine Nachricht in ein bestimmtes Thema.

  • App Engine HTTP: Senden Sie eine HTTP-Anfrage an eine in App Engine erstellte App.

  • Workflows: Rufen Sie einen GCP-Workflow auf.

Dienstkonten

Ein Dienstkonto ist nicht immer für jeden Scheduler erforderlich. Die Pub/Sub- und App Engine HTTP-Typen benötigen kein Dienstkonto. Der Workflow benötigt ein Dienstkonto, aber es wird nur der Workflow aufgerufen. Schließlich benötigt der reguläre HTTP-Typ kein Dienstkonto, es ist jedoch möglich anzugeben, dass eine Art von Authentifizierung durch den Workflow erforderlich ist und entweder ein OAuth-Token oder ein OIDC-Token zur gesendeten HTTP-Anfrage hinzugefügt wird.

Daher ist es möglich, das OIDC-Token zu stehlen und das OAuth-Token von Dienstkonten durch den Missbrauch des HTTP-Typs auszunutzen. Mehr dazu auf der Seite zur Privilegieneskalation.

Beachten Sie, dass es möglich ist, den Geltungsbereich des gesendeten OAuth-Tokens zu beschränken, jedoch wird es standardmäßig cloud-platform sein.

Enumeration

# 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>

Privilegieneskalation

GCP - Cloud Scheduler Privesc

Lerne & übe AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lerne & übe GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Unterstütze HackTricks

Last updated