GCP - KMS Privesc
Last updated
Last updated
Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Inligting oor KMS:
GCP - KMS EnumLet daarop dat in KMS die toestemming nie net geërf word van Organisasies, Mappes en Projekte nie, maar ook van Sleutelring.
cloudkms.cryptoKeyVersions.useToDecrypt
Jy kan hierdie toestemming gebruik om inligting te dekripteer met die sleutel waaroor jy hierdie toestemming het.
cloudkms.cryptoKeys.setIamPolicy
'n Aanvaller met hierdie toestemming kan homself toestemmings gee om die sleutel te gebruik om inligting te ontsleutel.
cloudkms.cryptoKeyVersions.useToDecryptViaDelegation
Hier is 'n konseptuele ontleding van hoe hierdie delegasie werk:
Diensrekening A het direkte toegang om te ontsleutel met 'n spesifieke sleutel in KMS.
Diensrekening B word die useToDecryptViaDelegation
toestemming gegee. Dit stel dit in staat om KMS te versoek om data te ontsleutel namens Diensrekening A.
Die gebruik van hierdie toestemming is implisiet in die manier waarop die KMS-diens toestemmings nagaan wanneer 'n ontsleuteling versoek word.
Wanneer jy 'n standaard ontsleuteling versoek maak met die Google Cloud KMS API (in Python of 'n ander taal), kyk die diens of die versoekende diensrekening die nodige toestemmings het. As die versoek gemaak word deur 'n diensrekening met die useToDecryptViaDelegation
toestemming, verifieer KMS of hierdie rekening toegelaat word om ontsleuteling aan te vra namens die entiteit wat die sleutel besit.
Definieer die Aangepaste Rol: Skep 'n YAML-lêer (bv. custom_role.yaml
) wat die aangepaste rol definieer. Hierdie lêer moet die cloudkms.cryptoKeyVersions.useToDecryptViaDelegation
toestemming insluit. Hier is 'n voorbeeld van hoe hierdie lêer mag lyk:
Skep die Aangepaste Rol met die gcloud CLI: Gebruik die volgende opdrag om die aangepaste rol in jou Google Cloud projek te skep:
Vervang [YOUR_PROJECT_ID]
met jou Google Cloud projek ID.
Gee die Aangepaste Rol aan 'n Diensrekening: Ken jou aangepaste rol toe aan 'n diensrekening wat hierdie toestemming sal gebruik. Gebruik die volgende opdrag:
Vervang [YOUR_PROJECT_ID]
en [SERVICE_ACCOUNT_EMAIL]
met jou projek ID en die e-pos van die diensrekening, onderskeidelik.
Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)