The root account has active access keys
- Impact
- Anyone who finds this key controls the whole account: data, servers, billing. It cannot be limited by any permission.
- Evidence
- 1 active key, created 2 years ago, last used 9 days ago from a developer laptop.
- Fix
- Create named admin users with MFA, move the work to them, then delete the root key and add an alarm on any root sign-in.
- Effort
- About 1 hour. Included in Lockdown.
resource "aws_cloudwatch_metric_alarm" "root_login" { alarm_name = "root-account-used" namespace = "CISBenchmark" metric_name = "RootAccountUsage" # CloudTrail metric filter statistic = "Sum" period = 300 evaluation_periods = 1 threshold = 1 comparison_operator = "GreaterThanOrEqualToThreshold" alarm_actions = [aws_sns_topic.security_alerts.arn] }
Demo report from a test account built for this purpose. Client reports are confidential.