GCP - Source Repositories Enum

Вивчайте хакінг AWS від нуля до героя з htARTE (HackTricks AWS Red Team Expert)!

Інші способи підтримки HackTricks:

Основна інформація

Google Cloud Source Repositories - це повнофункціональний, масштабований, приватний сервіс репозиторіїв Git. Він призначений для розміщення вашого вихідного коду в повністю керованому середовищі, що інтегрується безперешкодно з іншими інструментами та сервісами GCP. Він пропонує спільне та безпечне місце для команд для зберігання, керування та відстеження свого коду.

Основні функції Cloud Source Repositories включають:

  1. Повністю керований хостинг Git: Пропонує знайому функціональність Git, що означає, що ви можете використовувати звичайні команди та робочі процеси Git.

  2. Інтеграція з сервісами GCP: Інтегрується з іншими сервісами GCP, такими як Cloud Build, Pub/Sub та App Engine для повної відстежуваності від коду до розгортання.

  3. Приватні репозиторії: Забезпечує зберігання вашого коду безпечно та приватно. Ви можете керувати доступом за допомогою ролей Cloud Identity та Access Management (IAM).

  4. Аналіз вихідного коду: Працює з іншими інструментами GCP для автоматизованого аналізу вашого вихідного коду, виявлення потенційних проблем, таких як помилки, вразливості або погані практики кодування.

  5. Інструменти співпраці: Підтримує спільне кодування за допомогою інструментів, таких як запити на злиття, коментарі та огляди.

  6. Підтримка дзеркал: Дозволяє підключити Cloud Source Repositories до репозиторіїв, розміщених на GitHub або Bitbucket, забезпечуючи автоматичну синхронізацію та надаючи єдиний перегляд всіх ваших репозиторіїв.

Інформація OffSec

  • Конфігурація репозиторіїв джерел всередині проекту матиме Службовий обліковий запис, який використовується для публікації повідомлень Cloud Pub/Sub. За замовчуванням використовується Compute SA. Однак, я не думаю, що можливо вкрасти його токен з репозиторіїв джерел, оскільки це виконується в фоновому режимі.

  • Щоб побачити код у веб-консолі GCP Cloud Source Repositories (https://source.cloud.google.com/), код повинен бути у гілці master за замовчуванням.

  • Ви також можете створити дзеркальний хмарний репозиторій, спрямований на репо з Github або Bitbucket (надаючи доступ до цих платформ).

  • Можливо кодувати та налагоджувати зсередини GCP.

  • За замовчуванням, Source Repositories запобігає тому, щоб приватні ключі були відправлені в комітах, але це можна вимкнути.

Відкрити в Cloud Shell

Можливо відкрити репозиторій в Cloud Shell, з'явиться запит на введення:

Це дозволить вам кодувати та налагоджувати в Cloud Shell (що може призвести до компрометації cloudshell).

Перелік

# Repos enumeration
gcloud source repos list #Get names and URLs
gcloud source repos describe <repo_name>
gcloud source repos get-iam-policy <repo_name>

# gcloud repo clone
gcloud source repos clone <REPO NAME>
gcloud source repos get-iam-policy <REPO NAME>
... git add & git commit -m ...
git push --set-upstream origin master
git push -u origin master

# Access via git
## To add a SSH key go to https://source.cloud.google.com/user/ssh_keys (no gcloud command)
git clone ssh://username@domain.com@source.developers.google.com:2022/p/<proj-name>/r/<repo-name>
git add, commit, push...

Підвищення привілеїв та пост-експлуатація

pageGCP - Sourcerepos Privesc

Неаутентифікована перерахунок

pageGCP - Source Repositories Unauthenticated Enum
Вивчайте хакінг AWS від нуля до героя з htARTE (HackTricks AWS Red Team Expert)!

Інші способи підтримки HackTricks:

Last updated