Во время аудита AWS IAM организации я сделал следующее:
aws iam generate-credential-report
# a bit later, download the CSV
aws iam get-credential-report
Во время просмотра отчета мне показалось крайне необычным: колонка password_last_used
для <root_account>
не пустое значение:
Как это вообще возможно?
Предполагается, что корневые учетные записи IAM не имеют пароля; даже в этом отчете password_enabled
показывает not_supported
.
Каковы последствия этого факта? Может ли это быть признаком нарушения?
Это какой-то известный глюк AWS? Кому я должен написать письмо, чтобы прояснить это?
Я считаю то, что вы видите, это нормально.
Учетные записи root НЕ беспарольные. Вам обязательно понадобится пароль для входа в систему как root. Корневая учетная запись - это адрес электронной почты, который вы использовали при создании учетной записи. Он не отображается в IAM, т.е. вы не увидите учетную запись, указанную как root.
Что касается password_enabled
показывая not_supported
это тоже нормально.
Если у пользователя есть пароль, это значение ИСТИНА. В противном случае это ЛОЖЬ. Значение для корневого пользователя учетной записи AWS всегда not_supported.
Причина этого not_supported
потому что у учетной записи root должен быть пароль для входа в консоль.
В password_last_used
datum, показывает, что учетная запись root использовалась вчера. Если вы или кто-то из вашей команды вчера не вошел в систему с учетной записью root, у вас есть вероятность взлома. Я настоятельно рекомендую:
1) Использование MFA с учетной записью root 2) Настройте фильтр журнала CloudTrail, чтобы предупреждать об использовании корневого ключа.
Используйте фильтр, похожий на:
"filterPattern": "{ $.userIdentity.type = "Root" && $.userIdentity.invokedBy NOT EXISTS && $.eventType != "AwsServiceEvent" }"
Ссылки