[アップデート]Amazon GuardDutyが漏洩したAmazon ECS認証情報の不正利用を検出できるようになりました

[アップデート]Amazon GuardDutyが漏洩したAmazon ECS認証情報の不正利用を検出できるようになりました

ECS Fargate環境でも認証情報の漏洩を検出することができるようになりました!ついでにAmazon GuardDuty Investigationで調査機能の実力も確認しました。非常によき!
2026.07.18

こんにちは、臼田です。

みなさん、AWSで脅威検出してますか?(挨拶

今回はAmazon GuardDutyのFindingsであるUnauthorizedAccess:IAMUser/ResourceCredentialExfiltration.OutsideAWSおよびUnauthorizedAccess:IAMUser/ResourceCredentialExfiltration.InsideAWSがECSにも対応したのでこれを検証していきます。

概要

いつものようにGuardDutyの新しいFindingsアップデートとして下記が届きました。

{
    "version": "1",
    "type": "NEW_FINDINGS",
    "findingDetails": [
        {
            "findingType": "UnauthorizedAccess:IAMUser/ResourceCredentialExfiltration.OutsideAWS",
            "link": "https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-iam.html#unauthorizedaccess-iam-resourcecredentialexfiltrationoutsideaws",
            "findingDescription": "This finding informs you that a host outside of AWS has attempted to run AWS API operations using temporary AWS credentials that were created on an ECS resource in your AWS environment."
        },
        {
            "findingType": "UnauthorizedAccess:IAMUser/ResourceCredentialExfiltration.InsideAWS",
            "link": "https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-iam.html#unauthorizedaccess-iam-resourcecredentialexfiltrationinsideaws",
            "findingDescription": "This finding informs you that a host within AWS has attempted to run AWS API operations using temporary AWS credentials that were created on an ECS resource in your AWS environment."
        }
    ]
}

ドキュメントのリンクはこちらです。

NEW_FINDINGSと書いてあるのですが、じつはアップデートなんです。(なんでや

前回この検出タイプはAWS Lambdaの認証情報が漏洩して外部から利用された際に検出するものとして実装されました。

https://dev.classmethod.jp/articles/amazon-guardduty-resource-credential-exfiltration/

これでEC2とLambdaの認証情報に加えて、ECSの認証情報が漏洩しても検出できるようになりました。

OutsideAWSがAWS外から実行された場合の検出で、InsideAWSが別のAWSアカウントで実行された場合の検出です。

やってみた

今回はUnauthorizedAccess:IAMUser/ResourceCredentialExfiltration.OutsideAWSをECS on Fargateで検出させます。おそらくECS on EC2では問題なく検出できるでしょうから、Fargateで検出できれば御の字というわけです。

まずは適当にFargateでタスクを実行し、ECS Execでアクセスして適当にクレデンシャルを取得します。そしてどこかAWS外の環境からこれを使ってみます。詳細は省略。

少し待つとAmazon GuardDutyが検出します。やったね。

001_guardduty_ecs_exfiltration

ちゃんとUnauthorizedAccess:IAMUser/ResourceCredentialExfiltration.OutsideAWSとして検出されました。外部IPから実行されたことも概要から確認できますね。

詳細を見ていくと、影響を受けるリソースとしてECSタスクロールの情報があります。そしてLaunch typeFARGATEとあり、ちゃんとFargate環境で検出できることが確認できました!

002_guardduty_ecs_exfiltration

他にも、外部から実行されたAPIとしてListUsersがあげられたり、実行元の詳細情報がでてきます。

003_guardduty_ecs_exfiltration

これを軸に、さらにAWS CloudTrailログなどを辿ってどのような活動をされたか調査していけばよいですね。

追加調査

と、いつもならここで終わりなのですが、つい最近Amazon GuardDutyではプレビュー機能ですがAmazon GuardDuty Investigation機能が追加されました!

https://dev.classmethod.jp/articles/guardduty-investigation-preview-trial/

この機能は見つけたFindingsをAIで追加調査できる機能です!今ならプレビューなので無料で使えます!

というわけで、どこまで調査できるのか試してみました。

まずはInvestigationの機能からFinding IDを指定して実行します。しばらくすると(今回は6分)調査が完了するので見ていきましょう。

まず、リスクレベルはHighとして検出されました。実際に認証情報が漏洩していますから、わからなくないですね。

004_guardduty_ecs_exfiltration

サマリーのテキストは少し長いテキストですが、調査結果が要約されています。その中では

  • CloudTrailのログから2つのIPでの実行結果があること
  • 1つは東京リージョンからで、もう1つは外から実行されUAがmacOSであること
  • 外部からはiam:ListUserss3:ListBucketsが実行されたがいずれも失敗していること
  • AWS内での実行から3-4分後に外部から実行されていること
  • 関連するアクセスキー、クラスター、ロール、セッション、攻撃者のIPアドレスで発生から前後7日の活動を調査したがほかに関連する事象はないこと

などが説明されています。

読みづらいですが結構ちゃんと調べてくれているのがわかりますね。起きた事象の詳細や、関連する攻撃者の行動がすでに調査済みです。素晴らしい!

その下にはMITRE ATT&CKへのマッピングした情報があり、

005_guardduty_ecs_exfiltration

どのように対処していくかのレコメンデーションがあります。

007_guardduty_ecs_exfiltration

調査と対応が捗りますね。

まとめ

Amazon GuardDutyでECSでの認証情報漏洩の検出に対応しました。

特にFargateに対応してくれたのが嬉しいですね!

さらに、Investigation機能が強力であることも確認できました。今後も積極的に活用したいですね。

この記事をシェアする

AWSのお困り事はクラスメソッドへ

関連記事