Actions d'atténuation
Vous pouvez utiliser AWS IoT Device Defender pour prendre des mesures afin d'atténuer les problèmes détectés lors d'un résultat d'audit ou d'une alarme Detect
Note
Aucune mesure d'atténuation ne sera prise à la suite de résultats d'audit supprimés. Pour plus d'informations sur les suppressions des résultats d'audit, consultez Suppressions de résultat d'audit.
Actions d'atténuation d'audit
AWS IoT Device Defender fournit des actions prédéfinies pour les différents contrôles d'audit. Vous configurez ces actions pour votre Compte AWS, pour ensuite les appliquer à un ensemble de résultats. Ces résultats peuvent être :
-
Tous les résultats d'un audit. Cette option est disponible dans la console AWS IoT console et à l'aide de l’interface de ligne de commande AWS CLI.
-
Une liste des résultats individuels. Cette option est uniquement disponible à l'aide de l'interface de ligne de commande AWS CLI.
-
Un ensemble filtré de résultats à partir d'un audit.
Le tableau suivant répertorie les types de contrôles d'audit et les actions d'atténuation pris en charge pour chacun :
Contrôle d'audit | Actions d'atténuation prises en charge |
---|---|
REVOKED_CA_CERT_CHECK | PUBLISH_FINDING_TO_SNS, UPDATE_CA_CERTIFICATE |
INTERMEDIATE_CA_REVOKED_FOR_ACTIVE_DEVICE_CERTIFICATES_CHECK | PUBLISH_FINDING_TO_SNS, UPDATE_DEVICE_CERTIFICATE, ADD_THINGS_TO_THING_GROUP |
DEVICE_CERTIFICATE_SHARED_CHECK | PUBLISH_FINDING_TO_SNS, UPDATE_DEVICE_CERTIFICATE, ADD_THINGS_TO_THING_GROUP |
UNAUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK | PUBLISH_FINDING_TO_SNS |
AUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK | PUBLISH_FINDING_TO_SNS |
IOT_POLICY_OVERLY_PERMISSIVE_CHECK | PUBLISH_FINDING_TO_SNS, REPLACE_DEFAULT_POLICY_VERSION |
IOT_POLICY_POTENTIAL_MISCONFIGURATION_CHECK | PUBLISH_FINDING_TO_SNS, REPLACE_DEFAULT_POLICY_VERSION |
CA_CERTIFICATE_EXPIRING_CHECK | PUBLISH_FINDING_TO_SNS, UPDATE_CA_CERTIFICATE |
CONFLICTING_CLIENT_IDS_CHECK | PUBLISH_FINDING_TO_SNS |
DEVICE_CERTIFICATE_EXPIRING_CHECK | PUBLISH_FINDING_TO_SNS, UPDATE_DEVICE_CERTIFICATE, ADD_THINGS_TO_THING_GROUP |
CERTIFICAT_APPAREIL_RÉVOQUÉ_STILL_ACTIVE_CHECK | PUBLISH_FINDING_TO_SNS, UPDATE_DEVICE_CERTIFICATE, ADD_THINGS_TO_THING_GROUP |
LOGGING_DISABLED_CHECK | PUBLISH_FINDING_TO_SNS, ENABLE_IOT_LOGGING |
DEVICE_CERTIFICATE_KEY_QUALITY_CHECK | PUBLISH_FINDING_TO_SNS, UPDATE_DEVICE_CERTIFICATE, ADD_THINGS_TO_THING_GROUP |
CA_CERTIFICATE_KEY_QUALITY_CHECK | PUBLISH_FINDING_TO_SNS, UPDATE_CA_CERTIFICATE |
IOT_ROLE_ALIAS_OVERLY_PERMISSIVE_CHECK | PUBLISH_FINDING_TO_SNS |
IOT_ROLE_ALIAS_ALLOWS_ACCESS_TO_UNUSED_SERVICES_CHECK | PUBLISH_FINDING_TO_SNS |
Toutes les vérifications d'audit prennent en charge la publication des résultats de l'audit sur Amazon SNS afin que vous puissiez prendre des mesures personnalisées en réponse à la notification. Chaque type de contrôle d'audit peut prendre en charge d'autres actions d'atténuation :
- REVOKED_CA_CERT_CHECK
-
-
Modifiez l'état du certificat pour le marquer comme inactif dans AWS IoT.
-
- DEVICE_CERTIFICATE_SHARED_CHECK
-
-
Modifiez l'état du certificat de l'appareil pour le marquer comme inactif dans AWS IoT.
-
Ajoutez les appareils qui utilisent ce certificat à un groupe d’objets.
-
- UNAUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK
-
-
Aucune action supplémentaire prise en charge.
-
- AUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK
-
-
Aucune action supplémentaire prise en charge.
-
- IOT_POLICY_OVERLY_PERMISSIVE_CHECK
-
-
Ajoutez une version de stratégie AWS IoT pour limiter les autorisations.
-
- IOT_POLICY_POTENTIAL_MISCONFIGURATION_CHECK
-
-
Identifiez les erreurs de configuration potentielles dans les politiques AWS IoT .
-
- CA_CERT_APPROACHING_EXPIRATION_CHECK
-
-
Modifiez l'état du certificat pour le marquer comme inactif dans AWS IoT.
-
- CONFLICTING_CLIENT_IDS_CHECK
-
-
Aucune action supplémentaire prise en charge.
-
- DEVICE_CERT_APPROACHING_EXPIRATION_CHECK
-
-
Modifiez l'état du certificat de l'appareil pour le marquer comme inactif dans AWS IoT.
-
Ajoutez les appareils qui utilisent ce certificat à un groupe d’objets.
-
- DEVICE_CERTIFICATE_KEY_QUALITY_CHECK
-
-
Modifiez l'état du certificat de l'appareil pour le marquer comme inactif dans AWS IoT.
-
Ajoutez les appareils qui utilisent ce certificat à un groupe d’objets.
-
- CA_CERTIFICATE_KEY_QUALITY_CHECK
-
-
Modifiez l'état du certificat pour le marquer comme inactif dans AWS IoT.
-
- REVOKED_DEVICE_CERT_CHECK
-
-
Modifiez l'état du certificat de l'appareil pour le marquer comme inactif dans AWS IoT.
-
Ajoutez les appareils qui utilisent ce certificat à un groupe d’objets.
-
- LOGGING_DISABLED_CHECK
-
-
Activez la journalisation
-
AWS IoT Device Defender prend en charge les types d’actions d’atténuation suivants sur les résultats d’audit :
Type d'action |
Remarques |
---|---|
ADD_THINGS_TO_THING_GROUP | Vous spécifiez le groupe auquel vous souhaitez ajouter les appareils. Vous pouvez également spécifier si l'adhésion à un ou plusieurs groupes dynamiques doit être remplacée si cela risque de dépasser le nombre maximum de groupes auxquels l'objet peut appartenir. |
ENABLE_IOT_LOGGING | Vous spécifiez le niveau de journalisation et le rôle avec les autorisations pour la journalisation. Vous ne pouvez pas spécifier un niveau de journalisation DISABLED . |
PUBLISH_FINDING_TO_SNS | Vous spécifiez la rubrique dans laquelle le résultat doit être publiée. |
REPLACE_DEFAULT_POLICY_VERSION | Vous spécifiez le nom du modèle. Remplace la version de politique avec une politique vide ou par défaut. Seule une valeur BLANK_POLICY est actuellement prise en charge. |
UPDATE_CA_CERTIFICATE | Vous spécifiez le nouvel état pour le certificat CA. Seule une valeur DEACTIVATE est actuellement prise en charge. |
UPDATE_DEVICE_CERTIFICATE | Vous spécifiez le nouvel état pour le certificat d'appareil. Seule une valeur DEACTIVATE est actuellement prise en charge. |
En configurant des actions standard lorsque des problèmes sont trouvés lors d'un audit, vous pouvez les résoudre de manière cohérente. L’utilisation de ces actions d'atténuation définies vous aide également à résoudre les problèmes plus rapidement et avec des risques réduits d'erreur humaine.
Important
L’application d’actions d'atténuation qui modifient des certificats, ajoutent des objets à un nouveau groupe d’objets ou remplacent la stratégie peut avoir un impact sur vos appareils et applications. Par exemple, les appareils peuvent s’avérer incapalbes de se connecter. Avant de les appliquer, prenez en compte les implications des actions d’atténuation. Vous devrez peut-être effectuer d'autres actions pour corriger les problèmes avant que vos appareils et applications fonctionnent normalement. Par exemple, il se peut que vous deviez fournir des certificats de l'appareil mis à jour. Les actions d’atténuation peuvent vous aider à limiter rapidement vos risques, mais vous devez tout de même prendre des mesures correctives pour résoudre les problèmes sous-jacents.
Certaines actions, comme la réactivation d'un certificat d'appareil, peuvent uniquement être effectuées manuellement. AWS IoT Device Defender ne fournit pas un mécanisme pour restaurer automatiquement les actions d'atténuation qui ont été appliqués.
Détecter les actions d'atténuation
AWS IoT Device Defender prend en charge les types d’actions d’atténuation suivants sur les alarmes de détection :
Type d'action |
Remarques |
---|---|
ADD_THINGS_TO_THING_GROUP | Vous spécifiez le groupe auquel vous souhaitez ajouter les appareils. Vous pouvez également spécifier si l'adhésion à un ou plusieurs groupes dynamiques doit être remplacée si cela risque de dépasser le nombre maximum de groupes auxquels l'objet peut appartenir. |
Comment définir et gérer des actions d’atténuation
Vous pouvez utiliser la console AWS IoT ou l'interface de ligne de commande AWS CLI pour définir et gérer des actions d’atténuation pour votre Compte AWS.
Créez des actions d’atténuation
Chaque action d'atténuation que vous définissez est une combinaison d'un type d'action prédéfinie et des paramètres spécifiques à votre compte.
Utiliser la console AWS IoT pour créer des actions d'atténuation
-
Ouvrez la page Actions d'atténuation dans la AWS IoT console
. -
Dans la page Actions d'atténuation, choisissez Créer.
-
Dans la page Créer une nouvelle action d’atténuation, dans Nom de l’action, saisissez un nom unique pour votre action d'atténuation.
-
Dans Action Type (Type d’action), spécifiez le type d'action que vous souhaitez définir.
-
Dans Autorisations, choisissez le rôle IAM sous les autorisations duquel l'action est appliquée.
-
Chaque type d'action demande un ensemble différent de paramètres. Saisissez les paramètres pour l'action. Par exemple, si vous choisissez le type d’action Add things to tring group(Ajouter des objets au groupe d’objets), choisissez le groupe de destination et sélectionnez ou désélectionnez Override dynamic groups (Remplacer groupes dynamiques).
-
Choisissez Create (Créer) pour enregistrer votre action d'atténuation pour votre compte AWS.
Utiliser l’interface de ligne de commance AWS CLI pour créer des actions d'atténuation
-
Utilisez la commande CreateMitigationAction pour créer votre action d'atténuation. Le nom unique que vous attribuez à l'action est utilisé lorsque vous appliquez cette action aux résultats d’audit. Choisissez un nom descriptif.
Utiliser la console AWS IoT pour afficher et modifier les actions d'atténuation
-
Ouvrez la page Actions d'atténuation dans la AWS IoT console
. La page Actions d'atténuation affiche une liste de toutes les actions d'atténuation qui sont définies pour votre Compte AWS.
-
Choisissez le lien du nom de l'action d'atténuation que vous voulez modifier.
-
Choisissez Modifier et apportez vos modifications à l’action d’atténuation. Vous ne pouvez pas modifier le nom car le nom de l'action d'atténuation est utilisé pour l'identifier.
-
Choisissez Update pour enregistrer les modifications apportées à l'action d'atténuation pour votre Compte AWS.
Pour utiliser l'interface de ligne de commande AWS CLI pour répertorier une action d'atténuation
-
Utilisez la commande ListMitigationAction pour répertorier vos actions d'atténuation. Si vous souhaitez modifier ou supprimer une action d'atténuation, notez le nom.
Pour utiliser l'AWS CLI pour mettre à jour une action d'atténuation
-
Utilisez la commande UpdateMitigationAction pour modifier votre action d'atténuation.
Pour utiliser la console AWS IoT pour supprimer une action d'atténuation
-
Ouvrez la page Actions d'atténuation dans la AWS IoT console
. La page Actions d'atténuation affiche toutes les actions d’atténuation qui sont définies pour votre Compte AWS.
-
Choisissez l'action d'atténuation que vous souhaitez supprimer, puis choisissez Supprimer.
-
Dans la fenêtre Êtes-vous sûr de vouloir supprimer, choisissez Supprimer.
Utiliser l’interface de ligne de commande AWS CLI pour supprimer des actions d'atténuation
-
Utilisez la commande UpdateMitigationAction pour modifier votre action d'atténuation.
Utiliser la console AWS IoT pour afficher les détails d'une action d'atténuation
-
Ouvrez la page Actions d'atténuation dans la AWS IoT console
. La page Actions d'atténuation affiche toutes les actions d’atténuation qui sont définies pour votre Compte AWS.
-
Choisissez le lien du nom de l'action d'atténuation que vous voulez visualiser.
Utiliser l’interface de ligne de commande AWS CLI pour afficher les détails de l'action d'atténuation
-
Utilisez la commande DescribeMitigationAction pour afficher les détails de votre action d'atténuation.
Appliquer des actions d’atténuation
Une fois que vous avez défini un ensemble d’actions d'atténuation, vous pouvez les appliquer aux résultats d'un audit. Lorsque vous appliquez des actions, vous lancez une tâche d’actions d'atténuation d’audit. Cette tâche peut prendre un certain temps, en fonction de l'ensemble de résultats et des actions que vous leur appliquez. Par exemple, si vous avez un grand groupe d'appareils dont les certificats ont expiré, cela peut prendre un certain temps de désactiver l'ensemble de ces certificats ou de déplacer ces appareils vers un groupe de quarantaine. D'autres actions, telles que l'activation de la journalisation, peuvent se réaliser rapidement.
Vous pouvez afficher la liste des exécutions d'actions et annuler une exécution qui n'est pas encore terminée. Les actions déjà effectuée dans le cadre de l'exécution de l'action annulée ne sont pas restaurées. Si vous appliquez plusieurs actions à un ensemble de résultats et l'une de ces actions a échoué, les actions suivantes sont ignorées pour ce résultat (mais sont néanmoins appliquées à d'autres résultats). L’état de la tâche pour le résultat est FAILED. Le taskStatus
est défini comme ayant échoué, si une ou plusieurs des actions ont échoué lors de l’application aux résultats. Les actions sont appliquées dans l'ordre dans lequel elles sont spécifiées.
Chaque action d'exécution applique un ensemble d'actions à une cible. Cette cible peut être une liste de résultats ou tous les résultats d'un audit.
Le schéma suivant montre comment vous pouvez définir une tâche d'atténuation d'audit qui accepte tous les résultats d'un audit et leur applique un ensemble d'actions. Une seule exécution applique une action à un résultat. La tâche d’actions d’atténuation d’audit génère un résumé d’exécution.
Le schéma suivant montre comment vous pouvez définir une tâche d'atténuation d'audit qui accepte une liste de résultats individuels à partir d'un ou plusieurs audits et applique un ensemble d'actions à ces résultats. Une seule exécution applique une action à un résultat. La tâche d’actions d’atténuation d’audit génère un résumé d’exécution.
Vous pouvez utiliser la console AWS IoT console ou l’interface de ligne de commande AWS CLI pour appliquer des actions d'atténuation.
Utiliser la console AWS IoT pour appliquer des actions d'atténuation en lançant une action d'exécution
-
Ouvrez la page des résultats de l'audit dans la AWS IoT console
. -
Choisissez le nom pour l'audit auquel vous souhaitez appliquer des actions.
-
Choisissez Start Mitigation Actions (Lancer des actions d’atténuation). Ce bouton n'est pas disponible si toutes vos vérifications sont conformes.
-
Dans Démarrer une nouvelle action d’atténuation, le nom de la tâche est par défaut le nom de l’ID d’audit, mais vous pouvez le changer par quelque chose de plus descriptif.
-
Pour chaque type de contrôle qui présente un ou plusieurs résultats non conformes dans l'audit, vous pouvez choisir une ou plusieurs actions à appliquer. Seules les actions qui sont valables pour le type de vérification sont affichées.
Note
Si vous n'avez pas configuré d'actions pour votre Compte AWS, la liste des actions applicables est vide. Vous pouvez choisir le lien Créer une action d'atténuation pour créer une ou plusieurs actions d'atténuation.
-
Lorsque vous avez indiqué toutes les actions que vous souhaitez appliquer, choisissez Démarrer la tâche.
Utiliser l’interface de ligne de commande AWS CLI pour appliquer des actions d'atténuation en lançant une exécution d’actions d'atténuation d'audit
-
Si vous souhaitez appliquer des actions à tous les résultats pour l’audit, utilisez la commande ListAuditTasks pour trouver l'ID de tâche.
-
Si vous souhaitez appliquer uniquement des actions à des résultats sélectionnés, utilisez la commande ListAuditFindings pour obtenir les ID des résultats.
-
Utilisez la commande ListMitigationActions et notez les noms des actions d'atténuation que vous souhaitez appliquer.
-
Utilisez la commande StartAuditMitigationStask pour appliquer des actions à la cible. Prenez note de l'ID de la tâche. Vous pouvez utiliser l'ID pour vérifier l'état de l'exécution de l’action, consulter les détails ou l’annuler.
Utiliser la console AWS IoT pour voir vos exécutions d'actions
-
Ouvrez la page Actions d'atténuation dans la AWS IoT console
. Une liste des tâches d'action indique le moment où chacune a été lancée et l’état actuel.
-
Choisissez le lien Name (Nom) pour voir les détails de la tâche. Les détails comprennent toutes les actions qui sont appliquées par la tâche, leur cible et leur état.
Vous pouvez utiliser les filtres Show executions for (Afficher les exécutions pour) pour vous concentrer sur les types d'actions ou les états d'action.
-
Pour afficher les détails de la tâche, dans Executions (Exécutions), choisissez Afficher.
Utiliser l’interface de ligne de commande AWS CLI pour répertorier vos tâches lancées
-
Utilisez ListAuditMitigationStasks pour afficher les tâches relatives aux actions d'atténuation de vos audits. Vous pouvez fournir des filtres pour affiner les résultats. Si vous souhaitez afficher les détails de la tâche, notez l'ID de la tâche.
-
Utilisez ListAuditMitigationActionsExecutions pour afficher les détails d'exécution d’une tâche d’actions d'atténuation d'audit particulière.
-
Utilisez DescribeAuditMitigationActionsTask pour afficher des détails sur la tâche, tels que les paramètres spécifiés lorsqu'elle a été lancée.
Utiliser l'interface de ligne de commandeAWS CLI pour annuler une tâche d’actions d’atténuation d’audit
-
Utilisez la commande ListAuditMitigationActionsTasks pour trouver l'ID de tâche pour la tâche dont vous voulez annuler l’exécution. Vous pouvez fournir des filtres pour affiner les résultats.
-
Utilisez la commande ListDetectMitigationActionsExecutions, en utilisant l'ID de tâche, pour annuler votre tâche d’actions d'atténuation d'audit. Vous ne pouvez pas annuler des tâches qui ont été terminées. Lorsque vous annulez une tâche, les actions restantes ne sont pas appliquées, mais les actions d’atténuation déjà appliquées ne sont pas restaurées.
Autorisations
Pour chaque action d'atténuation que vous définissez, vous devez fournir le rôle utilisé pour appliquer cette action.
Type d'action | Modèle de stratégie d'autorisations |
---|---|
UPDATE_DEVICE_CERTIFICATE |
|
UPDATE_CA_CERTIFICATE |
|
ADD_THINGS_TO_THING_GROUP |
|
REPLACE_DEFAULT_POLICY_VERSION |
|
ENABLE_IOT_LOGGING |
|
PUBLISH_FINDING_TO_SNS |
|
Pour tous les types d'action d'atténuation, utilisez le modèle de stratégie d'approbation suivant :
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Service": "iot.amazonaws.com"
},
"Action": "sts:AssumeRole",
"Condition": {
"ArnLike": {
"aws:SourceArn": "arn:aws:iot:*:111122223333
::*"
},
"StringEquals": {
"aws:SourceAccount": "111122223333
:"
}
}
}
]
}