ECR repository is publicly accessible
- Severity
- Medium
- Service
- ECR
- Check ID
- ECR_PUBLIC
What this check finds
The Amazon Elastic Container Registry (ECR) stores Docker images. These may contain sensitive information. These are somewhat hard for an attacker to find, but should not be made public.
Passing looks like: ECR repositories are private.
How to fix it
Remove the public access policy from the ECR repository.
AWS CLI
aws ecr delete-repository-policy --repository-name REPO_NAMEIf you need public access, use ECR Public Gallery (public.ecr.aws) intentionally rather than a private repo with a public policy.
Names in capitals are placeholders for your own resource. Review a command before you run it.
AWS console
ECR → Repositories → select repo → Permissions → Edit.
Compliance controls it is evidence for
A failing result counts against these controls in KloudLytics; a passing one is evidence towards them. How compliance mapping works
| Framework | Controls |
|---|---|
| PCI-DSS v4.0.1 |
|
| SOC 2 — Trust Services Criteria |
|
| NIST SP 800-53 Rev5 (Moderate) |
|
| NIST Cybersecurity Framework 2.0 |
|
| ISO/IEC 27001:2022 Annex A |
|
Checked on every scan
KloudLytics runs this check each time it scans a connected AWS account, through a read-only role, and lists every affected resource with its region. On Pro and Business a fix is written for the specific resource rather than the general case above. The exact access it needs