Check ID:
Provider: AWS
Service:
Severity: CRITICAL
Categories:
Resource type:
opensearch_service_domains_encryption_at_rest_enabledProvider: AWS
Service:
opensearchSeverity: CRITICAL
Categories:
encryptionResource type:
AwsOpenSearchServiceDomainWhat this check verifies
Amazon OpenSearch Service domains are evaluated forencryption at rest using AWS KMS (AES-256) across stored data, including indexes, swap files, and automated snapshots.
Risk
Unencrypted OpenSearch data can be read or copied if an attacker gains disk-level access, steals automated snapshots, or compromises the host. This jeopardizes confidentiality and enables tampering with stored indices, affecting integrity.Recommendation
Enableencryption at rest with AWS KMS, preferably using customer-managed keys.
- Enforce least privilege key policies and restrict grants
- Enable automatic key rotation and monitor KMS usage
- Encrypt logs and any exported snapshots
- Apply defense in depth with network and IAM controls
Remediation
- CLI
- Terraform
- Native IaC
- Dashboard steps
References
- https://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/encryption-at-rest.html
- https://www.trendmicro.com/trendaivisiononecloudriskmanagement/knowledge-base/aws/Elasticsearch/encryption-at-rest.html
Where this check fires
This check runs on every scheduled scan against your AWS account. Findings appear at Cloud Security → Findings filterable byCheck ID = opensearch_service_domains_encryption_at_rest_enabled. To re-evaluate after a fix, hit Run now on the account’s schedule under Cloud Security → Schedules — the next scan re-checks this control and marks the finding fixed or keeps it persistent.
← Back to AWS checks