GCP - Cloud Run Enum
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Cloud Run è una piattaforma di calcolo gestita senza server che ti consente di eseguire container direttamente sulla scalabile infrastruttura di Google.
Puoi eseguire il tuo container o, se stai usando Go, Node.js, Python, Java, .NET Core o Ruby, puoi utilizzare l'opzione source-based deployment che costruisce il container per te.
Google ha costruito Cloud Run per funzionare bene insieme ad altri servizi su Google Cloud, così puoi costruire applicazioni complete.
Su Cloud Run, il tuo codice può essere eseguito continuamente come un servizio o come un lavoro. Sia i servizi che i lavori vengono eseguiti nello stesso ambiente e possono utilizzare le stesse integrazioni con altri servizi su Google Cloud.
Cloud Run services. Utilizzati per eseguire codice che risponde a richieste web o eventi.
Cloud Run jobs. Utilizzati per eseguire codice che svolge un lavoro (un lavoro) e termina quando il lavoro è completato.
Google Cloud Run è un'altra offerta senza server dove puoi cercare anche variabili d'ambiente. Cloud Run crea un piccolo server web, in esecuzione sulla porta 8080 all'interno del container per impostazione predefinita, che rimane in attesa di una richiesta HTTP GET. Quando la richiesta viene ricevuta, viene eseguito un lavoro e il log del lavoro viene restituito tramite una risposta HTTP.
Per impostazione predefinita, l'accesso al server web è pubblico, ma può anche essere limitato al traffico interno (VPC...) Inoltre, l'autenticazione per contattare il server web può essere consentita a tutti o richiedere autenticazione tramite IAM.
Per impostazione predefinita, la cifratura utilizza una chiave gestita da Google, ma può anche essere scelta una CMEK (Customer Managed Encryption Key) da KMS.
Per impostazione predefinita, l'account di servizio utilizzato è il predefinito di Compute Engine che ha accesso Editor sul progetto e ha lo scopo cloud-platform
.
È possibile definire variabili d'ambiente in chiaro per l'esecuzione, e persino montare segreti cloud o aggiungere segreti cloud alle variabili d'ambiente.
È anche possibile aggiungere connessioni con Cloud SQL e montare un file system.
Gli URL dei servizi distribuiti sono simili a https://<svc-name>-<random>.a.run.app
Un servizio Run può avere più di 1 versione o revisione, e dividere il traffico tra diverse revisioni.
I lavori di Cloud Run sono più adatti per container che vengono eseguiti fino al completamento e non servono richieste. I lavori non hanno la capacità di servire richieste o ascoltare su una porta. Ciò significa che, a differenza dei servizi di Cloud Run, i lavori non dovrebbero includere un server web. Invece, i container dei lavori dovrebbero uscire quando hanno finito.
Nella pagina seguente, puoi controllare come abuse cloud run permissions to escalate privileges:
GCP - Run PrivescLearn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)