Check ID:
Provider: AWS
Service:
Severity: LOW
Resource type:
rds_cluster_non_default_portProvider: AWS
Service:
rdsSeverity: LOW
Resource type:
AwsRdsDbClusterWhat this check verifies
RDS DB clusters are assessed for use of a non-default database port. Evaluation focuses on whether the cluster listens on the engine’s well-known default port (e.g.,3306, 5432, 1433, 1521, 50000) or on a custom port.
Risk
Using a default DB port eases discovery via mass scans and banner-grabbing, enabling:- Engine-specific exploit attempts
- Brute-force/credential-stuffing of logins
- Targeted DDoS on the service
Recommendation
Use a non-default port and enforce least-privilege network access:- Allow only approved sources
- Keep databases in private subnets
- Require TLS and strong, centralized auth
- Monitor failed connections
port as part of defense-in-depth.
Remediation
- CLI
- Terraform
- Native IaC
- Dashboard steps
aws rds modify-db-cluster —db-cluster-identifier <db-cluster-id> —port <non-default-port> —apply-immediately
References
- https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.DBInstance.Modifying.html
- https://docs.aws.amazon.com/securityhub/latest/userguide/rds-controls.html#rds-23
Where this check fires
This check runs on every scheduled scan against your AWS account. Findings appear at Cloud Security → Findings filterable byCheck ID = rds_cluster_non_default_port. 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