GCP - Run Privesc
Last updated
Last updated
Impara e pratica Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Impara e pratica Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Per ulteriori informazioni su Cloud Run controlla:
run.services.create
, iam.serviceAccounts.actAs
, run.routes.invoke
Un attaccante con questi permessi per creare un servizio di esecuzione che esegue codice arbitrario (contenitore Docker arbitrario), allegare un Account di Servizio ad esso e far sì che il codice esfiltri il token dell'Account di Servizio dai metadati.
Uno script di exploit per questo metodo può essere trovato qui e l'immagine Docker può essere trovata qui.
Nota che quando si utilizza gcloud run deploy
invece di creare semplicemente il servizio ha bisogno del permesso update
. Controlla un esempio qui.
run.services.update
, iam.serviceAccounts.actAs
Come il precedente ma aggiornando un servizio:
run.services.setIamPolicy
Concediti permessi precedenti su Cloud Run.
run.jobs.create
, run.jobs.run
, iam.serviceaccounts.actAs
,(run.jobs.get
)Avvia un lavoro con una reverse shell per rubare l'account di servizio indicato nel comando. Puoi trovare un exploit qui.
run.jobs.update
,run.jobs.run
,iam.serviceaccounts.actAs
,(run.jobs.get
)Simile a quello precedente, è possibile aggiornare un lavoro e aggiornare il SA, il comando e eseguirlo:
run.jobs.setIamPolicy
Concediti i permessi precedenti sui Cloud Jobs.
run.jobs.run
, run.jobs.runWithOverrides
, (run.jobs.get
)Abusa delle variabili di ambiente di un'esecuzione di lavoro per eseguire codice arbitrario e ottenere una reverse shell per dumpare i contenuti del container (codice sorgente) e accedere al SA all'interno dei metadati:
Impara e pratica il hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Impara e pratica il hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)