

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon GuardDuty の検出結果の理解と生成
<a name="guardduty_findings"></a>

GuardDuty の検出結果は、、 AWS アカウントワークロード、およびデータ内で検出された潜在的なセキュリティ問題を表します。GuardDuty は、 AWS 環境で予期しない潜在的に悪意のあるアクティビティを検出するたびに検出結果を生成します。

GuardDuty の結果は、GuardDuty コンソール**の調査結果**ページで、または AWS CLI または API オペレーションを使用して表示および管理できます。GuardDuty の検出結果を管理する方法については、「[Amazon GuardDuty の検出結果の管理](findings_management.md)」を参照してください。

**トピック:**

[GuardDuty の検出結果の形式](guardduty_finding-format.md)  
GuardDuty の検出結果タイプの形式と GuardDuty で追跡するさまざまな脅威の目的について説明します。

[サンプルの検出結果](sample_findings.md)  
GuardDuty コンソールで、または GuardDuty API や AWS CLI コマンドを使用して、検出結果のサンプルを生成します。生成される検出結果のサンプルには、GuardDuty の各検出結果に関連付けられた検出結果の詳細を理解するのに役立つ架空の詳細が含まれています。これらの検出結果は、**[SAMPLE]** のプレフィックスでマークされます。

[専用アカウントでの GuardDuty の検出結果のテスト](guardduty_findings-scripts.md)  
環境で特定の GuardDuty の検出結果をテストできます。専用の非本番 AWS アカウントで `guardduty-tester` スクリプトを実行します。GuardDuty が検出結果を検出してシミュレートするために、特定のリソースを環境にデプロイします。このエクスペリエンスは検出結果サンプルの生成とは異なります。

[GuardDuty コンソールで生成された検出結果を表示する](guardduty_working-with-findings.md)  
GuardDuty コンソールで生成された検出結果を確認する方法について説明します。

[GuardDuty の検出結果の重大度](guardduty_findings-severity.md)  
各 GuardDuty の検出結果には、 AWS 環境内の潜在的なリスクを反映する重要度レベルが関連付けられています。このセクションでは、各重大度レベルが意味する内容について説明します。

[検出結果の詳細](guardduty_findings-summary.md)  
アカウントで生成される GuardDuty の検出結果に関連付けられる詳細について説明します。このトピックには、GuardDuty の基本的な脅威検出と Extended Threat Detection、および専用の保護プランに関連付けられた詳細が含まれています。

[GuardDuty の検出結果の集約](finding-aggregation.md)  
同じ検出結果タイプが複数出現した場合に GuardDuty がどう処理するかについて説明します。検出された同じ検出結果タイプを集計することで、GuardDuty は元の検出結果タイプを最新の詳細情報で更新します。

[GuardDuty 検出結果タイプ](guardduty_finding-types-active.md)  
このセクションでは、関連付けられた[基本データソース](guardduty_data-sources.md)または[マッピングされた GuardDuty 機能](guardduty-feature-object-api-changes-march2023.md#guardduty-feature-enablement-datasource-relation)に基づく GuardDuty の検出結果タイプの一覧を示します。各検出結果タイプについて調べるには、その検出結果を選択して、その説明や、検出結果を修復する場合の手順などの詳細を確認してください。

# GuardDuty の検出結果の形式
<a name="guardduty_finding-format"></a>

GuardDuty は AWS 、環境で疑わしい動作や予期しない動作を検出すると、検出結果を生成します。検出結果は、GuardDuty で検出した潜在的なセキュリティ問題に関する詳細を含む通知です。[GuardDuty コンソールで生成された検出結果を表示する](guardduty_working-with-findings.md) には、何が起こったか、疑わしいアクティビティに関与した AWS リソース、このアクティビティがいつ発生したか、根本原因を理解するのに役立つ関連情報が含まれます。

検出結果の詳細で最も役立つ情報の 1 つは、**[finding type]** (結果タイプ) です。検出結果タイプの目的は、潜在的なセキュリティ問題について簡潔でわかりやすい説明を提供することです。例えば、GuardDuty *Recon:EC2/PortProbeUnprotectedPort* 検出結果タイプは、 AWS 環境内のどこかにEC2 インスタンスに保護されていないポートがあり、潜在的な攻撃者が調査していることをすばやく知らせます。

GuardDuty では、次のフォーマットを使って、生成するさまざまな検出結果タイプに名前を付けます。

**ThreatPurpose:ResourceTypeAffected/ThreatFamilyName.DetectionMechanism\$1Artifact**

このフォーマットの各部分は、検出結果タイプの特徴を表します。これらの特徴には、次のような説明があります。
+ **ThreatPurpose** - 攻撃型または潜在的な攻撃型の脅威の主な目的についての説明です。GuardDuty 脅威の目的の一覧表については、次のセクションを参照してください。
+ **ResourceTypeAffected** - この検出結果でどの AWS リソースが攻撃対象の候補として特定されたかを示します。現在、GuardDuty は「[GuardDuty のアクティブな検出結果タイプ](guardduty_finding-types-active.md#findings-table)」にリストされているリソースタイプの検出結果を生成できます。
+ **ThreatFamilyName** - GuardDuty で検出された全体的な脅威または潜在的な悪意のあるアクティビティの説明です。例えば、**NetworkPortUnusual** の値は、GuardDuty の検出結果で識別された EC2 インスタンスに、識別された特定のリモートポートでの通信履歴がないことを示します。
+ **DetectionMechanism** - どの GuardDuty が検出結果を検出した方法を説明します。これは、一般的な検出結果タイプの変動や、GuardDuty が特定のメカニズムを使用して検出した検出結果を示すために使用できます。例えば、**Backdoor:EC2/DenialOfService.Tcp** は、TCP 上でサービス拒否 (DoS) が検出されたことを示します。UDP バリアントは **Backdoor:EC2/DenialOfService.Udp** です。

  **.Custom** の値は、GuardDuty がカスタム脅威リストに基づいて検出結果を検出したことを示します。詳細については、「[エンティティリストおよび IP アドレスリスト](guardduty_upload-lists.md)」を参照してください。

  **.Reputation** の値は、GuardDuty がドメインレピュテーションスコアモデルを使用して検出結果を検出したことを示します。詳細については、[「 がクラウドの最大のセキュリティ脅威 AWS を追跡し、それらをシャットダウンするのに役立つ方法](https://aws.amazon.com/blogs/security/how-aws-tracks-the-clouds-biggest-security-threats-and-helps-shut-them-down/)」を参照してください。
+ **Artifact** - 悪意のあるアクティビティで使用されたツールが所有する特定のリソースを示します。例えば、検出結果タイプ [CryptoCurrency:EC2/BitcoinTool.B\$1DNS](guardduty_finding-types-ec2.md#cryptocurrency-ec2-bitcointoolbdns) の **DNS** は、Amazon EC2 インスタンスがビットコインに関連する既知のドメインと通信していることを示します。
**注記**  
Artifact はオプションであり、すべての GuardDuty 検出結果タイプで使用できるとは限りません。

## 脅威の目的
<a name="guardduty_threat_purposes"></a>

GuardDuty において、*[threat purpose]* (脅威の目的) は、攻撃型または潜在的な攻撃の段階など脅威の主な目的について説明します。例えば、**バックドア**などの脅威の目的は、攻撃型であると示します。ただし、[MITRE ATT&CK 戦術](https://attack.mitre.org/tactics/TA0010/)と一致する **[Impact]** (影響) などの脅威の目的があります。MITRE ATT&CK 戦術は、攻撃者の攻撃サイクルにおける異なるフェーズを示します。現行の GuardDutyリリースの発売で、ThreatPurpose は次の値に設定できます。

**Backdoor**  
この値は、攻撃者が AWS リソースを侵害し、そのリソースを変更して、ホームコマンドアンドコントロール (C&C) サーバーに連絡して悪意のあるアクティビティに関する詳細な指示を受けられるようにしたことを示します。

**Behavior**  
この値は、GuardDutyは特定の AWS リソースの確立されたベースラインとは異なるアクティビティやアクティビティパターンを検出したことを示します。

**CredentialAccess**  
この値は、ユーザーの環境からパスワード、ユーザー名、アクセスキーなどの認証情報を盗むために攻撃者が使用する可能性のあるアクティビティパターンを GuardDuty が検出したことを示します。この脅威の目的は、[MITRE ATT&CK 戦術](https://attack.mitre.org/matrices/enterprise/cloud/aws/)に基づいています。

**Cryptocurrency**  
この値は、GuardDuty が環境内の AWS リソースが暗号通貨 (Bitcoin など) に関連付けられたソフトウェアをホストしていることを検出したことを示します。

**DefenseEvasion**  
この値は、ユーザーの環境に侵入している間、GuardDuty は攻撃者が検出を回避するために使用する可能性のあるアクティビティまたはアクティビティパターンを検出したことを示します。この脅威の目的は、[MITRE ATT&CK 戦術](https://attack.mitre.org/matrices/enterprise/cloud/aws/)に基づいています。

**Discovery**  
この値は、GuardDuty がシステムおよび内部ネットワークに関する知識を拡張するために使用する可能性のあるアクティビティまたはアクティビティパターンを検出したことを示します。この脅威の目的は、[MITRE ATT&CK 戦術](https://attack.mitre.org/matrices/enterprise/cloud/aws/)に基づいています。

**実行**  
この値は、GuardDuty が攻撃者が AWS 環境を探索したり、データを盗んだりするために実行を試みたり、悪意のあるコードを既に実行したりする可能性があることを検出したことを示します。この脅威の目的は、[MITRE ATT&CK 戦術](https://attack.mitre.org/tactics/TA0002/)に基づいています。

**Exfiltration**  
この値は、GuardDuty が環境からデータを盗もうとするときに攻撃者が使用する可能性のあるアクティビティまたはアクティビティパターンを検出したことを示します。この脅威の目的は、[MITRE ATT&CK 戦術](https://attack.mitre.org/tactics/TA0010/)に基づいています。

**Impact**  
この値は、GuardDuty がアクティビティまたはアクティビティパターンを検出することにより、ユーザーのシステムおよびデータを操作、中断、または破壊しようとしていることを示しています。この脅威の目的は、[MITRE ATT&CK 戦術](https://attack.mitre.org/matrices/enterprise/cloud/aws/)に基づいています。

**InitialAccess**  
この値は、攻撃者がユーザーの環境へのアクセスを確立しようとするときの、攻撃の初期アクセス段階に一般的に関連しています。この脅威の目的は、[MITRE ATT&CK 戦術](https://attack.mitre.org/matrices/enterprise/cloud/aws/)に基づいています。

**Pentest**  
 AWS リソースの所有者や承認された担当者は、 AWS アプリケーションに対して意図的にテストを実行して、オープンなセキュリティグループや過度に寛容なアクセスキーなどの脆弱性を見つける場合があります。これらの侵入テストは、攻撃者が気づく前に脆弱なリソースを特定してロックダウンする目的で実行されます。ただし、承認済みペンテスターが使用する一部のツールは一般的なものであるため、不正なユーザーや攻撃者がこのテストに便乗して利用する場合があります。GuardDuty は、このようなアクティビティの真の意図は特定できませんが、**[Pentest]** (侵入テスト) 値により、GuardDuty がこのようなアクティビティを検出し、および既知の侵入テストツールで生成したアクティビティと類似しユーザーのネットワークへの悪意のある調査を示します。

**Persistence**  
この値は、GuardDuty が初期アクセスルートが切断された場合でも、攻撃者がシステムへのアクセスを維持するために使用する可能性のあるアクティビティまたはアクティビティパターンを検出したことを示します。例えば、既存のユーザーの侵入して得た認証情報を介してアクセスした後に、新しい IAM ユーザーを作成することが含まれます。既存のユーザーの認証情報が削除されると、攻撃者はオリジナルイベントの一部として検出されなかった新しいユーザーへのアクセスを保持します。この脅威の目的は、[MITRE ATT&CK 戦術](https://attack.mitre.org/matrices/enterprise/cloud/aws/)に基づいています。

**Policy**  
この値は、 AWS アカウント が推奨されるセキュリティのベストプラクティスに反する動作をしていることを示します。例えば、 AWS リソースまたは環境に関連付けられたアクセス許可ポリシーの意図しない変更や、ほとんどまたはまったく使用すべきでない特権アカウントの使用などです。

**PrivilegeEscalation**  
この値は、ユーザーの AWS 環境下の関連プリンシパルが、攻撃者にネットワークへのより高いレベルの許可を取得するために使用する可能性のあることを通知します。この脅威の目的は、[MITRE ATT&CK 戦術](https://attack.mitre.org/matrices/enterprise/cloud/aws/)に基づいています。

**Recon**  
この値は、攻撃者が環境の偵察を実行するときに、アクセスを拡大したり、リソースを利用したりする方法を決定するために使用する可能性のあるアクティビティまたはアクティビティパターンを GuardDuty が検出したことを示します。例えば、このアクティビティには、ポートを調査したり、ユーザーをリストアップしたり、特にデータベーステーブルをリストアップしたりして、 AWS 環境の脆弱性を探そうとすることを含めることができます。

**Stealth**  
この値は、攻撃者が積極的にアクションを隠そうとしていることを示します。例えば、匿名化したプロキシサーバーを使用し、アクティビティの本質の判断を非常に難しくしています。

**Trojan**  
この値は、悪意のあるアクティビティを密かに実行するトロイの木馬プログラムが攻撃に使用されていることを示します。このソフトウェアは合法的なプログラムを装う場合があります。ユーザーは、このソフトウェアを誤って実行することがあります。脆弱性を特定して自動的に実行されることもあります。

**UnauthorizedAccess**  
この値は、承認されていない個人による不審なアクティビティまたは不審なアクティビティパターンが GuardDuty で検出されたことを示します。

# GuardDuty マルウェア検出のスキャンエンジン
<a name="guardduty-malware-detection-scan-engine"></a>

Amazon GuardDuty には、内部で構築および管理されるスキャンエンジンと[サードパーティーベンダー](https://www.bitdefender.com/blog/businessinsights/bitdefender-and-amazon-web-services-strengthen-cloud-security/)があります。どちらも、 AWSをターゲットとする可能性のあるさまざまな種類のマルウェアを可視化する多様な内部フィードから取得された侵害のインジケータ (IoC) を使用します。また、GuardDuty には、セキュリティエンジニアによって追加された YARA ルールに基づく検出定義と、ヒューリスティックおよび機械学習 (ML) モデルに基づく検出も含まれます。Amazon S3 オブジェクトをスキャンする場合、GuardDuty マルウェア保護は、同一のスキャン定義とエンジンを使用して同一オブジェクトを複数回スキャンしても、一貫した結果を生成します。署名ベースの検出には、バイトの一致だけでなく、複雑な可能性のあるコードのスニペットも含まれており、スキャナーはコンテンツを解析して決定を下すことができます。

マルウェアスキャンエンジンは、マルウェアデトネーションにより実際のシステムで実行されるサンプルをモニタリングするライブ行動分析を実行しません。GuardDuty ソリューションは主に、ファイルベースの検出です。ファイルレスマルウェアを検出するために、GuardDuty は Amazon EKS、Amazon EC2、Amazon ECS ( AWS Fargateを含む) の [Runtime Monitoring](runtime-monitoring.md) などのエージェントベースのソリューションを提供します。

GuardDuty がマルウェアをスキャンするファイル形式に制限がないと、使用するスキャンエンジンでは、クリプトマイナー、ランサムウェア、Web シェルなど、さまざまなタイプのマルウェアを検出できます。フルマネージド型の GuardDuty スキャンエンジンは、マルウェア署名のリストを 15 分ごとに継続的に更新します。

スキャンエンジンは、内部マルウェアデトネーションコンポーネントを使用する GuardDuty 脅威インテリジェンスシステムの一部です。これにより、複数のソースからマルウェアと悪意のないサンプルを独立して収集することで、新しい脅威インテリジェンスが生成されます。脅威インテリジェンスシステムからのファイルハッシュ IoC タイプは、さらにマルウェアスキャンエンジンにフィードされ、既知の不正なファイルハッシュに基づいてマルウェアを検出します。

# GuardDuty のサンプルの検出結果生成
<a name="sample_findings"></a>

Amazon GuardDuty はサンプル検出結果を生成し、生成できるさまざまな検出結果タイプを視覚化して理解することができます。サンプル検出結果を生成すると、GuardDuty は、攻撃シークエンス検出結果タイプを含む、サポートされている検出結果タイプごとに、1 つのサンプルを現在の検出結果リストに追加します。

生成されるサンプルは、プレースホルダーの値が入力された近似値です。生成されるサンプルはご利用の環境での実際の検出結果とは異なりますが、EventBridge イベントやフィルターなど、GuardDuty のさまざまな設定をテストするために使用できます。検出結果タイプに使用できる値のリストについては、[GuardDuty 検出結果タイプ](guardduty_finding-types-active.md) テーブルを参照してください。

## GuardDuty の コンソールや API で使用したサンプル検出結果の生成
<a name="sample_console"></a>

任意のアクセス方法を選択して、サンプルの検出結果を生成します。

**注記**  
GuardDuty コンソールを使用すると、各検出結果タイプのいずれかを生成することができます。1 つ以上の特定の検出結果タイプを生成するには、関連する API/CLI ステップを実行します。

------
#### [ Console ]

サンプル検出結果を生成するには、次の手順を使用します。このプロセスでは、GuardDuty の検出タイプごとに 1 つのサンプル検出結果を生成します。

****

1. [https://console.aws.amazon.com/guardduty/](https://console.aws.amazon.com/guardduty/) で GuardDuty コンソールを開きます。

1. ナビゲーションペインで **[Settings]** (設定) を選択します。

1. **[Settings]** (設定) ページの **[Sample findings]** (結果のサンプル) で、**[Generate sample findings]** (結果サンプルの生成) を選択します。

1. ナビゲーションペインで **[Findings]** (結果) を選択します。**[Current findings]** (最近の結果) ページに **[SAMPLE]** とプレフィックスされたサンプル検出結果が表示されます。

------
#### [ API/CLI ]

GuardDuty の任意の検出タイプに一致する単一のサンプル検出結果を生成するには、[https://docs.aws.amazon.com/guardduty/latest/APIReference/API_CreateSampleFindings.html](https://docs.aws.amazon.com/guardduty/latest/APIReference/API_CreateSampleFindings.html) API の場合、タイプの検索に使用できる値は、[GuardDuty 検出結果タイプ](guardduty_finding-types-active.md) テーブルにリストされています。

これは、CloudWatch Events ルールのテストや検出結果に基づくオートメーションに役立ちます。次の例は、 AWS CLIを使用して `Backdoor:EC2/DenialOfService.Tcp` タイプの単一サンプル検出結果を生成する方法を示しています。

アカウントと現在のリージョンの `detectorId` を検索するには、[https://console.aws.amazon.com/guardduty/](https://console.aws.amazon.com/guardduty/) コンソールの **[設定]** ページを参照するか、[https://docs.aws.amazon.com/guardduty/latest/APIReference/API_ListDetectors.html](https://docs.aws.amazon.com/guardduty/latest/APIReference/API_ListDetectors.html) API を実行します。

```
aws guardduty create-sample-findings --detector-id 12abc34d567e8fa901bc2d34e56789f0 --finding-types Backdoor:EC2/DenialOfService.Tcp
```

------

これらのメソッドによって生成されたサンプル検出結果のタイトルは、常にコンソール内で **[SAMPLE]** で始まります。サンプルの検出結果には、検出結果の JSON の詳細の **additionalInfo** セクションに値 `"sample": true` があります。

生成された検出結果に関連する検出結果の重大度や侵害された可能性のあるリソースなどの検出結果の詳細については、「[GuardDuty の検出結果の重大度](guardduty_findings-severity.md)」および「[検出結果の詳細](guardduty_findings-summary.md)」を参照してください。

環境 AWS アカウント 内で分離された専用 のシミュレートされたアクティビティに基づいて一般的な検出結果を生成するには、「」を参照してください[専用アカウントでの GuardDuty の検出結果のテスト](guardduty_findings-scripts.md)。

# 専用アカウントでの GuardDuty の検出結果のテスト
<a name="guardduty_findings-scripts"></a>

このドキュメントを使用して、 AWS アカウントにデプロイされるテストリソースに対して GuardDuty の検出結果を生成するテスタースクリプトを実行します。これらのステップは、特定の GuardDuty の検出結果タイプについてと、検出結果の詳細がアカウント内の実際のリソースをどのように検索するかを理解して学習したい場合に実行できます。このエクスペリエンスは、[サンプルの検出結果](sample_findings.md)の生成とは異なります。GuardDuty の検出結果をテストするエクスペリエンスの詳細については、「[考慮事項](#considerations-generate-gdu-findings-tester)」を参照してください。

**Topics**
+ [考慮事項](#considerations-generate-gdu-findings-tester)
+ [テスタースクリプトが生成できる GuardDuty の検出結果](#gdu-findings-tester-generates)
+ [ステップ 1 - 前提条件](#prerequisites-gdu-tester-script)
+ [ステップ 2 - AWS リソースをデプロイする](#deploy-gdu-tester-script)
+ [ステップ 3 - テスタースクリプトを実行する](#run-gdu-tester-script)
+ [ステップ 4 - AWS テストリソースをクリーンアップする](#clean-gdu-tester-script-resources)
+ [一般的な問題のトラブルシューティング](#troubleshooting-gdu-tester-script-issues)

## 考慮事項
<a name="considerations-generate-gdu-findings-tester"></a>

先に進む前に、次の点を考慮してください。
+ GuardDuty は、専用の非本番環境 AWS アカウントにテスターをデプロイすることをお勧めします。このアプローチにより、テスターによって生成された GuardDuty の検出結果を正しく識別できます。また、GuardDuty テスターは、他のアカウントで許可されている内容を超える IAM アクセス許可を必要とする可能性のあるさまざまなリソースをデプロイします。専用アカウントを使用すると、明確なアカウント境界でアクセス許可を適切にスコープできます。
+ テスタースクリプトは、さまざまな AWS リソースの組み合わせで 100 を超える GuardDuty の検出結果を生成します。現在、これにはすべての [GuardDuty 検出結果タイプ](guardduty_finding-types-active.md)は含まれません。このテスタースクリプトで生成できる検出結果タイプのリストについては、「[テスタースクリプトが生成できる GuardDuty の検出結果](#gdu-findings-tester-generates)」を参照してください。
**メモ**  
*攻撃シーケンスの検出結果タイプ*を視覚化するために、テスタースクリプトは [AttackSequence:EKS/CompromisedCluster](guardduty-attack-sequence-finding-types.md#attack-sequence-eks-compromised-cluster) と [AttackSequence:S3/CompromisedData](guardduty-attack-sequence-finding-types.md#attack-sequence-s3-compromised-data) のみを生成します。[AttackSequence:IAM/CompromisedCredentials](guardduty-attack-sequence-finding-types.md#attack-sequence-iam-compromised-credentials) を視覚化して理解するには、アカウントで [サンプルの検出結果](sample_findings.md) を生成できます。
+ GuardDuty テスターが想定どおりに機能するには、テスターリソースがデプロイされているアカウントで GuardDuty を有効にする必要があります。実行するテストに応じて、テスターは適切な GuardDuty 保護プランが有効になっているかどうかを評価します。有効になっていない保護プランでは、GuardDuty は、GuardDuty が検出結果を生成するテストを実行するのに十分な期間だけ必要な保護プランを有効にするアクセス許可をリクエストします。その後、テストが完了すると、GuardDuty は保護プランを無効にします。  
**初めての GuardDuty の有効化**  
GuardDuty が特定のリージョンで初めて専用アカウントで有効化されると、アカウントは自動的に 30 日間の無料トライアルに登録されます。  
GuardDuty には、オプションの保護プランが提供されています。GuardDuty を有効にすると、特定の保護プランも有効になり、GuardDuty の 30 日間の無料トライアルに含められます。詳細については、「[GuardDuty の 30 日間無料トライアルの使用](guardduty-pricing.md#using-guardduty-30-day-free-trial)」を参照してください。  
**テスタースクリプトを実行する前に GuardDuty がアカウントで既に有効になっている場合**  
GuardDuty が既に有効になっている場合、テスタースクリプトはパラメータに基づいて、特定の保護プランの設定ステータスや、検出結果の生成に必要なその他のアカウントレベルの設定をチェックします。  
このテスタースクリプトを実行すると、リージョンの専用アカウントで特定の保護プランが初めて有効になる場合があります。これにより、その保護プランの 30 日間の無料トライアルが開始します。各保護プランに関連する無料トライアルの詳細については、「[GuardDuty の 30 日間無料トライアルの使用](guardduty-pricing.md#using-guardduty-30-day-free-trial)」を参照してください。
+ GuardDuty テスターインフラストラクチャがデプロイされている限り、ペネトレーションテストインスタンスから [UnauthorizedAccess:EC2/TorClient](guardduty_finding-types-ec2.md#unauthorizedaccess-ec2-torclient) 検出結果を受け取ることがあります。

## テスタースクリプトが生成できる GuardDuty の検出結果
<a name="gdu-findings-tester-generates"></a>

現在、テスタースクリプトは、Amazon EC2、Amazon EKS、Amazon S3、IAM、EKS 監査ログに関連する次の検出結果タイプを生成します。
+ [AttackSequence:EKS/CompromisedCluster](guardduty-attack-sequence-finding-types.md#attack-sequence-eks-compromised-cluster)
+ [AttackSequence:S3/CompromisedData](guardduty-attack-sequence-finding-types.md#attack-sequence-s3-compromised-data)
+ [Backdoor:EC2/C&CActivity.B\$1DNS](guardduty_finding-types-ec2.md#backdoor-ec2-ccactivitybdns)
+ [Backdoor:EC2/DenialOfService.Dns](guardduty_finding-types-ec2.md#backdoor-ec2-denialofservicedns)
+ [Backdoor:EC2/DenialOfService.Udp](guardduty_finding-types-ec2.md#backdoor-ec2-denialofserviceudp)
+ [CryptoCurrency:EC2/BitcoinTool.B\$1DNS](guardduty_finding-types-ec2.md#cryptocurrency-ec2-bitcointoolbdns)
+ [Impact:EC2/AbusedDomainRequest.Reputation](guardduty_finding-types-ec2.md#impact-ec2-abuseddomainrequestreputation)
+ [Impact:EC2/BitcoinDomainRequest.Reputation](guardduty_finding-types-ec2.md#impact-ec2-bitcoindomainrequestreputation)
+ [Impact:EC2/MaliciousDomainRequest.Reputation](guardduty_finding-types-ec2.md#impact-ec2-maliciousdomainrequestreputation)
+ [Impact:EC2/SuspiciousDomainRequest.Reputation](guardduty_finding-types-ec2.md#impact-ec2-suspiciousdomainrequestreputation)
+ [Recon:EC2/Portscan](guardduty_finding-types-ec2.md#recon-ec2-portscan)
+ [Trojan:EC2/BlackholeTraffic\$1DNS](guardduty_finding-types-ec2.md#trojan-ec2-blackholetrafficdns)
+ [Trojan:EC2/DGADomainRequest.C\$1DNS](guardduty_finding-types-ec2.md#trojan-ec2-dgadomainrequestcdns)
+ [Trojan:EC2/DNSDataExfiltration](guardduty_finding-types-ec2.md#trojan-ec2-dnsdataexfiltration)
+ [Trojan:EC2/DriveBySourceTraffic\$1DNS](guardduty_finding-types-ec2.md#trojan-ec2-drivebysourcetrafficdns)
+ [Trojan:EC2/DropPoint\$1DNS](guardduty_finding-types-ec2.md#trojan-ec2-droppointdns)
+ [Trojan:EC2/PhishingDomainRequest\$1DNS](guardduty_finding-types-ec2.md#trojan-ec2-phishingdomainrequestdns)
+ [UnauthorizedAccess:EC2/MaliciousIPCaller.Custom](guardduty_finding-types-ec2.md#unauthorizedaccess-ec2-maliciousipcallercustom)
+ [UnauthorizedAccess:EC2/RDPBruteForce](guardduty_finding-types-ec2.md#unauthorizedaccess-ec2-rdpbruteforce) 
+ [UnauthorizedAccess:EC2/SSHBruteForce](guardduty_finding-types-ec2.md#unauthorizedaccess-ec2-sshbruteforce) 
+ [PenTest:IAMUser/KaliLinux](guardduty_finding-types-iam.md#pentest-iam-kalilinux) 
+ [Recon:IAMUser/MaliciousIPCaller.Custom](guardduty_finding-types-iam.md#recon-iam-maliciousipcallercustom) 
+ [Recon:IAMUser/TorIPCaller](guardduty_finding-types-iam.md#recon-iam-toripcaller) 
+ [Stealth:IAMUser/CloudTrailLoggingDisabled](guardduty_finding-types-iam.md#stealth-iam-cloudtrailloggingdisabled) 
+ [Stealth:IAMUser/PasswordPolicyChange](guardduty_finding-types-iam.md#stealth-iam-passwordpolicychange) 
+ [UnauthorizedAccess:IAMUser/InstanceCredentialExfiltration.OutsideAWS](guardduty_finding-types-iam.md#unauthorizedaccess-iam-instancecredentialexfiltrationoutsideaws) 
+ [UnauthorizedAccess:IAMUser/MaliciousIPCaller.Custom](guardduty_finding-types-iam.md#unauthorizedaccess-iam-maliciousipcallercustom) 
+ [UnauthorizedAccess:IAMUser/TorIPCaller](guardduty_finding-types-iam.md#unauthorizedaccess-iam-toripcaller) 
+ [Discovery:Kubernetes/MaliciousIPCaller.Custom](guardduty-finding-types-eks-audit-logs.md#discovery-kubernetes-maliciousipcallercustom) 
+ [Discovery:Kubernetes/SuccessfulAnonymousAccess](guardduty-finding-types-eks-audit-logs.md#discovery-kubernetes-successfulanonymousaccess) 
+ [Discovery:Kubernetes/TorIPCaller](guardduty-finding-types-eks-audit-logs.md#discovery-kubernetes-toripcaller)
+ [Execution:Kubernetes/ExecInKubeSystemPod](guardduty-finding-types-eks-audit-logs.md#execution-kubernetes-execinkubesystempod)
+ [Impact:Kubernetes/MaliciousIPCaller.Custom](guardduty-finding-types-eks-audit-logs.md#impact-kubernetes-maliciousipcallercustom)
+ [Persistence:Kubernetes/ContainerWithSensitiveMount](guardduty-finding-types-eks-audit-logs.md#persistence-kubernetes-containerwithsensitivemount)
+ [Policy:Kubernetes/AdminAccessToDefaultServiceAccount](guardduty-finding-types-eks-audit-logs.md#policy-kubernetes-adminaccesstodefaultserviceaccount) 
+ [Policy:Kubernetes/AnonymousAccessGranted](guardduty-finding-types-eks-audit-logs.md#policy-kubernetes-anonymousaccessgranted) 
+ [PrivilegeEscalation:Kubernetes/PrivilegedContainer](guardduty-finding-types-eks-audit-logs.md#privilegeescalation-kubernetes-privilegedcontainer) 
+ [UnauthorizedAccess:Lambda/MaliciousIPCaller.Custom](lambda-protection-finding-types.md#unauthorized-access-lambda-maliciousIPcaller-custom) 
+ [Discovery:S3/MaliciousIPCaller.Custom](guardduty_finding-types-s3.md#discovery-s3-maliciousipcallercustom)
+ [Discovery:S3/TorIPCaller](guardduty_finding-types-s3.md#discovery-s3-toripcaller)
+ [PenTest:S3/KaliLinux](guardduty_finding-types-s3.md#pentest-s3-kalilinux)
+ [Policy:S3/AccountBlockPublicAccessDisabled](guardduty_finding-types-s3.md#policy-s3-accountblockpublicaccessdisabled)
+ [Policy:S3/BucketAnonymousAccessGranted](guardduty_finding-types-s3.md#policy-s3-bucketanonymousaccessgranted)
+ [Policy:S3/BucketBlockPublicAccessDisabled](guardduty_finding-types-s3.md#policy-s3-bucketblockpublicaccessdisabled)
+ [Policy:S3/BucketPublicAccessGranted](guardduty_finding-types-s3.md#policy-s3-bucketpublicaccessgranted)
+ [Stealth:S3/ServerAccessLoggingDisabled](guardduty_finding-types-s3.md#stealth-s3-serveraccessloggingdisabled)
+ [UnauthorizedAccess:S3/MaliciousIPCaller.Custom](guardduty_finding-types-s3.md#unauthorizedaccess-s3-maliciousipcallercustom)
+ [UnauthorizedAccess:S3/TorIPCaller](guardduty_finding-types-s3.md#unauthorizedaccess-s3-toripcaller)
+ [Backdoor:Runtime/C&CActivity.B\$1DNS](findings-runtime-monitoring.md#backdoor-runtime-ccactivitybdns)
+ [CryptoCurrency:Runtime/BitcoinTool.B\$1DNS](findings-runtime-monitoring.md#cryptocurrency-runtime-bitcointoolbdns)
+ [DefenseEvasion:Runtime/ProcessInjection.Ptrace](findings-runtime-monitoring.md#defenseeva-runtime-processinjectionptrace)
+ [DefenseEvasion:Runtime/ProcessInjection.VirtualMemoryWrite](findings-runtime-monitoring.md#defenseeva-runtime-processinjectionvirtualmemw)
+ [Execution:Runtime/ReverseShell](findings-runtime-monitoring.md#execution-runtime-reverseshell)
+ [Impact:Runtime/AbusedDomainRequest.Reputation](findings-runtime-monitoring.md#impact-runtime-abuseddomainrequestreputation)
+ [Impact:Runtime/BitcoinDomainRequest.Reputation](findings-runtime-monitoring.md#impact-runtime-bitcoindomainrequestreputation)
+ [Impact:Runtime/MaliciousDomainRequest.Reputation](findings-runtime-monitoring.md#impact-runtime-maliciousdomainrequestreputation)
+ [Impact:Runtime/SuspiciousDomainRequest.Reputation](findings-runtime-monitoring.md#impact-runtime-suspiciousdomainrequestreputation)
+ [PrivilegeEscalation:Runtime/ContainerMountsHostDirectory](findings-runtime-monitoring.md#privilegeescalation-runtime-containermountshostdirectory)
+ [PrivilegeEscalation:Runtime/DockerSocketAccessed](findings-runtime-monitoring.md#privilegeesc-runtime-dockersocketaccessed)
+ [Trojan:Runtime/BlackholeTraffic\$1DNS](findings-runtime-monitoring.md#trojan-runtime-blackholetrafficdns)
+ [Trojan:Runtime/DGADomainRequest.C\$1DNS](findings-runtime-monitoring.md#trojan-runtime-dgadomainrequestcdns)
+ [Trojan:Runtime/DriveBySourceTraffic\$1DNS](findings-runtime-monitoring.md#trojan-runtime-drivebysourcetrafficdns)
+ [Trojan:Runtime/DropPoint\$1DNS](findings-runtime-monitoring.md#trojan-runtime-droppointdns)
+ [Trojan:Runtime/PhishingDomainRequest\$1DNS](findings-runtime-monitoring.md#trojan-runtime-phishingdomainrequestdns)

## ステップ 1 - 前提条件
<a name="prerequisites-gdu-tester-script"></a>

テスト環境を準備するには、次の項目が必要です。
+ **Git** – 使用するオペレーティングシステムに基づく git コマンドラインツールをインストールします。

  これは、[`amazon-guardduty-tester` リポジトリ](https://github.com/awslabs/amazon-guardduty-tester)のクローンを作成するために必要です。
+ **AWS Command Line Interface** – コマンドラインシェルでコマンド AWS のサービス を使用して とやり取りできるオープンソースツール。詳細については、「*AWS Command Line Interface ユーザーガイド*」の「[Get started with AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html)」を参照してください。
+ **AWS Systems Manager** – を使用してマネージドノードで Session Manager セッションを開始する AWS CLI には、ローカルマシンに Session Manager プラグインをインストールする必要があります。詳細については、「*AWS Systems Manager ユーザーガイド*」の「[AWS CLI用の Session Manager プラグインをインストールする](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-install-plugin.html)」を参照してください。
+ **Node Package Manager (NPM)** — NPM をインストールして、すべての依存関係をインストールします。
+ **Docker** – Docker がインストールされている必要があります。インストール手順については、[Docker のウェブサイト](https://docs.docker.com/get-docker/)を参照してください。

  Docker がインストールされていることを確認するには、次のコマンドを実行し、次のような出力があることを確認します。

  ```
  $ docker --version
  Docker version 19.03.1
  ```
+ *AWS Marketplace* で [Kali Linux](https://aws.amazon.com/marketplace/pp/prodview-fznsw3f7mq7to) イメージをサブスクライブします。

## ステップ 2 - AWS リソースをデプロイする
<a name="deploy-gdu-tester-script"></a>

このセクションでは、主要な概念のリストと、特定の AWS リソースを専用アカウントにデプロイする手順について説明します。

### 概念
<a name="concepts-deploy-resource-test-guardduty-findings"></a>

次のリストに、リソースのデプロイに役立つコマンドに関連する主要な概念を示します。
+ **AWS Cloud Development Kit (AWS CDK)** – CDK は、コードでクラウドインフラストラクチャを定義し、それをプロビジョニングするためのオープンソースのソフトウェア開発フレームワークです CloudFormation。CDK は、いくつかのプログラミング言語をサポートして、コンストラクトと呼ばれる再利用可能なクラウドコンポーネントを定義します。これらをまとめてスタックとアプリケーションに構成できます。次に、CDK アプリケーションを にデプロイ CloudFormation して、 リソースをプロビジョニングまたは更新できます。詳細については、「 *AWS Cloud Development Kit (AWS CDK) デベロッパーガイド*[」の「 とは AWS CDK](https://docs.aws.amazon.com/cdk/v2/guide/home.html)」を参照してください。
+ **ブートストラップ** — AWS 環境で を使用するための準備プロセスです AWS CDK。CDK スタックを AWS 環境にデプロイする前に、まず環境をブートストラップする必要があります。によって使用される環境内の特定の AWS リソースをプロビジョニングするこのプロセス AWS CDK は、次のセクション - で実行するステップの一部です[AWS リソースをデプロイするステップ](#steps-deploy-resource-test-guardduty-findings)。

  ブートストラップの仕組みの詳細については、「*AWS Cloud Development Kit (AWS CDK) 開発者ガイド*」の「[Bootstrapping](https://docs.aws.amazon.com/cdk/v2/guide/bootstrapping.html)」を参照してください。

### AWS リソースをデプロイするステップ
<a name="steps-deploy-resource-test-guardduty-findings"></a>

リソースのデプロイを開始するには、次の手順を実行します。

1. 専用のアカウントリージョン変数が `bin/cdk-gd-tester.ts` ファイルで手動で設定されていない限り、 AWS CLI デフォルトのアカウントとリージョンを設定します。詳細については、「*AWS Cloud Development Kit (AWS CDK) 開発者ガイド*」の「[Environments](https://docs.aws.amazon.com/cdk/v2/guide/environments.html)」を参照してください。

1. 以下のコマンドを実行して、リソースをデプロイします。

   ```
   git clone https://github.com/awslabs/amazon-guardduty-tester && cd amazon-guardduty-tester
   npm install
   cdk bootstrap
   cdk deploy
   ```

   最後のコマンド (`cdk deploy`) は、ユーザーに代わって CloudFormation スタックを作成します。このスタックの名前は **GuardDutyTesterStack** です。

   このスクリプトの一部として、GuardDuty はアカウントに GuardDuty の検出結果を生成する新しいリソースを作成します。次のタグキーと値のペアも、Amazon EC2 インスタンスに追加されます。

   `CreatedBy`:`GuardDuty Test Script`

   また、Amazon EC2 インスタンスには、EKS ノードと ECS クラスターをホストする EC2 インスタンスも含まれます。
**インスタンスのタイプ**  
GuardDuty は、テストを正常に実行するために必要な最小限のパフォーマンスを提供する費用対効果の高いインスタンスタイプを使用するように設計されています。vCPU 要件のため、Amazon EKS ノードグループには `t3.medium` が必要であり、DenialOfService 検出テストに必要なネットワーク容量が増加するため、ドライバーノードには `m6i.large` が必要です。他のすべてのテストでは、GuardDuty は `t3.micro` インスタンスタイプを使用します。インスタンスタイプの詳細については、「*Amazon EC2 Instances Types Guide*」の「[Available sizes](https://docs.aws.amazon.com/ec2/latest/instancetypes/gp.html#gp_sizes)」を参照してください。

## ステップ 3 - テスタースクリプトを実行する
<a name="run-gdu-tester-script"></a>

これは 2 ステップのプロセスであり、まずテストドライバーでセッションを開始し、次にスクリプトを実行して特定のリソースの組み合わせで GuardDuty の検出結果を生成する必要があります。

### パート A - テストドライバーでセッションを開始する
<a name="tester-script-start-session-guardduty"></a>

1. リソースをデプロイしたら、リージョンコードを現在のターミナルセッションの変数に保存します。次のコマンドを使用し、*us-east-1* はリソースをデプロイしたリージョンコードに置き換えます。

   ```
   $ REGION=us-east-1
   ```

1. テスタースクリプトは AWS Systems Manager (SSM) でのみ使用できます。テスターホストインスタンスでインタラクティブシェルを起動するには、ホストの **InstanceId** をクエリします。

1. 次のコマンドを使用してテスタースクリプトのセッションを開始します。

   ```
   aws ssm start-session 
     --region $REGION 
     --document-name AWS-StartInteractiveCommand 
     --parameters command="cd /home/ssm-user/py_tester && bash -l" 
     --target $(aws ec2 describe-instances 
       --region $REGION 
       --filters "Name=tag:Name,Values=Driver-GuardDutyTester" 
       --query "Reservations[].Instances[?State.Name=='running'].InstanceId" 
       --output text)
   ```

### パート B - 検出結果を生成する
<a name="tester-script-generate-findings-guardduty"></a>

テスタースクリプトは、入力に基づいて検出結果を生成する Bash スクリプトを動的に構築する Python ベースのプログラムです。1 つ以上の AWS リソースタイプ、GuardDuty 保護プラン、 [脅威の目的](guardduty_finding-format.md#guardduty_threat_purposes) (戦術）、[基本データソース](guardduty_data-sources.md)、または に基づいて結果を柔軟に生成できます[テスタースクリプトが生成できる GuardDuty の検出結果](#gdu-findings-tester-generates)。

次のコマンド例をリファレンスとして使用し、1 つ以上のコマンドを実行して、調査する検出結果を生成します。

```
python3 guardduty_tester.py 
python3 guardduty_tester.py --all 
python3 guardduty_tester.py --s3 
python3 guardduty_tester.py --tactics discovery 
python3 guardduty_tester.py --ec2 --eks --tactics backdoor policy execution 
python3 guardduty_tester.py --eks --runtime only 
python3 guardduty_tester.py --ec2 --runtime only --tactics impact 
python3 guardduty_tester.py --log-source dns vpc-flowlogs 
python3 guardduty_tester.py --finding 'CryptoCurrency:EC2/BitcoinTool.B!DNS'
```

有効なパラメータの詳細については、次のヘルプコマンドを実行して確認できます。

```
python3 guardduty_tester.py --help
```

### パート C - 生成された検出結果を確認する
<a name="tester-script-review-findings-guardduty"></a>

アカウントで生成された検出結果を表示する任意の方法を選択します。

------
#### [ GuardDuty console ]

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/guardduty/](https://console.aws.amazon.com/guardduty/) で GuardDuty コンソールを開きます。

1. ナビゲーションペインで **調査検出結果** を選択します。

1. 検出結果テーブルから、詳細を表示したい検出結果を選択します。これにより、検出結果の詳細パネルが開きます。詳細については、「[Amazon GuardDuty の検出結果の理解と生成](guardduty_findings.md)」を参照してください。

1. これらの検出結果をフィルタリングする場合は、リソースのタグキーと値を使用します。例えば、Amazon EC2 インスタンスに対して生成された検出結果をフィルタリングするには、**[インスタンスタグキー]** と **[インスタンスタグキー]** にタグキーと値ペア `CreatedBy`:`GuardDuty Test Script` を使用します。

------
#### [ API ]
+ [ListFindings](https://docs.aws.amazon.com/guardduty/latest/APIReference/API_ListFindings.html) を実行して、特定のディテクター ID の検出結果を表示します。パラメータを指定して、検出結果をフィルタリングできます。

  アカウントと現在のリージョンの `detectorId` を検索するには、[https://console.aws.amazon.com/guardduty/](https://console.aws.amazon.com/guardduty/) コンソールの **[設定]** ページを参照するか、[https://docs.aws.amazon.com/guardduty/latest/APIReference/API_ListDetectors.html](https://docs.aws.amazon.com/guardduty/latest/APIReference/API_ListDetectors.html) API を実行します。

------
#### [ AWS CLI ]
+ 次の AWS CLI コマンドを実行して生成された結果を表示し、*us-east-1* および *12abc34d567e8fa901bc2d34EXAMPLE* を適切な値に置き換えます。

  ```
  aws guardduty list-findings --region us-east-1 --detector-id 12abc34d567e8fa901bc2d34EXAMPLE
  ```

  アカウントと現在のリージョンの `detectorId` を検索するには、[https://console.aws.amazon.com/guardduty/](https://console.aws.amazon.com/guardduty/) コンソールの **[設定]** ページを参照するか、[https://docs.aws.amazon.com/guardduty/latest/APIReference/API_ListDetectors.html](https://docs.aws.amazon.com/guardduty/latest/APIReference/API_ListDetectors.html) API を実行します。

  検出結果のフィルタリングに使用できるパラメータの詳細については、「*AWS CLI Command Reference*」の「[list-findings](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/guardduty/list-findings.html)」を参照してください。

------

## ステップ 4 - AWS テストリソースをクリーンアップする
<a name="clean-gdu-tester-script-resources"></a>

「[ステップ 3 - テスタースクリプトを実行する](#run-gdu-tester-script)」で行われたアカウントレベルの設定やその他の設定ステータスの更新は、テスタースクリプトの終了時に元の状態に戻ります。

テスタースクリプトを実行したら、 AWS テストリソースをクリーンアップすることを選択できます。これを選択するには、次のいずれかの方法を使用します。
+ 次のコマンドを実行します。

  ```
  cdk destroy
  ```
+ **GuardDutyTesterStack** という名前の CloudFormation スタックを削除します。ステップの詳細については、「 [CloudFormation コンソールでのスタックの削除](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-delete-stack.html)」を参照してください。

## 一般的な問題のトラブルシューティング
<a name="troubleshooting-gdu-tester-script-issues"></a>

GuardDuty はよくある問題を特定し、トラブルシューティングのステップを推奨しています。
+ `Cloud assembly schema version mismatch` – CLI AWS CDK を、必要なクラウドアセンブリバージョンと互換性のあるバージョン、または利用可能な最新バージョンに更新します。詳細については、「[AWS CDK CLI 互換性](https://docs.aws.amazon.com/cdk/v2/guide/versioning.html#cdk_toolkit_versioning)」を参照してください。
+ `Docker permission denied` – 専用アカウントでコマンドを実行できるように、専用アカウントユーザーを **docker** または **docker-users** に追加します。ステップの詳細については、「[デーモンソケットオプション](https://docs.docker.com/reference/cli/dockerd/#daemon-socket-option)」を参照してください。
+ `Your requested instance type is not supported in your requested Availability Zone` – 一部のアベイラビリティーゾーンは特定のインスタンスタイプをサポートしていません。任意のインスタンスタイプをサポートするアベイラビリティーゾーンを特定し、 AWS リソースのデプロイを再試行するには、次の手順を実行します。

  1. 任意の方法を選択して、インスタンスタイプをサポートするアベイラビリティーゾーンを確認します。

------
#### [ Console ]

**希望のインスタンスタイプをサポートするアベイラビリティーゾーンを特定するには**

     1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) で Amazon EC2 コンソールを開きます。

     1. ページの右上隅にある AWS リージョンセレクターを使用して、インスタンスを起動するリージョンを選択します。

     1. ナビゲーションペインの **[インスタンス]** で、**[インスタンスタイプ]** を選択します。

     1. **[インスタンスタイプ]** テーブルから、希望のインスタンスタイプを選択します。

     1. **[ネットワーク]** で、**[アベイラビリティーゾーン]** にリストされているリージョンを表示します。

        この情報に基づいて、リソースをデプロイできる新しいリージョンを選択する必要がある場合があります。

------
#### [ AWS CLI ]

     次のコマンドを実行して、アベイラビリティーゾーンのリストを表示します。必ず希望のインスタンスタイプとリージョン (*us-east-1*) を指定してください。

     ```
     aws ec2 describe-instance-type-offerings --location-type availability-zone  --filters Name=instance-type,Values=Preferred instance type --region us-east-1 --output table
     ```

     このコマンドの詳細については、「*AWS CLI Command Reference*」の「[describe-instance-type-offerings](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ec2/describe-instance-type-offerings.html)」を参照してください。

     このコマンドを実行するときにエラーが表示された場合は、最新バージョンの AWS CLIを使用していることを確認してください。詳細については、「*AWS Command Line Interface  ユーザーガイド*」の「[トラブルシューティング](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-troubleshooting.html)」を参照してください。

------

  1.  AWS リソースを再度デプロイし、任意のインスタンスタイプをサポートするアベイラビリティーゾーンを指定します。

**AWS リソースのデプロイを再試行するには**

     1. `bin/cdk-gd-tester.ts` ファイルでデフォルトリージョンを設定します。

     1. アベイラビリティーゾーンを指定するには、`amazon-guardduty-tester/lib/common/network/vpc.ts` ファイルを開きます。

     1. このファイルでは、`maxAzs: 2,` を `availabilityZones: ['us-east-1a', 'us-east-1c'],` に置き換え、ここでインスタンスタイプのアベイラビリティーゾーンを指定する必要があります。

     1. 「[AWS リソースをデプロイするステップ](#steps-deploy-resource-test-guardduty-findings)」の残りの手順を続行します。

# GuardDuty コンソールで生成された検出結果を表示する
<a name="guardduty_working-with-findings"></a>

GuardDuty がセキュリティ問題のパターンに一致する活動を検出すると、GuardDuty は検出結果を生成します。この検出結果タイプは、このアクティビティ中に侵害された可能性があるリソースタイプに関連付けられています。GuardDuty が生成する検出結果タイプごとに関連付けられた詳細を表示できます。

GuardDuty 管理者アカウントを使用している場合は、生成された検出結果をメンバーアカウントに代わって表示できます。ただし、メンバーアカウントは、自分のアカウントで生成された検出結果を表示できます。メンバーアカウントは、他のメンバーアカウントで生成された検出結果を表示できません。

**GuardDuty コンソールで検出結果を表示する手順**

1. [https://console.aws.amazon.com/guardduty/](https://console.aws.amazon.com/guardduty/) で GuardDuty コンソールを開きます。

1. 左のナビゲーションペインで **[検出結果]** を選択します。

   GuardDuty は検出結果を表形式で表示します。デフォルトでは、このテーブルは **[最終表示]** 列の値に基づいて降順でソートされ、最新の検出結果が上部に表示されます。

   剣のアイコン (![\[Sword icon that represents attack sequence finding in GuardDuty console.\]](http://docs.aws.amazon.com/ja_jp/guardduty/latest/ug/images/attack-sequences-icon.PNG)) が付いた発見は、攻撃シーケンスの発見を表します。

1. 検出結果に関連する詳細を表示するには、その **[タイトル]** を選択します。これにより、検出結果の詳細サイドパネルが開きます。攻撃シーケンスの検出結果の場合、このサイドパネルには攻撃シーケンスの*概要バージョン*が含まれ、このビューを展開するには、**[詳細を表示]** を選択します。

   このサイドパネルにリストされているフィールドの詳細については、「[検出結果の詳細](guardduty_findings-summary.md)」を参照してください。

1. 

**(オプション) 検出結果 JSON をダウンロードする**

   1. [検出結果] を選択し、次に **[アクション]** メニューを選択します。

   1. **[アクション]** メニューで、**[JSON の表示とエクスポート]** を選択します。

   1. **JSON** の結果ウィンドウで、**[ダウンロード]** を選択します。
**注記**  
場合によっては、GuardDuty は、ある検出結果が生成された後に、その結果が誤検出であることを認識することがあります。GuardDuty は検出結果の JSON 詳細に **[Confidence]** (信頼度) フィールドを設けて、その値をゼロに設定します。このようにして、GuardDuty はこうした検出結果を無視しても構わないことを知らせます。  
**[Confidence]** フィールドのない結果は誤検出とは見なされません。

## 検出結果ページの操作
<a name="guardduty-navigating-findings-page"></a>

このセクションでは、**[検出結果]** ページのさまざまな要素に関する重要な情報を提供します。これにより、生成された分析結果を脅威分析と対応のために分析することが可能になります。

以下のリストでは、生成された**検出結果**をよりよく理解するのに役立つ検出結果ページの要素について説明します。
+ **脅威タイプ**:

  脅威の種類には、個々の GuardDuty 検出結果と攻撃シーケンス検出結果が含まれます。デフォルトでは、このページには**すべての検出結果**が表示されます。

  検出結果テーブルビューをフィルタリングするには、**[脅威タイプ[** メニューで、**[攻撃シーケンスの検出結果のみ]** または**[個々の検出結果のみ]** のいずれかを選択します。
+ **リソース列とカウント列**: 

  検出結果テーブルの**リソース**列には、侵害された可能性のある AWS リソースの名前が表示されます。攻撃シーケンスの検出結果の場合、この列には侵害された可能性のある AWS リソースの数が表示されます。リソース名を表示するには、**[リソース]** 列の下にある *[番号]* を選択します。

  **[カウント]** 列は、GuardDuty が特定の検出結果を観測した回数を示します。GuardDuty が、事前に特定されたセキュリティ問題に一致するアクティビティを検出すると、その特定の検出結果のカウントを増加させます。攻撃シーケンスの検出結果の場合、この列の値は、検出結果の生成に関連するシグナルと検出結果の合計数を示します。
+ **テーブル列による検出結果のソート**:

  列ヘッダーの横に*矢印*がある場合は、列に基づいて検出結果テーブルをソートできます。列ヘッダーを選択すると、その列の値の昇順または降順で結果を並べ替えられます。
+ **検出結果のフィルタリング**:

  `Account ID` や `Resource type` などの特定のプロパティ属性に基づいて、検出結果テーブルをさらにフィルタリングできます。使用可能なフィルターのタイプの詳細については、[GuardDuty の検出結果のフィルタリング](guardduty_filter-findings.md) を参照してください。
+ **ステータスと保存されたルール**:

  **[ステータス]** メニューには、**[現在]** と **[アーカイブ]** の 2 つの値が含まれます。デフォルトビューは、テーブル内の**[現在]** の検出結果です。

  特定の条件に一致する検出結果を GuardDuty が生成しないようにしたい場合、その検出結果を抑制できます。GuardDuty はその検出結果をアーカイブします。GuardDuty が再度この検出結果を検知した場合、この観測結果について通知されません。アーカイブされた検出結果を具体的に表示するには、**[ステータス]** メニューで **[アーカイブ済み]** を選択します。

  **保存されたルール**は、指定した条件に一致する検出結果を自動的にフィルタリングしてアクションを実行するのに役立つ機能です。アクションには、検出結果のアーカイブや今後の通知からの抑制が含まれる場合があります。

  詳細については、「[抑制ルール](findings_suppression-rule.md)」を参照してください。

# GuardDuty の検出結果の重大度
<a name="guardduty_findings-severity"></a>

GuardDuty の各検出結果には、当社のセキュリティエンジニアが定めた環境の潜在的なリスクを示す重大度と値が割り当てられます。重大度の値の範囲は 1.0～10.0 です。値が大きいほど、セキュリティリスクが高いことを示します。検出結果が示す潜在的なセキュリティの問題への対応を判断するために役立つように、GuardDuty ではこの範囲を *[重大]*、*[高]*、*[中]*、*[低]* の重大度に分けています。

特定のタイプの検出結果は、検出結果に固有のコンテキストによって重大度が異なることがあります。すべての GuardDuty 検出結果タイプのデフォルトの重大度レベルの統合リストを表示するには、「[GuardDuty のアクティブな検出結果タイプ](guardduty_finding-types-active.md#findings-table)」を参照してください。

以下のセクションでは、GuardDuty の検出結果に対して定義された重大度レベルについて説明します。

**Topics**
+ [重大度重大](#guardduty-finding-severity-level-critical)
+ [重大度高](#guardduty-finding-severity-level-high)
+ [重大度中](#guardduty-finding-severity-level-medium)
+ [重大度低](#guardduty-finding-severity-level-low)

## 重大度重大
<a name="guardduty-finding-severity-level-critical"></a>

**値の範囲**: 9.0 - 10.0

**説明**: 重大度重大レベルは、攻撃シーケンスが進行中であるか、最近発生した可能性があることを示します。IAM ユーザーのサインイン認証情報や Amazon S3 バケットなどの 1 つ以上の AWS リソースが侵害されている可能性があるか、既に侵害されている可能性があります。

**推奨事項**: GuardDuty では、すべての重要な重大度の検出結果の優先順位付けと修復を推奨しています。これらの問題はランサムウェア攻撃の一部であり、いつでも深刻化する可能性があるためです。関連するリソースの詳細を表示し、セキュリティ問題の対処を開始します。詳細については、「[検出結果の修復](guardduty_remediate.md)」を参照してください。

## 重大度高
<a name="guardduty-finding-severity-level-high"></a>

**値の範囲**: 7.0 - 8.9

**説明**: 重大度高は、問題になっているリソース (Amazon EC2 インスタンスや IAM ユーザーサインイン認証情報) が侵害され、不正な目的で活発に使用されていることを示します。

**推奨**: GuardDuty では、重大度高の検出結果のセキュリティの問題は、優先事項として処理し、リソースのそれ以上の不正使用を防ぐために直ちに修復を行うことをお勧めします。例えば、Amazon EC2 インスタンスをクリーンアップまたは終了するか、IAM 認証情報を更新します。「[検出結果の修復](guardduty_remediate.md)」の手順に従って、検出結果を修復します。

## 重大度中
<a name="guardduty-finding-severity-level-medium"></a>

**値の範囲**: 4.0 - 6.9

**説明**: 重大度中は、通常観察される動作から逸脱する不審なアクティビティを示し、ユーズケースによってはリソースが侵害されていることを示します。

**推奨事項**: GuardDuty では、影響を受ける可能性のあるリソースをできるだけ早く調査することをお勧めします。修復手順は、リソースと検出結果ファミリーによって異なります。確立アプローチは、アクティビティが認可され、ユースケースと一致していることを確認することです。原因を特定できない場合やアクティビティが許可されたことを確認できない場合は、リソースが侵害されたとみなす必要があります。「[検出結果の修復](guardduty_remediate.md)」の手順に従って、検出結果を修復します。

次に、重大度中の検出結果を確認する場合に考慮する事項を示します。
+ 未承認のユーザーがインストールした新しいソフトウェアでリソースの動作が変更されていないか確認してください。例えば、通常より高いトラフィックが許可されている場合や、新しいポートの通信が有効化されている場合などがあります。
+ 許可されているユーザーがコントロールプレーンの設定を変更しているかどうかを確認します (セキュリティグループの設定の変更など)。
+ 該当するリソースでアンチウィルススキャンを実行し、未承認のソフトウェアを検出します。
+ 該当する IAM ロール、ユーザー、グループ、または認証情報セットにアタッチされている許可を検証します。次のアクセス許可を変更または更新する必要がある場合があります。

## 重大度低
<a name="guardduty-finding-severity-level-low"></a>

**値の範囲**: 1.0 - 3.9

**説明**: 重大度低は、環境が侵害されなかった不審なアクティビティが試行されたことを示します (ポートスキャンや侵入の失敗など)。

**推奨事項**: すぐに推奨されるアクションはありませんが、この情報は、誰かが環境の弱点を探していることを示している可能性があるので、念のためメモしておいてください。

# 検出結果の詳細
<a name="guardduty_findings-summary"></a>

Amazon GuardDuty コンソールでは、検出結果の概要セクションで検出結果の詳細を見ることができます。検出結果の詳細は検出結果のタイプによって異なります。

検出結果にどのような情報が表示されるかを決める基本的な情報が 2 つあります。1 つ目はリソースタイプです。これは、`Instance`、`AccessKey`、`S3Bucket`、`S3Object`、`Kubernetes cluster`、`ECS cluster`、`Container`、`RDSDBInstance`、`RDSLimitlessDB`、または `Lambda` です。情報の検出結果を決定する 2 つ目の詳細は **[リソースロール]** です。リソースロールは、`Target` である可能性があります。つまり、リソースが疑わしいアクティビティのターゲットであったことを意味します。インスタンスタイプの検出結果については、リソースロールが `Actor` である場合があります。つまり、リソースが不審なアクティビティを実行するアクターだったことを意味します。このトピックでは、検出結果の一般的に入手可能な詳細をいくつか説明します。「[GuardDuty Runtime Monitoring の検出結果タイプ](findings-runtime-monitoring.md)」および「[Malware Protection for S3 の検出結果タイプ](gdu-malware-protection-s3-finding-types.md)」の場合、リソースロールは入力されません。

**Topics**
+ [検出結果の概要](#findings-summary-section)
+ [[リソース]](#findings-resource-affected)
+ [攻撃シーケンスの検出結果の詳細](#guardduty-extended-threat-detection-attack-sequence-finding-details)
+ [RDS データベース (DB) ユーザーの詳細](#rds-pro-db-user-details)
+ [Runtime Monitoring の検出結果の詳細](#runtime-monitoring-runtime-details)
+ [EBS ボリュームのスキャンの詳細](#mp-ebs-volumes-scan-details)
+ [Malware Protection for EC2 の検出結果の詳細](#malware-protection-scan-details)
+ [Malware Protection for S3 の検出結果の詳細](#gdu-malware-protection-for-s3-finding-details)
+ [Action](#finding-action-section)
+ [アクターまたはターゲット](#finding-actor-target)
+ [位置情報の詳細](#guardduty-finding-details-geolocation)
+ [追加情報](#finding-additional-info)
+ [証拠](#finding-evidence)
+ [異常な動作](#finding-anomalous)

## 検出結果の概要
<a name="findings-summary-section"></a>

検出結果の**概要**のセクションには、次の情報を含む、検索条件の最も基本的な識別機能が含まれています。
+ **アカウント ID** - GuardDuty がこの検出結果を生成する原因となったアクティビティを実行した AWS アカウントのID
+ **[カウント]** - GuardDuty が、このパターンとこの検出結果 ID の一致するアクティビティを集約した回数。
+ **作成時刻** - この検出結果が初めて生成された日時。この値が **[Updated at]** (更新時刻) と異なる場合は、そのアクティビティが複数回発生しており、現在も進行中の問題でありことを示しています。
**注記**  
GuardDuty コンソールの検出結果のタイムスタンプはローカルタイムゾーンで表示されます。一方、JSON エクスポートおよび CLI 出力では UTC 中にタイムスタンプが表示されます。
+ **[Finding ID]** (結果 ID) - この検出結果タイプおよびパラメータセットに対応する一意の識別子です。このパターンに一致するアクティビティが新しく出現した場合は、同じ ID に集約されます。
+ **[結果タイプ]** - 検出結果をトリガーしたアクティビティのタイプを表す、書式設定された文字列。詳細については、「[GuardDuty の検出結果の形式](guardduty_finding-format.md)」を参照してください。
+ **リージョン** – 結果が生成された AWS リージョン。サポートされるリージョンについては、「[リージョンとエンドポイント](guardduty_regions.md)」を参照してください。
+ **リソース ID** - GuardDuty がこの検出結果を生成する原因となったアクティビティを実行した AWS リソースの ID。
+ **スキャン ID** — GuardDuty Malware Protection for EC2 が有効な場合に検出結果に適用されます。これは、侵害された可能性がある EC2 インスタンスまたはコンテナワークロードにアタッチされた EBS ボリュームで実行されるマルウェアスキャンの識別子です。詳細については、「[Malware Protection for EC2 の検出結果の詳細](#malware-protection-scan-details)」を参照してください。
+ **重大度** - 重大、高、中、低のいずれかで割り当てられた検出結果の重大度。詳細については、「[検出結果の重大度レベル](guardduty_findings-severity.md)」を参照してください。
+ **[結果タイプ]** - GuardDuty がこの検出結果を生成する原因となったパターンに一致する新しいアクティビティにより、この検出結果が最後に更新された時刻。

## [リソース]
<a name="findings-resource-affected"></a>

**影響を受けるリソース**は、開始アクティビティのターゲットとなった AWS リソースに関する詳細を提供します。利用可能な情報は、リソースタイプとアクションタイプによって異なります。

**リソースロール** – 検出結果を開始した AWS リソースのロール。値は **[TARGET]** または **[ACTOR]** で、それぞれの値は、リソースが疑わしいアクティビティの対象であったか、疑わしいアクティビティを実行したアクターであったことを表します。

**リソースタイプ** - 該当するリソースのタイプ。複数のリソースが関係していた場合は、複数のリソースタイプが検出結果に含まれる可能性があります。リソースタイプは、**Instance**、**AccessKey**、**S3Bucket**、**S3Object**、**KubernetesCluster**、**ECSCluster**、**Container**、**RDSDBInstance**、**RDSLimitlessDB** および **Lambda** です。リソースタイプによって、使用可能な検出結果の詳細が異なります。リソースオプションタブを選択して、そのリソースで使用可能な詳細について説明します。

------
#### [ Instance ]

**インスタンスの詳細:**

**注記**  
インスタンスが既に停止している場合、またはクロスリージョン API コールを行うときに別のリージョンの EC2 インスタンスから基盤となる API コールが発生した場合、インスタンスの詳細が欠落することがあります。
+ **インスタンス ID** - GuardDuty がその検出結果を生成する原因となったアクティビティに含まれる EC2 インスタンスの ID。
+ **インスタンスタイプ** - 検出結果に関連する EC2 インスタンスのタイプ。
+ **[起動時刻]** - インスタンスが開始された日時
+ **Outpost ARN** – の Amazon リソースネーム (ARN) AWS Outposts。 AWS Outposts インスタンスにのみ適用されます。詳細については、「*Outposts ラックのユーザーガイド*」の「[AWS Outpostsとは](https://docs.aws.amazon.com/outposts/latest/userguide/what-is-outposts.html)」を参照してください。
+ **[セキュリティグループ名]** - 関連するインスタンスに付属するセキュリティグループの名前。
+ **[セキュリティグループ ID]** - 関係するインスタンスに付属するセキュリティグループの ID。
+ **[インスタンスの状態]**- ターゲットインスタンスの現在の状態。
+ **[アベイラビリティーゾーン]** - 関連するインスタンスが配置されている AWS リージョンアベイラビリティーゾーン。
+ **[イメージ ID]** - アクティビティに関連するインスタンスの構築に使用される Amazon マシンイメージの ID。
+ **[イメージの説明]** - アクティビティに関連するインスタンスの構築に使用される Amazon マシンイメージの ID に関する説明。
+ **[タグ]** - このリソースにアタッチされているタグのリスト。リストの形式は `key`:`value` です。

------
#### [ AccessKey ]

**アクセスキーの詳細:**
+ **アクセスキー ID** - GuardDuty がその検出結果を生成する原因となったアクティビティを行ったユーザーのアクセスキー ID。
+ **[プリンシパル ID]** - GuardDuty がその検出結果を生成する原因となったアクティビティを行ったユーザーのプリンシパル ID。
+ **[ユーザータイプ]** - GuardDuty がその検出結果を生成する原因となったアクティビティを行ったユーザーのタイプ。詳細については、「[CloudTrail userIdentity 要素](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html#cloudtrail-event-reference-user-identity-fields)」を参照してください。
+ **[ユーザー名]** - GuardDuty がその検出結果を生成する原因となったアクティビティを行ったユーザーの名前。

------
#### [ S3Bucket ]

**Amazon S3 バケットの詳細**
+ **[名前]** - 検出結果に関連するバケットの名前。
+ **[ARN]** – 検出結果に関連するバケットの ARN。
+ **[所有者]** - 検出結果に関連するバケットを所有するユーザーの正規ユーザー ID。正規ユーザー ID の詳細については、「[AWS アカウント ID](https://docs.aws.amazon.com/general/latest/gr/acct-identifiers.html)」を参照してください。
+ **[タイプ]** - バケット検出結果のタイプで、**[送信先]** または **[ソース]** になります。
+ **デフォルトのサーバー側暗号化** - バケットの暗号化に関する詳細。
+ **バケットタグ** - このリソースにアタッチされたタグのリスト。リストの形式は `key`:`value` です。
+ **[有効な許可]** - 関連するバケットが公開されているかどうかを示す、バケットに関するすべての有効な許可とポリシーの評価。値は **[公開]** または **[非公開]** です。

------
#### [ S3Object ]
+ **[S3 オブジェクトの詳細]** – スキャンされた S3 オブジェクトに関する以下の情報が含まれます。
  + **[ARN]** – スキャンされた S3 オブジェクトの Amazon リソースネーム (ARN)。
  + **[キー]** – S3 バケットでファイルの作成時にファイルに割り当てられた名前。
  + **[Version Id]** – バケットのバージョニングを有効にすると、このフィールドには、スキャンされた S3 オブジェクトの最新バージョンに関連付けられたバージョン ID が表示されます。詳細については、*『Amazon S3 ユーザーガイド』*の[「S3 バケットでのバージョニングの使用」](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html)を参照してください。
  + **[eTag]** – スキャンされた S3 オブジェクトの特定のバージョンを表します。
  + **[ハッシュ]** – この検出結果で検出された脅威のハッシュ。
+ **[S3 バケットの詳細]** – スキャンされた S3 オブジェクトに関連付けられた Amazon S3 バケットに関する以下の情報が含まれます。
  + **[名前]** – オブジェクトが含まれている S3 バケットの名前を示します。
  + **[ARN]** – S3 バケットの Amazon リソースネーム (ARN)。
+ **[所有者]** – S3 バケット所有者の正規 ID。

------
#### [ EKSCluster ]

**Kubernetes クラスターの詳細:**
+ **名前** — Kubernetes クラスターの名前。
+ **ARN** — クラスターを識別する ARN。
+ **作成時刻** - このクラスターが生成された日時。
**注記**  
GuardDuty コンソールの検出結果のタイムスタンプはローカルタイムゾーンで表示されます。一方、JSON エクスポートおよび CLI 出力では UTC 中にタイムスタンプが表示されます。
+ **VPC ID** — クラスターに関連付けられている VPC ID。
+ **状態** – クラスターの現在の状態。
+ **タグ** - クラスターに適用し、クラスターの分類と整理に役立つメタデータ。各タグは、`key`:`value` 形式でリストされているキーとオプションの値で構成されます。キーと値の両方を定義できます。

  クラスタータグは、クラスターに関連付けられた他のリソースには伝達されません。

**Kubernetes ワークロードの詳細:**
+ **タイプ** - ポッド、デプロイ、ジョブなどの Kubernetes ワークロードのタイプ。
+ **名前** - Kubernetes ワークロードの名前。
+ **UID** - Kubernetes ワークロードの固有の ID。
+ **作成時刻** - このワークロードが生成された日時。
+ **ラベル** - Kubernetes ワークロードにアタッチされたキーと値のペア。
+ **コンテナ** - Kubernetes ワークロードの一部として実行されているコンテナの詳細。
+ **名前空間** - ワークロードはこの Kubernetes 名前空間に属します。
+ **ボリューム** - Kubernetes ワークロードが使用するボリューム。
  + **ホストパス** - ボリュームがマッピングされるホストマシン上の既存のファイルまたはディレクトリを示します。
  + **名前** - ボリュームの名前。
+ **ポッドセキュリティコンテキスト** - ポッド内のすべてのコンテナの権限とアクセスコントロール設定を定義します。
+ **ホストネットワーク** - ポッドが Kubernetes ワークロードに含まれている場合は `true` に設定します。

**Kubernetes ユーザーの詳細**
+ **グループ** — 検出結果を生成したアクティビティに関与したユーザーの Kubernetes RBAC (ロールアクセスベースのコントロール) グループ。
+ **ID** — Kubernetes ユーザーの固有の ID。
+ **ユーザー名** — 検出結果を生成したアクティビティに関係した Kubernetes ユーザーの名前。
+ **セッション名** — Kubernetes RBAC アクセス許可を持つ IAM ロールを引き受けたエンティティ。

------
#### [ ECSCluster ]

**ECS クラスターの詳細**
+ **ARN** — クラスターを識別する ARN。
+ **名前** - クラスターの名前。
+ **状態** – クラスターの現在の状態。
+ **アクティブサービスの数** — `ACTIVE` 状態のクラスター内で実行されているサービスの数。[ListServices](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListServices.html) でこれらのサービスを確認できます。
+ **登録されたコンテナインスタンス数** — クラスターに登録されているコンテナインスタンスの数。これには、`ACTIVE` および `DRAINING` 状態の両方のコンテナインスタンスが含まれます
+ **実行中のタスク数** — `RUNNING` 状態のクラスターのタスクの数。
+ **タグ** - クラスターに適用し、クラスターの分類と整理に役立つメタデータ。各タグは、`key`:`value` 形式でリストされているキーとオプションの値で構成されます。キーと値の両方を定義できます。
+ **コンテナ** – タスクに関連付けられたコンテナの詳細:
  + **コンテナ名** – コンテナの名前。
  + **コンテナイメージ** – コンテナのイメージ。
+ **タスクの詳細** — クラスター内のタスクの詳細。
  + **ARN** – タスクの Amazon リソースネーム (ARN)。
  + **定義 ARN** – タスクを作成するタスク定義の Amazon リソースネーム(ARN)。
  + **バージョン**– タスクのバージョンカウンター。
  + **タスクの作成時刻** – タスクが作成されたときの Unix タイムスタンプ。
  + **タスクの開始時刻** – タスクが開始されたときの Unix タイムスタンプ。
  + **タスクの開始ユーザー** – タスクの開始時に指定されたタグ。

------
#### [ Container ]

**コンテナの詳細:**
+ **コンテナランタイム** — コンテナの実行に使用されたコンテナランタイム (`docker` または `containerd` など)。
+ **ID** — コンテナインスタンスのコンテナインスタンス ID または完全な ARN エントリ。
+ **名前** — コンテナの名前。
+ **イメージ** — コンテナインスタンスのイメージ。
+ **ボリュームマウント** — コンテナボリュームのマウントのリスト。コンテナは、そのファイルシステムの下にボリュームをマウントできます。
+ **セキュリティコンテキスト** — コンテナセキュリティコンテキストは、コンテナの権限とアクセス制御設定を定義します。
+ **プロセスの詳細** — 検出結果に関連付けられているプロセスの詳細が記述されます。

------
#### [ RDSDBInstance ]

**RDSDBInstance の詳細:**

**注記**  
このリソースは、データベースインスタンスに関連する RDS Protection の検出結果で利用できます。
+ **[Database Instance ID]** (データベースインスタンス ID) — GuardDuty の検出に関与したデータベースインスタンスに関連付けられた識別子
+ **[Engine]** (エンジン) — 検出に関与したデータベースインスタンスのデータベースエンジン名。指定できる値は、Aurora MySQL 互換または Aurora PostgreSQL 互換です。
+ **[Engine version]** (エンジンバージョン) – GuardDuty の検出に関与したデータベースエンジンのバージョン
+ **[Database cluster ID]** (データベースクラスター ID) — GuardDuty の検出に関与したデータベースインスタンス ID を含むデータベースクラスターの識別子
+ **[データベースインスタンス ARN]** — GuardDuty の検出に関与したデータベースインスタンスを識別する ARN

------
#### [ RDSLimitlessDB ]

**RDSLimitlessDB の詳細:**

このリソースは、サポートされている Limitless Database のエンジンバージョンに関連する RDS Protection の検出結果で利用可能です。
+ **DB シャードグループ識別子** – Limitless DB シャードグループに関連付けられた名前。
+ **DB シャードグループのリソース ID** – Limitless DB 内の DB シャードグループのリソース識別子。
+ **DB シャードグループ ARN** – DB シャードグループを識別する Amazon リソースネーム (ARN)。
+ **エンジン** – 検出結果に関連する Limitless DB の識別子。
+ **エンジンバージョン** – Limitless DB エンジンのバージョン。
+ **DB クラスター識別子** – Limitless DB の一部であるデータベースクラスターの名前。

影響を受ける可能性のあるデータベースのユーザーと認証の詳細については、「[RDS データベース (DB) ユーザーの詳細](#rds-pro-db-user-details)」を参照してください。

------
#### [ Lambda ]

**Lambda 関数の詳細**
+ **関数名** - 検出結果に含まれた Lambda 関数の名前。
+ **関数バージョン** - 検出結果に含まれる Lambda 関数のバージョン。
+ **関数の説明** - 検出結果に含まれた Lambda 関数の説明。
+ **関数 ARN** - 検出結果に含まれた Lambda 関数の Amazon リソースネーム (ARN)。
+ **リビジョン ID** - Lambda 関数バージョンのリビジョン ID。
+ **ロール** - 検出結果に関係する Lambda 関数の実行ロール。
+ **VPC 設定** - Lambda 関数に関連付けられた VPC ID、セキュリティグループ、サブネット ID を含む Amazon VPC 設定。
  + **VPC ID** - 検出結果に含まれた Lambda 関数に関連付けられた Amazon VPC の ID。
  + **サブネット ID** - Lambda 関数に関連付けられているサブネットの ID。
  + **セキュリティグループ** - 関連する Lambda 関数にアタッチされたセキュリティグループ。これには、セキュリティグループ名とグループ ID が含まれます。
+ **タグ** - このリソースにアタッチされているタグのリスト。リストの形式は `key`:`value` ペアです。

------

## 攻撃シーケンスの検出結果の詳細
<a name="guardduty-extended-threat-detection-attack-sequence-finding-details"></a>

GuardDuty は、アカウントで生成された各検出結果の詳細を提供します。これらの詳細により、検出結果の背後にある理由を把握することができます。このセクションでは、[攻撃シーケンスの検出結果タイプ](guardduty-attack-sequence-finding-types.md) に関連する詳細に焦点を当てます。これには、影響を受ける可能性のあるリソース、イベントのタイムライン、指標、シグナル、および検出結果に関連するエンドポイントなどのインサイトが含まれます。

GuardDuty の検出結果であるシグナルに関連する詳細を確認するには、このページの関連するセクションを参照してください。

GuardDuty コンソールで攻撃シーケンスの検出結果を選択すると、詳細サイドパネルは以下のタブに分割されます。
+ **概要** – 攻撃シーケンスの詳細 (シグナル、MITRE 戦術、影響を受ける可能性のあるリソースなど) をコンパクトに表示します。
+ **シグナル** – 攻撃シーケンスに関連するイベントのタイムラインを表示します。
+ **リソース** – 影響を受ける可能性のあるリソース、またはリスクにさらされている可能性のあるリソースに関する情報を提供します。

以下のリストは、攻撃シーケンスの検出結果の詳細に関連する説明を示しています。

**シグナル**  
シグナルとは、GuardDuty が攻撃シーケンスの検出に使用する API アクティビティまたは検出結果です。GuardDuty は、明確な脅威として現れない微弱なシグナルを考慮し、それらを組み合わせて、個別に生成された検出結果と相関させます。より詳細なコンテキストについては、**[シグナル]** タブには、GuardDuty が観測したシグナルのタイムラインが表示されます。  
GuardDuty の検出結果である各シグナルには、独自の重大度レベルと値が割り当てられます。GuardDuty コンソールでは、各シグナルを選択して、関連する詳細を表示できます。

**アクター**  
攻撃シーケンスの脅威アクターに関する詳細を提供します。詳細については、「*Amazon GuardDuty API Reference*」の「[アクター](https://docs.aws.amazon.com/guardduty/latest/APIReference/API_Actor.html)」を参照してください。

**エンドポイント**  
この攻撃シーケンスで使用されたネットワークエンドポイントの詳細を提供します。詳細については、「*Amazon GuardDuty API リファレンス*」の「[NetworkEndpoint](https://docs.aws.amazon.com/guardduty/latest/APIReference/API_NetworkEndpoint.html)」を参照してください。GuardDuty が場所を決定する方法については、「[位置情報の詳細](#guardduty-finding-details-geolocation)」を参照してください。

**インジケータ**  
セキュリティ問題のパターンに一致する観察データが含まれます。このデータは、GuardDuty が疑わしいアクティビティの可能性を示す理由を指定します。たとえば、インジケータ名が の場合`HIGH_RISK_API`、これは脅威アクターが一般的に使用するアクション、または認証情報へのアクセスやリソースの変更など AWS アカウント、 に潜在的な影響を引き起こす可能性のある機密アクションを示します。  
以下の表に、潜在的な指標とその説明のリストを示します。      
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/guardduty/latest/ug/guardduty_findings-summary.html)
**MITRE の戦術**  
このフィールドは、脅威アクターが攻撃シーケンスを通じて試みる MITRE ATT&CK 戦術を指定します。GuardDuty は、攻撃シーケンス全体にコンテキストを追加する [MITRE ATT&ACK](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-format.html#guardduty_threat_purposes) フレームワークを使用します。GuardDuty コンソールが脅威アクターによって使用された脅威の目的を指定するために使用する色は、重大、高、中、低の [検出結果の重大度レベル](guardduty_findings-severity.md) を示す色と一致します。

**ネットワークインジケータ**  
インジケータには、ネットワークが疑わしい動作を示す理由を説明する、ネットワークインジケータ値の組み合わせが含まれます。このセクションは、**インジケータ**に `SUSPICIOUS_NETWORK` または `MALICIOUS_IP` が含まれている場合にのみ適用されます。以下の例は、ネットワークインジケータをインジケータに関連付ける方法を示しています。  
+ *AnyCompany* は自律システム (AS) です。
+  `TUNNEL_VPN`、`IS_ANONYMOUS`、`ALLOWS_FREE_ACCESS` はネットワークインジケータです。

```
...{
    "key": "SUSPICIOUS_NETWORK",
    "values": [{
        "AnyCompany": [
            "TUNNEL_VPN",
            "IS_ANONYMOUS",
            "ALLOWS_FREE_ACCESS"
        ]
    }]
}
...
```
以下の表に、ネットワークインジケータの値とその説明を示します。これらのタグは、GuardDuty が Spur などのソースから収集する脅威インテリジェンスに基づいて追加されます      
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/guardduty/latest/ug/guardduty_findings-summary.html)

## RDS データベース (DB) ユーザーの詳細
<a name="rds-pro-db-user-details"></a>

**注記**  
このセクションは、GuardDuty で RDS Protection 機能を有効にしたときの検出結果に適用されます。詳細については、「[GuardDuty RDS Protection](rds-protection.md)」を参照してください。

GuardDuty の検出結果から、侵害の可能性があるデータベースに関する、以下のユーザー情報と認証情報が得られます。
+ **[User]** (ユーザー) - 異常なログイン試行に使用されたユーザー名
+ **[Application]** (アプリケーション) — 異常なログイン試行に使用されたアプリケーション名
+ **[Database]** (データベース) — 異常なログイン試行に関与したデータベースインスタンスの名前
+ **[SSL]** — ネットワークに使用された Secure Socket Layer (SSL) のバージョン
+ **[認証方法]** — 検出に関与したユーザーが使用した認証方法

侵害された可能性のあるリソースの詳細については、「[[リソース]](#findings-resource-affected)」を参照してください。

## Runtime Monitoring の検出結果の詳細
<a name="runtime-monitoring-runtime-details"></a>

**注記**  
これらの詳細を確認できるのは、GuardDuty が次のいずれかの [GuardDuty Runtime Monitoring の検出結果タイプ](findings-runtime-monitoring.md) を生成した場合だけです。

このセクションには、プロセスの詳細や必要なコンテキストなど、ランタイムの詳細が含まれています。プロセスの詳細には、観察されたプロセスに関する情報が記述され、ランタイムのコンテキストには、潜在的に疑わしいアクティビティに関する追加情報が記述されます。

**プロセスの詳細**
+ **名前** - プロセスの名前。
+ **実行可能ファイルのパス** - プロセスの実行可能ファイルの絶対パス。
+ **実行可能ファイル SHA-256** - プロセスの実行可能ファイルの `SHA256` ハッシュ。
+ **名前空間 PID** - ホストレベルの PID 名前空間以外のセカンダリ PID 名前空間内のプロセスのプロセス ID。コンテナ内のプロセスの場合、コンテナ内で確認されるプロセス ID です。
+ **現在の作業ディレクトリ** - プロセスの現在の作業ディレクトリ。
+ **プロセス ID** - オペレーティングシステムによってプロセスに割り当てられた ID。
+ **startTime** - プロセスが開始された時間。これは UTC 日付文字列形式 (`2023-03-22T19:37:20.168Z`) です。
+ **UUID** - GuardDuty で、プロセスに割り当てられた一意の ID。
+ **親 UUID** - 親プロセスの固有の ID。この ID は GuardDuty によって親プロセスに割り当てられます。
+ **ユーザー** - プロセスを実行したユーザー。
+ **ユーザー ID** - プロセスを実行したユーザーの ID。
+ **有効なユーザー ID** - イベント発生時のプロセスの有効な実効ユーザー ID。
+ **系列** - プロセスの先祖に関する情報。
  + **プロセス ID** - オペレーティングシステムによってプロセスに割り当てられた ID。
  + **UUID** - GuardDuty で、プロセスに割り当てられた一意の ID。
  + **実行可能ファイルのパス** - プロセスの実行可能ファイルの絶対パス。
  + **有効なユーザー ID** - イベント発生時のプロセスの有効な実効ユーザー ID。
  + **親 UUID** - 親プロセスの固有の ID。この ID は GuardDuty によって親プロセスに割り当てられます。
  + **開始時間** - プロセスが開始された時間。
  + **名前空間 PID** - ホストレベルの PID 名前空間以外のセカンダリ PID 名前空間内のプロセスのプロセス ID。コンテナ内のプロセスの場合、コンテナ内で確認されるプロセス ID です。
  + **ユーザー ID** - プロセスを実行したユーザーのユーザー ID。
  + **名前** - プロセスの名前。

**ランタイムのコンテキスト**

次のフィールドから、生成された検出結果には、その検出結果タイプに関連するフィールドのみが含まれる場合があります。
+ **マウントソース** - コンテナによってマウントされたホスト上のパス。
+ **マウントターゲット** - ホストディレクトリにマッピングされているコンテナ内のパス。
+ **ファイルシステムタイプ** - マウントされたファイルシステムのタイプを示します。
+ **フラグ** - この検出結果に関係するイベントの動作をコントロールするオプションを示します。
+ **プロセスの変更** - 実行時にコンテナ内でバイナリ、スクリプト、またはライブラリを作成または変更したプロセスに関する情報。
+ **修正日時** - 実行時にプロセスがコンテナ内のバイナリ、スクリプト、またはライブラリを作成または変更したときのタイムスタンプ。このフィールドは、UTC 日付文字列形式 (`2023-03-22T19:37:20.168Z`)です。
+ **ライブラリパス** - ロードされた新しいライブラリへのパス。
+ **LD プリロード値** - `LD_PRELOAD` 環境変数の値。
+ **ソケットパス** - アクセスされた Docker ソケットへのパス。
+ **Runc バイナリパス** - `runc` バイナリへのパス。
+ **リリースエージェントパス** - `cgroup` リリースエージェントファイルへのパス。
+ **コマンドラインの例** – 潜在的に疑わしいアクティビティに関連するコマンドラインの例。
+ **ツールカテゴリ** – ツールが属するカテゴリ。この例としては、Backdoor Tool、Pentest Tool、Network Scanner、Network Sniffer などがあります。
+ **ツール名** – 潜在的に疑わしいツールの名前。
+ **スクリプトパス** – 検出結果を生成した実行済みスクリプトへのパス。
+ **脅威ファイルパス** – 脅威インテリジェンスの詳細が見つかった疑わしいパス。
+ **サービス名** – 無効化されたセキュリティサービスの名前。
+ **モジュール名** – カーネルにロードされるモジュールの名前。
+ **モジュール SHA256** – モジュールの SHA256 ハッシュ。
+ **モジュールファイルパス** – カーネルにロードされたモジュールへのパス。

## EBS ボリュームのスキャンの詳細
<a name="mp-ebs-volumes-scan-details"></a>

**注記**  
このセクションは、[Malware Protection for EC2](malware-protection.md) で GuardDuty 実行型マルウェアスキャンをオンにした場合の検出結果に適用されます。

EBS ボリュームスキャンは、侵害された可能性のある EC2 インスタンスまたはコンテナワークロードにアタッチされた EBS ボリュームに関する詳細を提供します。
+ **スキャン** — マルウェアスキャンの識別子。
+ **スキャン開始日** — マルウェアスキャンが開始された日時。
+ **スキャン完了日** — 不正プログラムのスキャンの完了日時。
+ **検出結果 ID** — このマルウェアスキャンを開始した GuardDuty の検出結果 ID。
+ **ソース** – 想定される値は、`Bitdefender` と `Amazon` です。

  マルウェアの検出に使用されるスキャンエンジンの詳細については、「[GuardDuty マルウェア検出のスキャンエンジン](guardduty-malware-detection-scan-engine.md)」を参照してください。
+ **スキャン検出** — 各マルウェアスキャンの詳細と結果の全情報。
  + **スキャンされたアイテム数** — スキャンされたファイルの合計数。`totalGb`、`files`、および `volumes` などの詳細を提供します。
  + **脅威が検出されたアイテム数** — スキャン中に検出された悪意のある `files` の合計数。
  + **最も重大度の高い脅威の詳細** — スキャン中に検出された、重大度が最も高い脅威の詳細と、悪意のあるファイルの数。`severity`、`threatName`、および `count` などの詳細を提供します。
  + **名前で検出された脅威** — すべての重大度レベルの脅威をグループ化するコンテナ要素。`itemCount`、`uniqueThreatNameCount`、`shortened`、および `threatNames` などの詳細を提供します。

## Malware Protection for EC2 の検出結果の詳細
<a name="malware-protection-scan-details"></a>

**注記**  
このセクションは、[Malware Protection for EC2](malware-protection.md) で GuardDuty 実行型マルウェアスキャンをオンにした場合の検出結果に適用されます。

Malware Protection for EC2 スキャンでマルウェアが検出された場合は、[https://console.aws.amazon.com/guardduty/](https://console.aws.amazon.com/guardduty/) コンソールで「**検出結果**」のページで対応する結果を選択すると、スキャンの詳細を表示できます。Malware Protection for EC2 の検出結果の重大度は、GuardDuty の検出結果の重大度によります。

次の情報は、詳細パネルの「**検出された脅威**」セクションでご覧になれます。
+ **名前** — 検出によってファイルをグループ化することによって取得された脅威の名前。
+ **重大度** — 検出された脅威の重大度。
+ **ハッシュ** – ファイルの SHA-256 ハッシュ。
+ **ファイルパス** — EBS ボリューム内の悪意のあるファイルの場所。
+ **ファイル名** — 脅威が検出されたファイルの名前。
+ **ボリューム ARN** — スキャンされた EBS ボリュームの ARN。

次の情報は、詳細パネルの「**マルウェアスキャンの詳細**」のセクションでご覧になれます。
+ **スキャン** — 不正プログラムスキャンのスキャン ID。
+ **スキャン開始日** — スキャンが開始された日時。
+ **スキャン完了日** — スキャンの完了日時。
+ **スキャンされたファイル** — スキャンされたファイルとディレクトリの合計数。
+ **スキャンされた合計 GB** — プロセス中にスキャンされたストレージの容量。
+ **検出結果 ID** — このマルウェアスキャンを開始した GuardDuty の検出結果 ID。
+ 次の情報は、詳細パネルの「**ボリュームの詳細**」のセクションでご覧になれます。
  + **ボリューム ARN** — ボリュームの Amazon リソースネーム (ARN)。
  + **SnapshotARN** — EBS ボリュームのスナップショットの ARN。
  + **ステータス** — `Running`、`Skipped`、および `Completed` などのボリュームのスキャン状態。
  + **暗号化タイプ** — ボリュームの暗号化に使用される暗号化のタイプ。例えば、`CMCMK`。
  + **デバイス名** - デバイスの名前。例えば、`/dev/xvda`。

## Malware Protection for S3 の検出結果の詳細
<a name="gdu-malware-protection-for-s3-finding-details"></a>

 AWS アカウントで GuardDuty と Malware Protection for S3 の両方を有効にすると、次のマルウェアスキャンの詳細を利用できます。
+ **脅威** – マルウェアスキャン中に検出された脅威のリスト。
**アーカイブファイル内の複数の潜在的な脅威**  
潜在的な脅威が複数含まれるアーカイブファイルがある場合、Malware Protection for S3 は最初に検出された脅威のみを報告します。この後、スキャンステータスは完了とマークされます。GuardDuty は、関連付けられた検出結果タイプを生成し、生成した EventBridge イベントも送信します。EventBridge イベントを使用した Amazon S3 オブジェクトスキャンのモニタリングの詳細については、「[S3 オブジェクトスキャンの結果](monitor-with-eventbridge-s3-malware-protection.md#s3-object-scan-status-malware-protection-s3-ev)」の「**THREATS\$1FOUND** の通知スキーマの例」を参照してください。
+ **項目パス** – スキャンされた S3 オブジェクトのネストされた項目パスとハッシュの詳細のリスト。
  + **ネストされた項目パス** – 脅威が検出されたスキャンされた S3 オブジェクトの項目パス。

    このフィールドの値は、最上位レベルのオブジェクトがアーカイブであり、アーカイブ内で脅威が検出された場合にのみ使用できます。
  + **[ハッシュ]** – この検出結果で検出された脅威のハッシュ。
+ **ソース** – 想定される値は、`Bitdefender` と `Amazon` です。

  マルウェアの検出に使用されるスキャンエンジンの詳細については、「[GuardDuty マルウェア検出のスキャンエンジン](guardduty-malware-detection-scan-engine.md)」を参照してください。

## Action
<a name="finding-action-section"></a>

検出結果の **[Action]** (アクション) は、その検出をトリガーしたアクティビティのタイプに関する詳細を示します。利用可能な情報は、アクションタイプによって異なります。

**[アクションタイプ]** - 検出結果アクティビティのタイプ。この値は、**NETWORK\$1CONNECTION**、**PORT\$1PROBE**、**DNS\$1REQUEST**、**AWS\$1API\$1CALL**、**RDS\$1LOGIN\$1ATTEMPT** のいずれかになります。利用可能な情報は、アクションタイプによって異なります。
+ **NETWORK\$1CONNECTION** - ネットワークトラフィックが識別済み EC2 インスタンスとリモートホスト間で交わされたことを示します。このアクションタイプには、次の追加情報が含まれています。
  + **[接続方向]** - GuardDuty がその検出結果を生成する原因となったアクティビティで確認されたネットワークの接続方向。これには、次のいずれかの値を指定できます。
    + **インバウンド** - リモートホストがアカウントの識別済み EC2 インスタンスのローカルポートへの接続を開始したことを示します。
    + **アウトバウンド** - 識別済み EC2 インスタンスがリモートホストへの接続を開始したことを示します。
    + **不明** - GuardDuty が接続の方向を判別できなかったことを示します。
  + **プロトコル** - GuardDuty がその検出結果を生成する原因となったアクティビティで確認されたネットワークの接続プロトコル。
  + **ローカル IP** (ローカル IP) - 検出結果をトリガーしたトラフィックの元の送信元 IP アドレス。この情報を使用して、トラフィックが通過する中間レイヤーの IP アドレスと、検出結果をトリガーしたトラフィックの元の送信元 IP アドレスを区別します。例えば、EKS ポッドが実行されているインスタンスの IP アドレスではなく、EKS ポッドの IP アドレスです。
  + **[ブロック]** - ターゲットポートがブロックされているかどうかを示します。
+ **PORT\$1PROBE** - リモートホストが複数のオープンポートで識別済みの EC2 インスタンスを調査したことを示します。このアクションタイプには、次の追加情報が含まれています。
  + **ローカル IP** - 検出結果をトリガーしたトラフィックの元の送信元 IP アドレス。この情報を使用して、トラフィックが通過する中間レイヤーの IP アドレスと、検出結果をトリガーしたトラフィックの元の送信元 IP アドレスを区別します。例えば、EKS ポッドが実行されているインスタンスの IP アドレスではなく、EKS ポッドの IP アドレスです。
  + **[ブロック]** - ターゲットポートがブロックされているかどうかを示します。
+ **DNS\$1REQUEST** - 識別済みの EC2 インスタンスがドメイン名を照会したことを示します。このアクションタイプには、次の追加情報が含まれています。
  + **プロトコル** - GuardDuty がその検出結果を生成する原因となったアクティビティで確認されたネットワークの接続プロトコル。
  + **[ブロック]** - ターゲットポートがブロックされているかどうかを示します。
+ **AWS\$1API\$1CALL** - AWS API が呼び出されたことを示します。このアクションタイプには、次の追加情報が含まれています。
  + **API** - 呼び出された API オペレーションの名前で、GuardDuty がこの検出結果を生成する原因となった API。
**注記**  
これらのオペレーションは、 AWS CloudTrailによってキャプチャされる API 以外のイベントを含めることもできます。詳細については、「[CloudTrail によってキャプチャされる API 以外のイベント](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-non-api-events.html)」を参照してください。
  + **[ユーザーエージェント]** – API リクエストを実行したユーザーエージェント。この値は、呼び出しが 、 AWS サービス AWS マネジメントコンソール、 AWS SDKs、または のいずれから行われたかを示します AWS CLI。
  + **エラーコード** - API コールの失敗によって検出結果がトリガーされた場合、そのコールに対してエラーコードが表示されます。
  + **サービス名** - 検出結果をトリガーした API コールを実行しようとしたサービスの DNS 名。
+ **RDS\$1LOGIN\$1ATTEMPT** — 侵害された可能性のあるデータベースに、リモート IP アドレスからログインが試行されたことを示します。
  + **[IP アドレス]** — 疑わしいログイン試行に使用されたリモート IP アドレス。

## アクターまたはターゲット
<a name="finding-actor-target"></a>

**[リソースロール]** が `TARGET` の場合には、検出結果に **[アクター]** セクションが表示されます。これは、リソースが疑わしいアクティビティの対象であったことを示します。また、**[Actor]** (アクター) セクションには、リソースを対象としたエンティティの詳細が含められます。

**[リソースロール]** が `ACTOR` の場合には、検出結果に **[ターゲット]** セクションが表示されます。これは、リソースがリモートホストに対する不審なアクティビティに関与していたことを示します。また、このセクションには、リソースのターゲットになった IP またはドメインに関する情報が含められます。

**[アクター]** セクションまたは **[ターゲット]** セクションには、次の情報を含めることができます。
+ **[Affiliated]** (関連) – リモート API コール実行者の AWS アカウントが GuardDuty 環境に関連しているかどうかの詳細です。この値が `true` の場合、API コール実行者は何らかの形でアカウントに関連しています。`false` の場合、API コール実行者は環境外です。
+ **[リモートアカウント ID]** – 最終的なネットワークでリソースにアクセスするために使用されたアウトバウンド IP アドレスを所有するアカウント ID。
+ **IP アドレス** - GuardDuty がその検出結果を生成する原因となったアクティビティに関係のある IP アドレス。
+ **場所** - GuardDuty がその検出結果を生成する原因となったアクティビティに関係のある IP アドレスの位置情報。
+ **[組織]** - GuardDuty がその検出結果を生成する原因となったアクティビティに関係のある IP アドレスの ISP 組織情報。
+ **ポート** - GuardDuty がその検出結果を生成する原因となったアクティビティに関係のあるポート番号。
+ **ドメイン** - GuardDuty がその検出結果を生成する原因となったアクティビティに関係のあるドメイン。
+ **サフィックス付きのドメイン** — GuardDuty がその検出結果を生成する原因となった可能性があるアクティビティに関連する 2 番目および最上位レベルのドメイン。最上位ドメインとセカンドレベルドメインのリストについては、「[public suffix list](https://publicsuffix.org/)」を参照してください。

## 位置情報の詳細
<a name="guardduty-finding-details-geolocation"></a>

GuardDuty が MaxMind GeoIP データベースを使用してリクエストの場所とネットワークを決定します。MaxMind は、国レベルでの非常に高精度なデータを報告しますが、精度は国や IP アドレスの種類などの要因によって異なります。

MaxMind の詳細については、「[MaxMind IP Geolocation](https://support.maxmind.com/hc/en-us/sections/4407519834267-IP-Geolocation)」を参照してください。GeoIP データに誤りがあると思われる場合は、[[MaxMind Correct GeoIP2 Data](https://support.maxmind.com/hc/en-us/articles/4408252036123-GeoIP-Correction)] ページから MaxMind に修正リクエストを送信できます。

## 追加情報
<a name="finding-additional-info"></a>

すべての検出結果には **[追加情報]** セクションがあり、次のような情報が含まれます。
+ **脅威リスト名** - GuardDuty がこの検出結果を生成する原因となったアクティビティに関する IP アドレスまたはドメイン名が含まれている脅威リストの名前。
+ **サンプル** - サンプル検出結果であるかどうかを示す true または false の値。
+ **アーカイブ** - 検出結果がアーカイブ済みかどうかを示す true または false の値。
+ **[異常]** - 履歴で確認されていないアクティビティの詳細 これらには、異常な (以前に確認されていない) ユーザー、場所、時間、バケット、ログイン動作、または ASN Org などが含まれます。
+ **異常プロトコル** - GuardDuty がその検出結果を生成する原因となったアクティビティに関係のあるネットワークの接続プロトコル。
+ **エージェント詳細** - AWS アカウントの EKS クラスターに現在導入されているセキュリティエージェントに関する詳細。これは EKS Runtime Monitoring の検出結果タイプにのみ適用されます。
  + **エージェントバージョン** - GuardDuty セキュリティエージェントのバージョン。
  + **エージェント ID** - GuardDuty セキュリティエージェントの固有識別子。

## 証拠
<a name="finding-evidence"></a>

脅威インテリジェンスに基づく検出結果には **[証拠]** セクションがあり、次のような情報が含まれます。
+ **脅威インテリジェンスの詳細** - 認識された `Threat name` が表示される脅威リストの名前。
+ **脅威名** - 脅威に関連付けられているマルウェアファミリーの名前、またはその他の識別子。
+ **脅威ファイル SHA256** – 検出結果を生成したファイルの SHA256。

## 異常な動作
<a name="finding-anomalous"></a>

**AnomalousBehavior** で終わる検出結果タイプは、GuardDuty 異常検出機械学習 (ML) モデルによって検出されたことを示します。機械学習モデルは、アカウントへのすべての API リクエストを評価し、相手が使用するタクティクスに関連する異常なイベントを特定します。機械学習モデルは、リクエストを行ったユーザー、リクエストが行われた場所、リクエストされた特定の API など、API リクエストのさまざまな要因を追跡します。

CloudTrail ユーザーアイデンティティ において、API リクエストの原因となった、異常のある要因についての詳細は、「検出結果の詳細」を参照してください。アイデンティティは、[CloudTrail userIdentity エレメント](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html)で定義され、指定できる値は、`Root`、`IAMUser`、`AssumedRole`、`FederatedUser`、`AWSAccount` または `AWSService` です。

API アクティビティに関連付けられているすべての GuardDuty の検出結果で使用できる詳細に加えて、**AnomalousBehavior** 検出結果には、次のセクションで概説される追加の詳細が含まれています。これらの詳細はコンソールで表示でき、検出結果の JSON でも確認できます。
+ **異常な API** - 検出結果に関連付けられたプライマリ API リクエストに近いユーザーアイデンティティが原因の API リクエストのリスト。このペインでは、次の方法で API イベントの詳細をさらに分類します。
  + 最初にリストされている API はプライマリ API です。プライマリ API は、観測された最も高いリスクアクティビティに関連付けられた API リクエストです。これは、発見をトリガーし、検出結果タイプの攻撃ステージと相関する API です。これは、コンソールの **[アクション]** セクションおよび検出結果の JSON で詳述されている API でもあります。
  + リストされている他の API は、プライマリ API の近くで観察されるリストされたユーザーアインデンティティからの追加の異常 API です。リストに API が 1 つしかない場合、機械学習モデルはそのユーザーアイデンティティからの追加の API リクエストを異常として識別しませんでした。
  + API のリストは、API が**正常に呼び出された**かどうかに基づいて分類され、API が正常に呼び出されなかった場合は、エラーレスポンスが受信されたことを意味します。受信したエラーレスポンスのタイプは、それぞれ正常に呼び出されなかった API の上に一覧表示されます。考えられるエラーレスポンスのタイプは、`access denied`、`access denied exception`、`auth failure`、`instance limit exceeded`、`invalid permission - duplicate`、`invalid permission - not found`、および `operation not permitted` です。
  + API は、関連するサービスによって分類されます。
  + その他のコンテキストについては、**[Historical APIs]** (過去の API) を選択し、上位 API の詳細を確認します。通常は、ユーザーアイデンティティとアカウント内のユーザーすべての両方で表示される最大 20 個の API です。API は、**[めったにない(月に 1 回未満)]**、**[頻繁でない(月に数回)]**、または **[頻繁(毎日から毎週)]** でマークされ、アカウント内で使用されている頻度によって異なります。
+ **[Unusual Behavior (Account)]** (異常な動作 (アカウント)) - このセクションでは、アカウントでプロファイリングされた動作に関する詳細について説明します。
**プロファイルされた動作**  
GuardDuty は、配信されたイベントに基づき、アカウント内のアクティビティについて継続的に学習します。これらのアクティビティと観測されたその頻度は、プロファイルされた動作と呼ばれます。

  このパネルで追跡される情報は次のとおりです。
  + **[ASN 組織]** - 異常な API コールが行われた AS 番号 (ASN) 組織。
  + **[ユーザー名]** - 異常な API コールを行ったユーザーの名前。
  + **ユーザーエージェント** - 異常な API コールを行うために使用されるユーザーエージェント。ユーザーエージェントは、`aws-cli` または `Botocore` などのコールを行うために使用されるメソッドです。
  + **[ユーザータイプ]** - 異常な API コールを行ったユーザーの名前。可能な値は、`AWS_SERVICE`、`ASSUMED_ROLE`、`IAM_USER` または `ROLE` です。
  + **バケット** — アクセスされている S3 バケットの名前。
+ **[Unusual Behavior (User Identity)]** (異常な動作 (ユーザー ID)) - このセクションでは、検出に関与した**ユーザーアイデンティティ**のプロファイリングされた動作の詳細について説明します。動作が履歴として識別されない場合は、GuardDuty 機械学習モデルが、トレーニング期間内にこの方法で API コールを行うユーザー ID を認識していないことを意味します。**ユーザーアイデンティティ** に関する詳細については、次を参照してください。
  + **[ASN 組織]** - 異常な API コールが行われた元の ASN 組織。
  + **ユーザーエージェント** - 異常な API コールを行うために使用されるユーザーエージェント。ユーザーエージェントは、`aws-cli` または `Botocore` などのコールを行うために使用されるメソッドです。
  + **バケット** — アクセスされている S3 バケットの名前。
+ **[Unusual Behavior (Bucket)]** (異常な動作 (バケット)) - このセクションでは、検出結果に関連する、S3 バケットのプロファイリングされた動作に関する詳細について説明します。動作が履歴として識別されない場合は、GuardDuty 機械学習モデルが、トレーニング期間内にこの方法によるバケットへの API コールを認識していないことを意味します。このセクションで追跡される情報は次のとおりです。
  + **[ASN 組織]** - 異常な API コールが行われた元の ASN 組織。
  + **[ユーザー名]** - 異常な API コールを行ったユーザーの名前。
  + **ユーザーエージェント** - 異常な API コールを行うために使用されるユーザーエージェント。ユーザーエージェントは、`aws-cli` または `Botocore` などのコールを行うために使用されるメソッドです。
  + **[ユーザータイプ]** - 異常な API コールを行ったユーザーの名前。可能な値は、`AWS_SERVICE`、`ASSUMED_ROLE`、`IAM_USER` または `ROLE` です。
**注記**  
過去の動作の詳細については、**[Unusual behavior (Account)]** (異常な動作 (アカウント))、**[User ID]** (ユーザー ID)、または **[Bucket]** (バケット) セクションのいずれかで、**[Historical behavior]** (過去の動作) を選択して、アカウント内での使用頻度に応じて、**[Rare (less than once a month)]** (頻度が低い (月に数回))、**[Infrequent (a few times a month)]** (頻繁でない (月に数回))、または **[Frequent (daily to weekly)]** (頻度が高い (毎日から毎週)) の各カテゴリのアカウントで予想される動作に関する詳細を表示します。
+ **異常な動作 (データベース)** - このセクションでは、検出結果に関連するデータベースインスタンスの、プロファイリングされた動作に関する詳細について説明します。動作が履歴として識別されない場合は、GuardDuty 機械学習モデルが、トレーニング期間内にこの方法によるデータベースインスタンスへのログイン試行を認識していないことを意味します。検出結果パネルで追跡されるこのセクションの情報は次のとおりです。
  + **[User name]** (ユーザー名) - 異常なログイン試行に使用されたユーザー名
  + **[ASN Org]** (ASN 組織) - 異常なログイン試行が行われた ASN 組織
  + **[Application name]** (アプリケーション名) — 異常なログイン試行に使用されたアプリケーション名 
  + **[データベース名]** — 異常なログイン試行に関与したデータベースインスタンス名

  **[履歴動作]** セクションでは、関連するデータベースの **[ユーザー名]**、**[ASN 組織]**、**[アプリケーション名]**、**[データベース名]** について、以前に確認した内容について詳しく説明しています。固有の値にはそれぞれ、ログインが成功した際にその値が確認された回数を示すカウントが関連付けられています。
+ **異常動作 (アカウント Kubernetes クラスター、Kubernetes 名前空間、 Kubernetes ユーザー名)** - このセクションでは、検出結果に関連する、Kubernetes クラスターと名前空間の、プロファイリングされた動作に関する詳細を説明します。動作が履歴として識別されない場合、GuardDuty ML モデルが、アカウント、クラスター、名前空間、ユーザー名を認識していないことを意味します。検出結果パネルで追跡されるこのセクションの情報は次のとおりです。
  + **ユーザー名** — 検出結果に関連付けられた Kubernetes API を呼び出したユーザー。
  + **偽装されたユーザー名** – `username` に偽装されているユーザー。
  + **名前空間** — アクションが発生した Amazon EKS クラスター内の Kubernetes 名前空間。
  + **ユーザーエージェント** — Kubernetes API コールに関連付けられたユーザーエージェント。ユーザーエージェントは、`kubectl` などのコールを行うために使用されるメソッドです。
  + **API** — Amazon EKS クラスター内で `username` によって呼び出される Kubernetes API。
  + **ASN 情報** — この呼び出しを行うユーザーの IP アドレスに関連付けられた、組織や ISP などの ASN 情報。
  + **曜日** — Kubernetes API コールが行われた曜日。
  + **アクセス権限** — `username` が Kubernetes API を使用できるかどうかのアクセスの確認を受ける Kubernetes の動詞とリソース。
  + **サービスアカウント名** – ワークロードに ID を提供する Kubernetes ワークロードに関連付けられたサービスアカウント。
  + **レジストリ** — Kubernetes ワークロードにデプロイした、コンテナイメージに関連付けられたコンテナレジストリ。
  + **イメージ** — Kubernetes ワークロードにデプロイされた、関連するタグやダイジェストを含まないコンテナイメージ。
  + **イメージプレフィックス設定** — イメージを使用するコンテナの、`hostNetwork` または `privileged` などのコンテナとワークロードセキュリティ設定が有効になっているイメージプレフィックス。
  + **サブジェクト名** — `RoleBinding` や `ClusterRoleBinding` 内の参照ロールにバインドされている `user`、`group`、`serviceAccountName` などのサブジェクト。
  + **ロール名** — ロールまたは `roleBinding` API の作成や変更に関係するロールの名前。

### S3 ボリュームベースの異常
<a name="s3-volume-based-anomalies"></a>

このセクションでは、S3 ボリュームベースの異常についてのコンテキスト情報について詳しく説明します。ボリュームベースの検出結果 ([Exfiltration:S3/AnomalousBehavior](guardduty_finding-types-s3.md#exfiltration-s3-anomalousbehavior)) は、ユーザーの S3 バケットに対する異常な数の S3 API コールをモニタリングし、データ漏えいの可能性を示します。以下の S3 の API 呼び出しは、ボリュームベースの異常検出のために監視されます。
+ `GetObject`
+ `CopyObject.Read`
+ `SelectObjectContent`

以下のメトリクスは、IAM エンティティが S3 バケットにアクセスするときの通常の動作のベースラインを構築するのに役立ちます。データの流出を検出するために、ボリュームベースの異常検出結果は通常の行動ベースラインに対してすべてのアクティビティを評価します。次のメトリクスを表示するには、**[異常な動作 (ユーザーアイデンティティ)]**、**[確認されたボリューム (ユーザーアイデンティティ)]**、および **[確認されたボリューム (バケット)]** セクションで **[過去の動作]** を選択します。
+ 過去 24 時間に、影響を受ける S3 バケットに関連付けられた IAM ユーザーまたは IAM ロール (どちらが発行されたかによって異なる) によって呼び出された `s3-api-name` API コールの数。
+ 過去 24 時間に、すべての S3 バケットに関連付けられた IAM ユーザーまたは IAM ロール (どちらが発行されたかによって異なる) によって呼び出された `s3-api-name` API コールの数。
+ 過去 24 時間に、影響を受ける S3 バケットに関連付けられた IAM ユーザーまたは IAM ロール (どちらが発行されたかによって異なる) によって呼び出された `s3-api-name` API コールの数。

### RDS ログインアクティビティベースの異常
<a name="rds-pro-login-anomaly"></a>

このセクションは、異常なアクターが行ったログイン試行回数の詳細について説明するものであり、ログイン試行の結果ごとにグループ分けされています。[RDS Protection の検出結果タイプ](findings-rds-protection.md) はログインイベントをモニタリングして `successfulLoginCount`、`failedLoginCount`、`incompleteConnectionCount` などの異常なパターンがないかを確認し、異常な動作を特定します。
+ **successfulLoginCount** — このカウンターは、異常なアクターがデータベースインスタンスに対して行った、成功した接続 (ログイン属性の正しい組み合わせ) の合計を表します。ログイン属性には、ユーザー名、パスワード、データベース名が含まれます。
+ **failedLoginCount** — このカウンターは、データベースインスタンスへの接続を確立しようとして失敗した (不成功の) ログイン試行の合計を表します。これは、ユーザー名、パスワード、データベース名など、ログイン情報の組み合わせの属性が 1 つ以上、正しくなかったことを示します。
+ **incompleteConnectionCount** — このカウンターは、成功または失敗に分類できない接続試行の回数を表します。これらの接続は、データベースが応答する前に閉じられています。例えば、データベースポートは接続されているものの情報がデータベースに送信されないポートスキャンや、ログインが成功または失敗して完了する前に接続が中止された場合などです。

# GuardDuty の検出結果の集約
<a name="finding-aggregation"></a>

GuardDuty は生成された検出結果を動的に更新します。GuardDuty が同一のセキュリティ問題に関連する新たなアクティビティを検出した場合、新しい検出結果を作成する代わりに、GuardDuty は最新の情報を基に元の検出結果を更新します。この動作により、同様のレポートを複数確認しなくても進行中の問題を識別することが可能となり、既知のセキュリティ問題に関する全体的な検出結果の量を減らせます。

例えば、UnauthorizedAccess:EC2/SSHBruteForce の検出結果の場合、インスタンスへの複数のアクセスの試行が同じ検出結果 ID に集約され、検出結果の詳細の **[カウント]** 数が増加します。これは、その検出結果が、インスタンスの SSH ポートがそのタイプのアクティビティに対して適切に保護されていないことを示す単一のセキュリティの問題を示しているためです。ただし、GuardDuty で環境の新しいインスタンスをターゲットとする SSH アクセスのアクティビティが検出されると、一意の検出結果 ID を持つ新しい検出結果が作成され、新しいリソースに関連するセキュリティの問題があることがアラートで示されます。

検出結果が集計されると、そのアクティビティの最新のオカレンスの情報で更新されます。つまり、上記の例ではインスタンスが新しいアクターからのブルートフォースの試みのターゲットになった場合、検出結果の詳細は最も新しいソースのリモート IP を反映して更新され、古い情報は置き換えられることになります。個々のアクティビティの試行についての完全な詳細は、CloudTrail ログまたは VPC フローログに引き続き記録されます。

アラート GuardDuty で既存の検出結果を集約するのではなく、新しい検出結果を生成するようにトリガーする条件は、検出結果タイプによって異なります。各検出結果タイプの集約の条件は、ご利用のアカウントの個別のセキュリティの問題の概要を提供するために、当社のセキュリティエンジニアによって決定されます。

GuardDuty がアカウント内で攻撃シーケンス検出タイプを生成した場合、GuardDuty がアカウント内の同一シーケンス内で類似のシグナルを特定したときのみ、検出結果が集計されます。それ以外の場合、GuardDuty は別の攻撃シーケンスを生成します。