GCP - Bigtable Перерахування
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.
Bigtable
Google Cloud Bigtable — це повністю керована, масштабована NoSQL база даних, призначена для застосунків, що потребують надзвичайно високої пропускної здатності та низької затримки. Вона створена для обробки величезних обсягів даних — петабайтів на тисячах вузлів — при цьому забезпечуючи швидкий доступ для читання та запису. Bigtable ідеально підходить для робочих навантажень типу time-series data, IoT telemetry, financial analytics, personalization engines та великих операційних баз даних. Вона використовує розріджену, розподілену, багатовимірну відсортовану мапу як модель зберігання, що робить її ефективною для збереження широких таблиць, де багато стовпців можуть бути порожніми. Learn more.
Ієрархія
- Інстанс Bigtable
Інстанс Bigtable — це ресурс верхнього рівня, який ви створюєте. Він сам по собі не зберігає дані — уявіть його як логічний контейнер, що групує ваші кластери і таблиці.
Існують два типи інстансів:
- інстанс для розробки (одновузловий, дешевий, не для виробничого використання)
- виробничий інстанс (може мати кілька кластерів)
- Кластери
Кластер містить фактичні обчислювальні та дискові ресурси, які використовуються для обслуговування даних Bigtable.
- Кожен кластер розташований у одному регіоні.
- Він складається з вузлів, які надають CPU, RAM та мережеву пропускну здатність.
- Ви можете створювати інстанси з кількома кластерами для високої доступності або глобального читання/запису.
- Дані автоматично реплікуються між кластерами в одному інстансі.
Важливо:
- Таблиці належать інстансу, а не конкретному кластеру.
- Кластери просто надають ресурси для обслуговування даних.
- Таблиці
Таблиця в Bigtable схожа на таблицю в NoSQL базах даних:
- Дані зберігаються в рядках, ідентифікованих row key.
- Кожний ряд містить column families, які містять стовпці.
- Вона розріджена: порожні клітинки не займають місця.
- Bigtable зберігає дані, відсортовані лексикографічно за row key.
Таблиці обслуговуються усіма кластерами в інстансі.
- Tablets (і Hot Tablets)
Bigtable розбиває кожну таблицю на горизонтальні партиції, які називаються tablets. Таблет — це:
- суміжний діапазон row key.
- зберігається на одному вузлі в будь-який момент часу.
- Tablets автоматично розділяються, зливаються та переміщуються Bigtable.
“Hot tablet” виникає коли:
- Надто багато операцій читання або запису приходять по одному і тому ж діапазону row key (одна і та ж tablet).
- Конкретна tablet/вузол перевантажується.
- Це призводить до hotspot-ів (вузьких місць у продуктивності).
- Authorized Views
Authorized views дозволяють створити підмножину даних таблиці, яку можна ділити з конкретними користувачами або додатками без надання доступу до всієї таблиці. Це корисно для:
- Обмеження доступу до чутливих даних.
- Надання доступу тільки для читання до певних стовпців або рядків.
- App Profiles
App profile в Bigtable — це конфігурація, яка визначає, як конкретний застосунок або клієнт повинен взаємодіяти з інстансом Bigtable, особливо в середовищах з кількома кластерами. Він керує поведінкою маршрутизації — чи повинні запити направлятися до одного кластера або розподілятися між кількома кластерами для високої доступності — і визначає, як реплікуються записи, обираючи між синхронним (сильніша узгодженість) або асинхронним (нижча затримка) режимами.
# Cloud Bigtable
gcloud bigtable instances list
gcloud bigtable instances describe <instance>
gcloud bigtable instances get-iam-policy <instance>
## Clusters
gcloud bigtable clusters list
gcloud bigtable clusters describe <cluster>
## Tables
gcloud bigtable tables list --instance <INSTANCE>
gcloud bigtable tables describe --instance <INSTANCE> <TABLE>
gcloud bigtable tables get-iam-policy --instance <INSTANCE> <TABLE>
## Backups
gcloud bigtable backups list --instance <INSTANCE>
gcloud bigtable backups describe --instance <INSTANCE> <backupname>
gcloud bigtable backups get-iam-policy --instance <INSTANCE> <backupname>
## Hot Tables
gcloud bigtable hot-tablets list
## App Profiles
gcloud bigtable app-profiles list --instance <INSTANCE>
gcloud bigtable app-profiles describe --instance <INSTANCE> <app-prof>
## Authorized Views
gcloud bigtable authorized-views list --instance <INSTANCE> --table <TABLE>
gcloud bigtable authorized-views describe --instance <INSTANCE> --table <TABLE> <VIEW>
Підвищення привілеїв
Пост-експлуатація
GCP - Bigtable 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.
HackTricks Cloud

