AWS - KMS Privesc
Last updated
Last updated
Impara e pratica il hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Impara e pratica il hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Per ulteriori informazioni su KMS controlla:
kms:ListKeys
,kms:PutKeyPolicy
, (kms:ListKeyPolicies
, kms:GetKeyPolicy
)Con questi permessi è possibile modificare i permessi di accesso alla chiave in modo che possa essere utilizzata da altri account o addirittura da chiunque:
policy.json:
kms:CreateGrant
Consente a un principale di utilizzare una chiave KMS:
Un grant può consentire solo determinati tipi di operazioni: https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#terms-grant-operations
Nota che potrebbero volerci un paio di minuti affinché KMS consenta all'utente di utilizzare la chiave dopo che il grant è stato generato. Una volta trascorso quel tempo, il principale può utilizzare la chiave KMS senza dover specificare nulla. Tuttavia, se è necessario utilizzare il grant immediatamente usa un grant token (controlla il codice seguente). Per maggiori informazioni leggi questo.
Nota che è possibile elencare i grant delle chiavi con:
kms:CreateKey
, kms:ReplicateKey
Con questi permessi è possibile replicare una chiave KMS abilitata per più regioni in una regione diversa con una politica diversa.
Quindi, un attaccante potrebbe abusare di questo per ottenere privesc il suo accesso alla chiave e usarla.
kms:Decrypt
Questo permesso consente di utilizzare una chiave per decrittografare alcune informazioni. Per ulteriori informazioni, controlla:
Impara e pratica il hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Impara e pratica il hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)