我建立了一個 Amazon EventBridge 規則來回應 Amazon GuardDuty 的服務調查結果類型,但回應內容是 JSON 格式。我希望收到包含自訂 Amazon Simple Notification Service (Amazon SNS) 通知的電子郵件回覆。
解決方法
先決條件:建立 Amazon SNS 主題。Amazon SNS 主題必須與您的 GuardDuty 服務位於相同 AWS 區域。
若要設定 EventBridge 規則,讓 GuardDuty 傳送自訂 SNS 通知,請完成以下步驟:
-
開啟 EventBridge console (EventBridge 主控台)。
-
在 Buses (匯流排) 區段下,選擇 Rules (規則)。
-
選擇 Create rule (建立規則),然後完成下列步驟來設定規則:
輸入名稱和描述。
在 Event bus (事件匯流排),選擇 default (預設)。
在 Rule type (規則類型) 中,選擇 Rule with an event pattern (具有事件模式的規則)。
-
選擇 Next (下一步)。
-
在 Event pattern (事件模式) 下,完成以下步驟:
在 Event source (事件來源) 中,選擇 AWS services (AWS 服務)。
在 AWS service (AWS 服務) 中,選擇 GuardDuty。
在 Event type (事件類型) 中,選擇 GuardDuty Finding (GuardDuty 調查結果)。
-
在 Event pattern (事件模式) 預覽區段中,選擇 Edit pattern (編輯模式)。
-
在 JSON 文字方塊中輸入以下程式碼:
{
"source": ["aws.guardduty"],
"detail": {
"type": ["Backdoor:EC2/C&CActivity.B!DNS"]
}
}
**注意:**將 Backdoor:EC2/C&CActivity.B!DNS 替換為您的調查結果類型。若要測試 Backdoor:EC2/C&CActivity.B!DNS 調查結果類型,請從 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體向 guarddutyc2activityb.com 測試網域發出 DNS 請求。您可以執行 dig 命令 (適用於 Linux) 或 nslookup 命令 (適用於 Windows)。該調查結果會在幾分鐘內產生。
-
選擇 Next (下一步)。
-
在 Target types (目標類型) 中,選擇 AWS service (AWS 服務)。
-
在 Select a target (選取目標) 中,選擇 SNS topic (SNS 主題)。
-
在 Topic (主題),選取您的主題。
-
(選用) 設定輸入轉換器。
在 Target input transformer (目標輸入轉換器) 區段的 Input path (輸入路徑) 文字方塊中,輸入以下 JSON 路徑:
{
"severity": "$.detail.severity",
"Finding_ID": "$.detail.id",
"instanceId": "$.detail.resource.instanceDetails.instanceId",
"port": "$.detail.service.action.networkConnectionAction.localPortDetails.port",
"eventFirstSeen": "$.detail.service.eventFirstSeen",
"eventLastSeen": "$.detail.service.eventLastSeen",
"count": "$.detail.service.count",
"Finding_Type": "$.detail.type",
"region": "$.region",
"Finding_description": "$.detail.description"
}
在 Template (範本) 的文字方塊中,輸入以下字串範本:
"You have a new GuardDuty alert. View finding in console - https://console.aws.amazon.com/guardduty/home?REGION=#/findings?search=id%3DFINDING_ID "
**注意:**在範本中,保留 FINDING_ID 後方的空格,以避免右引號中斷 SNS 通知中的網址。輸入路徑會使用來自 GuardDuty 調查結果的特定屬性。如需可用篩選器的詳細資訊,請參閱 GuardDuty 中的屬性篩選器。
選擇 Next (下一步)。
(選用) 將標籤新增至規則中,然後選擇 Next (下一步)。
查看規則詳細資訊,然後選擇 Create rule (建立規則)。
當 GuardDuty 產生調查結果類型時,EventBridge 會在 5 分鐘內將 SNS 通知傳送到您指定的端點。若要為所有 GuardDuty 調查結果結果類型設定 SNS 通知,請參閱使用 Amazon EventBridge 處理 GuardDuty 調查結果。
相關資訊
建立對 Amazon EventBridge 中事件反應的規則
教學課程: 使用輸入轉換器轉換 EventBridge 中的事件
如何對未傳遞 GuardDuty 自訂 Amazon SNS 通知的問題進行疑難排解?