GCP - Cloud Run Enum
Cloud Run
Cloud Run - це платформа керованого обчислення без сервера, яка дозволяє запускати контейнери безпосередньо на масштабованій інфраструктурі Google.
Ви можете запускати свій контейнер або, якщо ви використовуєте Go, Node.js, Python, Java, .NET Core або Ruby, ви можете використовувати опцію розгортання на основі вихідного коду, яка створює контейнер за вас.
Google створив Cloud Run для продуктивної роботи разом з іншими службами на Google Cloud, щоб ви могли створювати повнофункціональні додатки.
Служби та завдання
На Cloud Run ваш код може працювати постійно як служба або як завдання. Як служби, так і завдання працюють в одному середовищі і можуть використовувати ті ж інтеграції з іншими службами на Google Cloud.
Служби Cloud Run. Використовуються для виконання коду, який реагує на веб-запити або події.
Завдання Cloud Run. Використовуються для виконання коду, який виконує роботу (завдання) і завершується після завершення роботи.
Служба Cloud Run
Google Cloud Run - це ще один пропозиція без сервера, де ви можете шукати змінні середовища. Cloud Run створює невеликий веб-сервер, який працює на порту 8080 в контейнері за замовчуванням, який чекає на HTTP GET-запит. Коли отримано запит, виконується завдання, а журнал завдання виводиться через відповідь HTTP.
Відповідні деталі
За замовчуванням, доступ до веб-сервера є публічним, але його також можна обмежити для внутрішнього трафіку (VPC...). Більше того, аутентифікація для звернення до веб-сервера може бути дозволена всім або вимагати аутентифікацію через IAM.
За замовчуванням шифрування використовує керований Google ключ, але також можна вибрати CMEK (Ключ шифрування, керований клієнтом) з KMS.
За замовчуванням використовується обліковий запис служби - це обліковий запис Compute Engine за замовчуванням, який має доступ Редактора до проекту та має область
cloud-platform
.Можливо визначити змінні середовища у відкритому вигляді для виконання, а також підключати секрети хмари або додавати секрети хмари до змінних середовища.
Також можливо встановлювати з'єднання з Cloud SQL та підключати файлову систему.
URL-адреси розгорнутих служб подібні до
https://<svc-name>-<random>.a.run.app
У служби Run може бути більше 1 версії або ревізія, і розподіляти трафік між кількома ревізіями.
Енумерація
Завдання Cloud Run
Завдання Cloud Run краще підходять для контейнерів, які виконуються до завершення і не обслуговують запити. Завдання не мають можливості обслуговувати запити або слухати порт. Це означає, що, на відміну від служб Cloud Run, завдання не повинні включати в себе веб-сервер. Замість цього контейнери завдань повинні завершувати роботу після завершення.
Підвищення привілеїв
На наступній сторінці ви можете перевірити, як зловживати дозволами cloud run для підвищення привілеїв:
GCP - Run PrivescНеаутентифікований доступ
GCP - Cloud Run Unauthenticated EnumПісляексплуатаційна діяльність
GCP - Cloud Run Post ExploitationПостійність
GCP - Cloud Run PersistenceПосилання
Last updated