A few notes on AWS Nitro Enclaves: KMS integration
Summary: Trail of Bits' third post on AWS Nitro Enclaves catalogs passive and active attack classes against the enclave-KMS communication channel, noting that KMS validates attestation timestamps to be at most five minutes old and that the Encrypt operation lacks the attestation-based security mechanisms. The post details attacks including swapping encrypted data keys stored outside the enclave, manipulating the optional keyId parameter and unprotected CiphertextBlob metadata to force use of an attacker-chosen CMK, and replaying attestations within the five-minute window since they are not cryptographically bound to requests.
Why it matters: Attestations are not bound to the requests they accompany, so a malicious host can reuse one within the five-minute window across any supported KMS operation with arbitrary parameters - and the post states these vulnerabilities are basically unsolvable without a secure communication channel such as TLS initiated inside the enclave.
Read the original at Trail of Bits Blog ↗