Security Hub で存在しない IAM ユーザが検知されたときの対処方法
困っていた内容
Security Hub で検出されたリソースを確認したところ、見慣れない IAM ユーザ名(例:AIDAJQABLZS4A3QDU576Q
)が記載されていました。
念のため確認しましたが、そのような IAM ユーザは登録されておらず、一見アクセスキーに似ていたのでアクセスキーも確認しましたが、該当するものはありませんでした。この IAM ユーザはなんでしょうか。
どう対応すればいいの?
AWS CLI でlist-usersを実行してください。
$ aws iam list-users { "Users": [ { "Path": "/", "UserName": "hato", "UserId": "AIDAJQABLZS4A3QDU576Q", "Arn": "arn:aws:iam::123456789012:user/hato", "CreateDate": "2020-01-01T01:01:01+00:00" } ] }
表示されたリソース名は、マネージメントコンソールでよく見かける IAM ユーザ名(フレンドリ名)ではなく、IAM ユーザ毎に設定されたユーザ ID です。ARN でもユーザ名が使用されるため、ユーザ ID はあまり名にすることはありませんが、AWS CLI や API を使用することで、ユーザ ID とユーザ名の紐付けを確認することができます。
そのため、list-usersで IAM ユーザ名を確認してください。
なお、ID は次のプレフィックスを使用します。
IAM 識別子 - AWS Identity and Access Management
プレフィックス | リソースタイプ |
---|---|
ABIA | AWS STS サービスベアラートークン |
ACCA | コンテキスト固有の認証情報 |
AGPA | ユーザーグループ |
AIDA | IAM ユーザー |
AIPA | Amazon EC2 インスタンスプロファイル |
AKIA | アクセスキー |
ANPA | 管理ポリシー |
ANVA | 管理ポリシーのバージョン |
APKA | パブリックキー |
AROA | ロール |
ASCA | 証明書 |
ASIA | 一時 (AWS STS) アクセスキー ID はこのプレフィックスを使用しますが、シークレットアクセスキーとセッショントークンとの組み合わせでのみ一意です。 |
参考資料
IAM がユーザー、ユーザーグループ、ロール、ポリシー、インスタンスプロファイル、サーバー証明書を作成する際、各リソースには次のような一意の ID が割り当てられます。
AIDAJQABLZS4A3QDU576Q
ほとんどの場合、IAM リソースを操作するときは、フレンドリ名と ARN を使用します。