Skip to main content
compliance · aws

EBS volumes without encryption at rest

resource types
1
rule IDs covered
1
severity
high

What does ZopNight detect here?

An unencrypted EBS volume cannot be encrypted in place. Fixing it requires a snapshot, a new encrypted volume, and a detach-attach cycle with downtime. ZopNight flags these as high severity because the remediation gets harder the longer the volume lives and grows.

Signal and threshold

How ZopNight evaluates EBS volumes without encryption at rest.
Field Value
Rule IDsRC-172
Categorycompliance
Severityhigh
Metricnone — pure configuration read
Sourceebs_unencrypted.go

Why this is high severity but costs nothing

There is no dollar saving here, since encryption is free on EBS. It is rated high because of the remediation path, not the exposure.

An EBS volume cannot be encrypted in place. There is no toggle. Fixing one means:

  1. Snapshot the unencrypted volume
  2. Create a new volume from that snapshot with encryption enabled
  3. Stop the instance, detach the old volume, attach the new one, start it

That is real downtime, and the snapshot-and-copy step scales with volume size. A 100 GB volume is an inconvenience; a 4 TB one is a maintenance window you have to schedule.

The fix that matters most is the account setting

Remediating individual volumes is treating symptoms. Enable EBS encryption by default at the account level, per region, and every volume created afterwards is encrypted with no workflow change:

Terminal window
aws ec2 enable-ebs-encryption-by-default --region us-east-1
aws ec2 get-ebs-encryption-by-default --region us-east-1

It is a per-region setting, which is the usual reason a fleet is encrypted in one region and not another. Doing this first means the list stops growing while you work through the backlog.

Listing volumes with encrypted set to false

Terminal window
aws ec2 describe-volumes --filters Name=encrypted,Values=false --query 'Volumes[].[VolumeId,Size,State,Attachments[0].InstanceId]' --output table

Sequencing the backlog

Do detached volumes first: no downtime, and some of them are orphans you can delete outright rather than encrypt. Then the smallest attached ones, to build confidence in the procedure before you take a window for the large ones.

See it fire on your bill.

Connect an account read-only. The first findings land in minutes.

417 rule families across 353 resource types on 22 platforms. Every threshold, metric, and IAM action is documented on these pages before you grant anything.

417 rule families documented
353 resource types covered
read-only default access level
Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console· Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console·