AWSアクセスキーのコミットされたリポジトリが公開されているのを検知すると『AWSCompromisedKeyQuarantineV2』というロールが付与される

先日誤ってアクセスキーがコード中にベタ書き状態のコミットがあるのを忘れていて(修正したコミットが最新だったのよ。。) Githubにpushしたところ、すぐさまAWSGithubから注意メールが届きまして。

で、 AWSのCloudTrailで不正な操作がないか調べていたところ、そのIAMユーザーにポリシーを付与するという身に覚えのない操作をしている履歴があり。

f:id:jacoyutorius:20211011185427p:plain
発信元IPが AWS Internal になっている

AWSから届いたメールを見ると、

To protect your account from excessive charges and unauthorized activity, we have attached the "AWSCompromisedKeyQuarantineV2" AWS Managed Policy ("Quarantine Policy") to the IAM User listed above. 
The Quarantine Policy attached to the User protects your account by limiting permissions for a narrow set of AWS services that are targeted by bad actors with publicly available IAM credentials.

不正な操作を防止するために AWSCompromisedKeyQuarantineV2 というロールを付与したとのこと。

このロールの中身を見てみると ec2:RunInstancesiam:ChangePasswordiam:CreateAccessKey 等が denyされているのでした。

何年か前に同じことをやらかしたときはこんな機能無かったので(そもそもAWSが検知していなかったと思う)びっくりでした。便利。

(もちろんこの後該当ユーザーのアクセスキーは無効化して新しいやつ発行しました)