EncryptionKey
KMS/Key Vault/Cloud KMS symmetric or asymmetric key.
class: Secret
Realizing resources
aws aws
| resource | scope | enumerate | required permissions |
|---|---|---|---|
aws:cloudhsm:cluster |
regional | cloudhsm:DescribeClusters |
cloudhsm:DescribeClusters |
aws:kms:key |
regional | kms:ListKeys |
kms:ListKeys |
gcp gcp
| resource | scope | enumerate | required permissions |
|---|---|---|---|
gcp:cloudkms:key-ring |
regional | cloudkms.projects.locations.keyRings.list |
cloudkms.keyRings.list |
azure azure
| resource | scope | enumerate | required permissions |
|---|---|---|---|
azure:keyvault:managedhsm |
global | arg:microsoft.keyvault/managedhsms |
Microsoft.KeyVault/managedhsms/read |
As edge source
As edge target
Exposure sites
Rules that touch EncryptionKey 22
Holding a CloudHSM Crypto User credential (with VPC reach) lets a principal decrypt with the HSM key.
aws
CanDecryptA CU with wrap rights can wrap an EXTRACTABLE key out of the HSM for offline use.
aws
CanExportKeyAn external principal permitted by the key policy/grant can use the key cross-account.
aws
CanDecryptGenerateDataKey* returns a usable plaintext data key -> envelope decryption of ciphertext under the key.
aws
CanDecryptAdmin of a key (PutKeyPolicy/CreateGrant) can self-grant kms:Decrypt then use it.
aws
CanDecryptReEncryptFrom proves KMS can decrypt the source ciphertext; with an attacker-decryptable destination key, data is recoverable.
aws
CanDecryptKeys with imported material (Origin: EXTERNAL) may be controllable offline by the importer.
aws
CanExportKeyA principal with CanModifyConfiguration(DES) can upgrade a CONDITIONAL(key_permission) CanReadData edge to ACTIVE by pointing the DES at an attacker-controlled Key Vault key and triggering VM lifecycle (re-encrypt under attacker key on next attach/detach).
azure
CanReadDatadiskEncryptionSets/write allows changing the Key Vault key reference in a DES, enabling attacker-controlled key wrapping for re-encryption at next attachment.
azure
CanModifyConfigurationKey Vault Administrator can decrypt/unwrap with every key in the vault.
azure
CanDecryptA vault self-grant equally yields decrypt/unwrap on every key in the vault.
azure
CanDecryptA Managed HSM local Crypto User role can decrypt/unwrap with an HSM key.
azure
CanDecryptPossession of the security domain + quorum keys can clone all HSM keys to a new pool.
azure
CanExportKeyA principal whose effective permissions include key or service-account-key creation can mint new keys.
Holding decrypt on a secret's wrapping key upgrades a key-gated (CONDITIONAL) secret read to ACTIVE.
cloudkms.cryptoKeyVersions.useToDecapsulate lets a principal decapsulate a shared secret with a KEM key.
gcp
CanDecryptcloudkms.cryptoKeyVersions.useToDecrypt lets a principal decrypt with the key.
gcp
CanDecryptA principal that can execute as a workload SA holding useToDecrypt can decrypt.
gcp
CanDecryptA key manager that can setIamPolicy can self-grant and then decrypt.
gcp
CanDecrypt