Comment configurer une règle CloudWatch Events pour que GuardDuty envoie des notifications SNS personnalisées si des types d'événements de service AWS spécifiques se déclenchent ?

Dernière mise à jour : 2019-05-22

J'ai créé une règle Amazon CloudWatch Events pour déclencher des types d'événements de service pour Amazon GuardDuty, mais les réponses sont au format JSON. Que puis-je faire pour recevoir une notification par e-mail avec une réponse personnalisée ?

Brève description

Utilisez un modèle d'événement personnalisé avec la règle CloudWatch Events pour établir une correspondance avec un type de résultat spécifique. Ensuite, envoyez la réponse à une rubrique Amazon SNS (Amazon Simple Notification Service).

Résolution

Cet exemple utilise le type d'événement Amazon GuardDuty UnauthorizedAccess: EC2/TorIPCaller.

Remarque : vous pouvez remplacer le nom du service et le type d'événement pour votre service AWS spécifique.

1.    Si vous n'avez pas déjà créé de rubrique Amazon SNS, rendez-vous sur la page Mise en route d'Amazon SNS et suivez les instructions affichées.

Remarque : la rubrique Amazon SNS doit se trouver dans la même région que votre service AWS GuardDuty.

2.    Ouvrez la console CloudWatch.

3.    Dans le volet de navigation, sélectionnez Rules (Règles), puis Create rule (Créer une règle).

4.    Dans le menu Service Name (Nom du service), choisissez GuardDuty.

5.    Dans le menu Event Type (Type d'événement), choisissez GuardDuty Finding (Résultat GuardDuty).

6.    Dans Event Pattern Preview (Aperçu du modèle d'événement), choisissez Edit (Modifier).

7.    Copiez le code suivant et collez-le dans Event Pattern Preview (Aperçu du modèle d'événement), puis choisissez Save (Enregistrer).

{
  "source": [
    "aws.guardduty"
  ],
  "detail": {
    "type": [
      "UnauthorizedAccess:EC2/TorIPCaller"
     ]
  }
}

8.    Dans Targets (Cibles), sélectionnez Add target (Ajouter une cible).

9.    Dans Select Target (Sélectionner la cible), choisissez SNS topic (Rubrique SNS).

10.    Dans Select Topic (Sélectionner une rubrique), choisissez votre rubrique SNS.

11.    Développez Configurer l'entrée, puis sélectionnez Transformateur d'entrée.

12.    Copiez le code suivant. Collez-le dans Input Path (Chemin d'entrée).

{
    "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"
}

13.    Copiez le code suivant. Collez-le dans Input Template (Modèle d'entrée).

"You have a severity <severity> GuardDuty finding type <Finding_Type> for the EC2 instance <instanceId> in the region <region> as the <Finding_description> on the port <port>. The first attempt was on <eventFirstSeen> and the most recent attempt on <eventLastSeen> . The total occurrence is <count>. For more details open the GuardDuty console at https://console.aws.amazon.com/guardduty/home?region=<region>#/findings?search=id%3D<Finding_ID>"

14.    Choisissez Configure details (Définir les informations).

15.    Dans Configure rule details (Définir les informations de la règle), saisissez le nom et la description de la règle, puis choisissez Create rule (Créer une règle).

16.    Si un type d'événement est déclenché, vous recevez une notification par e-mail SNS avec les champs personnalisés renseignés de l'étape 13, comme suit :

"You have a severity 5 GuardDuty finding type UnauthorizedAccess:EC2/TorIPCaller for the EC2 instance EXAMPLEID in the region EXAMPLEREGION as the IP address 192.0.2.0/2 on the Tor Anonymizing Proxy network is communicating with EC2 instance EXAMPLEID. on the port 80. The first attempt was on 2019-04-09T00:01:14.681Z and the most recent attempt on 2019-05-20T06:04:12.593Z . The total occurrence is 5. For more details open the GuardDuty console at https://console.aws.amazon.com/guardduty/home?EXAMPLEREGION"