GCP - Compute Instances
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Google Cloud Compute Instances є налаштовуваними віртуальними машинами на хмарній інфраструктурі Google, які пропонують масштабовану та за запитом обчислювальну потужність для широкого спектру застосувань. Вони надають такі функції, як глобальне розгортання, постійне зберігання, гнучкий вибір ОС та потужні інтеграції мережі та безпеки, що робить їх універсальним вибором для хостингу веб-сайтів, обробки даних та ефективного виконання застосувань у хмарі.
Confidential VMs використовують апаратні функції безпеки, які пропонуються останнім поколінням процесорів AMD EPYC, які включають шифрування пам'яті та безпечну зашифровану віртуалізацію. Ці функції дозволяють VM захищати дані, які обробляються та зберігаються в ній, навіть від хостової операційної системи та гіпервізора.
Щоб запустити Confidential VM, можливо, потрібно буде змінити такі речі, як тип машини, мережевий інтерфейс, образ завантажувального диска.
Можливо вибрати диск для використання або створити новий. Якщо ви виберете новий, ви можете:
Вибрати розмір диска
Вибрати ОС
Вказати, чи хочете ви видалити диск, коли екземпляр буде видалено
Шифрування: За замовчуванням буде використано ключ, керований Google, але ви також можете вибрати ключ з KMS або вказати сирий ключ для використання.
Можливо розгорнути контейнер всередині віртуальної машини. Можливо налаштувати образ для використання, встановити команду для виконання всередині, аргументи, змонтувати об'єм та змінні середовища (чутлива інформація?) і налаштувати кілька параметрів для цього контейнера, таких як виконання як привілейований, stdin та псевдо TTY.
За замовчуванням буде використано обліковий запис служби за замовчуванням Compute Engine. Електронна пошта цього SA виглядає так: <proj-num>-compute@developer.gserviceaccount.com
Цей обліковий запис служби має роль редактора на всьому проекті (високі привілеї).
А стандартні області доступу є такими:
https://www.googleapis.com/auth/devstorage.read_only -- Доступ на читання до бакетів :)
https://www.googleapis.com/auth/logging.write
https://www.googleapis.com/auth/monitoring.write
https://www.googleapis.com/auth/servicecontrol
https://www.googleapis.com/auth/service.management.readonly
https://www.googleapis.com/auth/trace.append
Однак, можливо надати cloud-platform
одним клацанням або вказати кастомні.
Можливо дозволити HTTP та HTTPS трафік.
IP Forwarding: Можливо увімкнути IP пересилання з моменту створення екземпляра.
Hostname: Можливо надати екземпляру постійне ім'я хоста.
Interface: Можливо додати мережевий інтерфейс
Ці параметри збільшать безпеку VM і рекомендуються:
Secure boot: Secure boot допомагає захистити ваші VM екземпляри від шкідливих програм на рівні завантаження та ядра та руткітів.
Enable vTPM: Віртуальний модуль довіреної платформи (vTPM) перевіряє цілісність вашого гостьового VM перед завантаженням та під час завантаження, а також пропонує генерацію та захист ключів.
Integrity supervision: Моніторинг цілісності дозволяє вам контролювати та перевіряти цілісність завантаження ваших захищених VM екземплярів за допомогою звітів Stackdriver. Вимагає увімкнення vTPM.
Звичайний спосіб увімкнення доступу до VM - це дозволити певні SSH публічні ключі для доступу до VM.
Однак також можливо увімкнути доступ до VM через сервіс os-config
, використовуючи IAM. Більше того, можливо увімкнути 2FA для доступу до VM, використовуючи цей сервіс.
Коли цей сервіс увімкнено, доступ через SSH ключі вимкнено.
Можливо визначити автоматизацію (userdata в AWS), яка є командами оболонки, що виконуватимуться щоразу, коли машина вмикається або перезавантажується.
Також можливо додати додаткові метадані у форматі ключ-значення, які будуть доступні з кінцевої точки метаданих. Ця інформація зазвичай використовується для змінних середовища та скриптів запуску/вимкнення. Це можна отримати, використовуючи метод describe
з команди в розділі перерахування, але також можна отримати зсередини екземпляра, отримуючи доступ до кінцевої точки метаданих.
Крім того, токен автентифікації для прикріпленого облікового запису служби та загальна інформація про екземпляр, мережу та проект також будуть доступні з метаданих. Для отримання додаткової інформації перегляньте:
За замовчуванням використовується ключ шифрування, керований Google, але можна налаштувати ключ шифрування, керований клієнтом (CMEK). Ви також можете налаштувати, що робити, коли використаний CMEK відкликано: нічого або вимкнути віртуальну машину.
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)