

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 在專用帳戶中測試 GuardDuty 調查結果
<a name="guardduty_findings-scripts"></a>

使用本文件執行測試指令碼，以針對將部署在您的 中的測試資源產生 GuardDuty 調查結果 AWS 帳戶。當您想要了解和了解特定 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 許可。使用專用帳戶可確保具有明確帳戶界限的許可適當範圍。
+ 測試人員指令碼會產生超過 100 個具有不同 AWS 資源組合的 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 測試器基礎設施，您偶爾可能會收到 PenTest 執行個體的問題[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** – 一種開放原始碼工具，可讓您在命令列 Shell 中使用命令 AWS 服務 來與 互動。如需詳細資訊，請參閱《 *AWS Command Line Interface 使用者指南*[》中的開始使用 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 《 使用者指南*》中的[安裝 的 Session Manager 外掛程式 AWS CLI](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
  ```
+ 在 中訂閱 [Kali Linux](https://aws.amazon.com/marketplace/pp/prodview-fznsw3f7mq7to) 映像*AWS Marketplace*。

## 步驟 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) 開發人員指南*》中的[引導](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) 開發人員指南*》中的[環境](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 執行個體類型指南*》中的[可用大小](https://docs.aws.amazon.com/ec2/latest/instancetypes/gp.html#gp_sizes)。

## 步驟 3 - 執行測試人員指令碼
<a name="run-gdu-tester-script"></a>

這是一個兩步驟的程序，首先需要使用測試驅動程式啟動工作階段，然後執行指令碼以產生具有特定資源組合的 GuardDuty 調查結果。

### A 部分 - 使用測試驅動程式開始工作階段
<a name="tester-script-start-session-guardduty"></a>

1. 部署資源之後，請將區域碼儲存至目前終端機工作階段中的變數。使用以下命令，並將 *us-east-1* 取代為您部署資源的區域碼：

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

1. 測試人員指令碼只能透過 AWS Systems Manager (SSM) 使用。若要在測試器主機執行個體上啟動互動式 shell，請查詢主機 **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>

測試人員指令碼是以 Python 為基礎的程式，可動態建置 bash 指令碼，以根據您的輸入產生問題清單。您可以靈活地根據一或多個 AWS 資源類型、GuardDuty 保護計畫、 [威脅目的](guardduty_finding-format.md#guardduty_threat_purposes)（策略）[基礎資料來源](guardduty_data-sources.md)、 或 產生問題清單[GuardDuty 問題清單測試人員指令碼可以產生](#gdu-findings-tester-generates)。

使用下列命令範例做為參考，並執行一或多個命令來產生您要探索的問題清單：

```
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` tag key：value 對。 ****

------
#### [ API ]
+ 執行 [ListFindings](https://docs.aws.amazon.com/guardduty/latest/APIReference/API_ListFindings.html) 以檢視特定偵測器 ID 的問題清單。您可以指定參數來篩選問題清單。

  若要尋找`detectorId`您帳戶和目前區域的 ，請參閱 https：//[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 命令參考*》中的[清單調查結果](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` – 將 AWS CDK CLI 更新為與所需雲端組件版本相容的版本，或更新為最新的可用版本。如需詳細資訊，請參閱 [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 命令參考*》中的 [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)。