Network ACL allows all inbound traffic from the internet
- Severity
- Low
- Service
- VPC
- Check ID
- NACL_ALLOWS_ALL_TRAFFIC
What this check finds
A NACL ALLOW rule permits every protocol and port from 0.0.0.0/0 or ::/0. This is the rule AWS ships on the default NACL of every VPC, so it is expected on default NACLs and the associated security groups are the effective control there — check the IsDefault flag on the finding. On a NACL you created and attached deliberately, it means the subnet-level firewall is enforcing nothing and the whole defence rests on security groups alone.
Passing looks like: Network ACLs restrict inbound traffic.
How to fix it
If this is a custom NACL, replace the allow-all rule with rules scoped to the protocols, ports, and CIDRs the subnet actually needs. If it is the default NACL, confirm the security groups on the subnet's resources are restrictive, or attach a custom NACL.
AWS console
VPC → Network ACLs → select NACL → Inbound rules → 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 |
|---|---|
| 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