Corriger les erreurs Security Command Center

Cette page fournit une liste de guides de référence et de techniques permettant de corriger les erreurs SCC.

Avant de commencer

Vous devez disposer des rôles IAM (Identity and Access Management) appropriés pour afficher ou modifier les résultats, et pour accéder aux ressources Google Cloud ou les modifier. Si vous rencontrez des erreurs d'autorisation lorsque vous accédez à Security Command Center dans la console Google Cloud, demandez de l'aide à votre administrateur. Pour en savoir plus sur les rôles, consultez la page Contrôle des accès. Pour résoudre les erreurs de ressources, consultez la documentation des produits concernés.

Examiner les résultats dans la console Google Cloud

Les erreurs SCC sont des erreurs de configuration qui empêchent Security Command Center de fonctionner comme prévu. La source Security Command Center génère ces résultats.

Tant que Security Command Center est configuré pour votre organisation ou votre projet, il génère des résultats dès qu'il détecte des erreurs. Vous pouvez afficher les erreurs SCC dans Google Cloud Console.

Suivez la procédure ci-dessous pour examiner les résultats dans la console Google Cloud:

Console Google Cloud

  1. Dans la console Google Cloud, accédez à la page Résultats de Security Command Center.

    Accéder

  2. Sélectionnez votre projet ou votre organisation Google Cloud.
  3. Dans la section Filtres rapides, dans la sous-section Nom à afficher de la source, sélectionnez Security Command Center. Les résultats de la requête de résultats sont mis à jour pour n'afficher que les résultats de cette source.
  4. Pour afficher les détails d'un résultat spécifique, cliquez sur son nom dans la colonne Catégorie. Le panneau d'informations du résultat s'ouvre et affiche l'onglet Résumé.
  5. Dans l'onglet Récapitulatif, examinez les détails de l'anomalie, y compris les informations sur ce qui a été détecté, la ressource concernée et, le cas échéant, les mesures que vous pouvez prendre pour corriger l'anomalie.
  6. Facultatif: Pour afficher la définition JSON complète du résultat, cliquez sur l'onglet JSON.

Console Security Operations

  1. Dans la console Security Operations, accédez à la page Résultats.
    https://CUSTOMER_SUBDOMAIN.backstory.chronicle.security/posture/findings
    

    Remplacez CUSTOMER_SUBDOMAIN par votre identifiant client.

  2. Dans la section Agrégations, cliquez pour développer la sous-section Nom à afficher de la source.
  3. Sélectionnez Security Command Center (Security Command Center). Les résultats de la requête de résultats sont mis à jour pour n'afficher que les résultats de cette source.
  4. Pour afficher les détails d'un résultat spécifique, cliquez sur son nom dans la colonne Catégorie. Le panneau d'informations du résultat s'ouvre et affiche l'onglet Résumé.
  5. Dans l'onglet Récapitulatif, examinez les détails de l'anomalie, y compris les informations sur ce qui a été détecté, la ressource concernée et, le cas échéant, les mesures que vous pouvez prendre pour corriger l'anomalie.
  6. Facultatif: Pour afficher la définition JSON complète du résultat, cliquez sur l'onglet JSON.

Désactivation des erreurs SCC après correction

Une fois que vous avez corrigé un résultat SCC error, Security Command Center définit automatiquement son état sur INACTIVE lors de la prochaine analyse. Le temps nécessaire à Security Command Center pour définir l'état d'un résultat corrigé sur INACTIVE dépend du moment où vous corrigez le résultat et de la planification de l'analyse qui détecte l'erreur.

Pour en savoir plus sur la fréquence d'analyse d'une SCC error, consultez le résumé de la recherche dans la section Détecteurs d'erreurs.

Résoudre les erreurs SCC

Cette section fournit des instructions de résolution pour toutes les erreurs SCC.

API disabled

Nom de la catégorie dans l'API : API_DISABLED

L'un des services suivants est désactivé pour le projet :

Le service désactivé ne peut pas générer de résultats.

Pour corriger ce résultat, procédez comme suit :

  1. Examinez le résultat pour déterminer quelle API est désactivée.
  2. Activez l'API :

En savoir plus sur les éléments et les paramètres d'analyse compatibles de ce type de résultat.

APS no resource value configs match any resources

Nom de la catégorie dans l'API : APS_NO_RESOURCE_VALUE_CONFIGS_MATCH_ANY_RESOURCES

Les configurations de valeurs de ressources sont définies pour les simulations de chemins d'attaque, mais elles ne correspondent à aucune instance de ressource de votre environnement. Les simulations utilisent plutôt l'ensemble de ressources à forte valeur par défaut.

Les configurations de valeur de ressource peuvent ne correspondre à aucune ressource pour les raisons suivantes, qui sont identifiées dans la description de la découverte dans la console Google Cloud:

  • Aucune des configurations de valeurs de ressources ne correspond à une instance de ressource.
  • Une ou plusieurs configurations de valeurs de ressources spécifiant NONE remplacent toutes les autres configurations valides.
  • Toutes les configurations de valeurs de ressources définies spécifient une valeur de NONE.

Pour corriger ce résultat, procédez comme suit :

  1. Accédez à la page Simulation du chemin d'attaque dans les Paramètres de Security Command Center:

    Accéder aux paramètres

  2. Sélectionnez votre organisation. La page Simulation du chemin d'attaque s'ouvre et affiche les configurations existantes.

  3. Dans la colonne Valeur de la ressource de la liste Configurations de la valeur de la ressource, recherchez les valeurs None.

  4. Pour toute configuration spécifiant None, procédez comme suit:

    1. Cliquez sur le nom d'une configuration de valeur de ressource pour afficher les spécifications de configuration.
    2. Si nécessaire, modifiez les spécifications des attributs de ressources pour réduire le nombre d'instances de ressources correspondant à la configuration.
  5. Si le problème n'est pas causé par une spécification None trop large, procédez comme suit:

    1. Cliquez sur le nom de chaque configuration qui spécifie une valeur de HIGH, MEDIUM ou LOW pour afficher les spécifications des attributs de ressource.
    2. Examinez la configuration et, si nécessaire, modifiez-la pour corriger la portée, le type de ressource, la balise ou la spécification du libellé afin qu'ils correspondent aux ressources prévues.
  6. Si nécessaire, créez une configuration des valeurs de ressource.

Vos modifications sont appliquées à la prochaine simulation de vecteur d'attaque.

En savoir plus sur les éléments et les paramètres d'analyse compatibles de ce type de résultat.

APS resource value assignment limit exceeded

Nom de la catégorie dans l'API : APS_RESOURCE_VALUE_ASSIGNMENT_LIMIT_EXCEEDED

Lors de la dernière simulation de chemin d'attaque, le nombre d'instances de ressources à forte valeur, identifié par les configurations de valeurs de ressources, a dépassé la limite de 1 000 instances de ressources dans un ensemble de ressources à forte valeur. Par conséquent, Security Command Center a exclu le nombre excédentaire d'instances de l'ensemble de ressources à forte valeur.

Pour corriger ce résultat, vous pouvez essayer les actions suivantes:

  • Utilisez des tags ou des libellés pour réduire le nombre de correspondances pour un type de ressource donné ou dans un champ d'application spécifié. Les tags ou libellés doivent être appliqués aux instances de ressources avant de pouvoir être mis en correspondance avec une configuration de valeur de ressource.
  • Créez une configuration de valeur de ressource qui attribue une valeur de ressource de NONE à un sous-ensemble des ressources spécifiées dans une autre configuration.

    Spécifier la valeur NONE remplace toutes les autres configurations et exclut les instances de ressources de votre ensemble de ressources à forte valeur.

  • Réduisez la spécification de l'attribut de ressource de portée dans la configuration de la valeur de la ressource.

  • Supprimez les configurations de valeurs de ressources qui attribuent une valeur de LOW.

Pour savoir comment créer, modifier ou supprimer une configuration de valeur de ressource, consultez la section Définir et gérer votre ensemble de ressources à forte valeur.

En savoir plus sur les éléments et les paramètres d'analyse compatibles de ce type de résultat.

CIEM service account missing permissions

Nom de la catégorie dans l'API : CIEM_SERVICE_ACCOUNT_MISSING_PERMISSIONS

Le compte de service utilisé par le service CIEM ne dispose pas des autorisations requises. Le CIEM ne peut pas générer une ou plusieurs catégories de résultats.

Pour corriger ce résultat, restaurez les rôles IAM requis sur le compte de service CIEM:

  1. Dans la console Google Cloud, accédez à la page IAM.

    Accéder à IAM

  2. Sélectionnez le compte de service CIEM de votre organisation. L'identifiant du compte de service est une adresse e-mail au format suivant:

    service-org-ORGANIZATION_ID@gcp-sa-ciem.iam.gserviceaccount.com
    

    Remplacez ORGANIZATION_ID par l'ID numérique de votre organisation.

    Si le compte de service ne figure pas dans la liste, cliquez sur GRANT ACCESS (ACCORDER L'ACCÈS) en haut de la page, puis saisissez le compte de service en tant que nouveau principal.

  3. Attribuez le rôle d'agent de service CIEM (roles/ciem.serviceAgent) au compte de service. Si vous utilisez des rôles personnalisés, assurez-vous qu'ils incluent les autorisations suivantes:

    • cloudasset.assets.exportResource
    • cloudasset.assets.exportIamPolicy
  4. Cliquez sur Enregistrer.

CIEM AWS CloudTrail configuration error

Nom de la catégorie dans l'API : AWS_CLOUDTRAIL_CONFIGURATION_ERROR

Tous ou certains des résultats CIEM AWS ne sont pas envoyés à Security Command Center. Le flux AWS CloudTrail a échoué et ne parvient pas à récupérer les données en raison d'une erreur de configuration.

Trois causes possibles expliquent ce résultat:

  • Flux AWS CloudTrail manquant

    Pour résoudre ce problème, créez et configurez un flux dans la console Security Operations pour ingérer les journaux AWS CloudTrail. Définissez la paire clé-valeur Libellé d'ingestion sur CIEM et TRUE.

    Pour obtenir des instructions sur la création d'un flux, consultez la section Créer le flux dans la documentation Google SecOps.

  • Erreurs de configuration du flux

    Assurez-vous d'avoir correctement configuré le flux.

    Pour configurer un flux, consultez la section Configurer un flux dans Google Security Operations pour ingérer des journaux AWS dans la documentation Google SecOps.

  • Configuration AWS CloudTrail incomplète

    Pour résoudre ce problème, configurez le bucket S3 dans votre configuration AWS CloudTrail pour enregistrer à la fois les événements de données et les événements de gestion de tous les comptes AWS dans lesquels vous souhaitez utiliser le CIEM.

    Pour configurer CloudTrail, consultez la section Configurer AWS CloudTrail (ou un autre service) dans la documentation Google SecOps.

GKE service account missing permissions

Nom de la catégorie dans l'API : GKE_SERVICE_ACCOUNT_MISSING_PERMISSIONS

Container Threat Detection ne peut pas générer de résultats pour un cluster Google Kubernetes Engine, car le compte de service GKE par défaut du cluster ne dispose pas des autorisations nécessaires. Cela empêche Container Threat Detection d'être correctement activé sur le cluster.

Pour corriger ce résultat, restaurez le compte de service GKE par défaut et vérifiez que le compte de service dispose du rôle Agent de service Kubernetes Engine (roles/container.serviceAgent).

En savoir plus sur les éléments et les paramètres d'analyse compatibles de ce type de résultat.

KTD blocked by admission controller

Nom de la catégorie dans l'API : KTD_BLOCKED_BY_ADMISSION_CONTROLLER

Container Threat Detection ne peut pas être activé sur un cluster, car un contrôleur d'admission tiers empêche le déploiement de l'objet DaemonSet Kubernetes requis.

Pour corriger ce résultat, assurez-vous que les contrôleurs d'admission exécutés sur le cluster permettent à Container Threat Detection de créer les objets Kubernetes requis.

Vérifier le contrôleur d'admission

Vérifiez si le contrôleur d'admission de votre cluster refuse le déploiement de l'objet DaemonSet de Container Threat Detection.

  1. Dans la description de la recherche dans les détails de la recherche de la console Google Cloud, examinez le message d'erreur inclus par Kubernetes. Le message d'erreur Kubernetes doit ressembler à celui-ci:

    generic::failed_precondition: incompatible admission webhook:
    admission webhook "example.webhook.sh" denied the request:
    [example-constraint] you must provide labels: {"example-required-label"}.
    
  2. Dans les journaux Cloud Audit Logging pour les activités d'administration du projet contenant votre cluster, recherchez le message d'erreur affiché dans le champ Description des détails de la recherche.

  3. Si votre contrôleur d'admission fonctionne, mais refuse le déploiement de l'objet DaemonSet Container Threat Detection, configurez-le pour autoriser l'agent de service pour Container Threat Detection à gérer les objets dans l'espace de noms kube-system.

    L'agent de service de Container Threat Detection doit pouvoir gérer des objets Kubernetes spécifiques.

Pour en savoir plus sur l'utilisation des contrôleurs d'admission avec Container Threat Detection, consultez la section PodSecurityPolicy et contrôleurs d'admission.

Confirmer la correction

Une fois l'erreur corrigée, Security Command Center tente automatiquement d'activer Container Threat Detection. Une fois l'activation terminée, vous pouvez vérifier si Container Threat Detection est actif en procédant comme suit:

  1. Accédez à la page Charges de travail de Kubernetes Engine dans la console.

    Accéder à la page "Charges de travail Kubernetes"

  2. Si nécessaire, sélectionnez Afficher les charges de travail du système.

  3. Sur la page Charges de travail, filtrez d'abord les charges de travail par nom de cluster.

  4. Recherchez la charge de travail container-watcher. Si container-watcher est présent et que son état indique OK, Container Threat Detection est actif.

KTD image pull failure

Nom de la catégorie dans l'API : KTD_IMAGE_PULL_FAILURE

Container Threat Detection ne peut pas être activé sur le cluster, car une image de conteneur requise ne peut pas être extraite (téléchargée) à partir de gcr.io, l'hôte d'images de Container Registry.

L'extraction ou le téléchargement d'une image de conteneur peut échouer pour l'une des raisons suivantes.

Vérifiez les éléments suivants :

  • Assurez-vous que les paramètres de votre réseau VPC, de votre DNS ou de votre pare-feu ne bloquent pas l'accès réseau du cluster à l'hôte de l'image gcr.io.
  • Si le cluster est privé, assurez-vous que l'accès privé à Google est activé pour autoriser l'accès à l'hôte d'images gcr.io.
  • Si les paramètres réseau et l'accès privé à Google ne sont pas à l'origine de l'échec, consultez la documentation de dépannage de GKE pour les erreurs ImagePullBackOff et ErrImagePull.

En savoir plus sur les éléments et les paramètres d'analyse compatibles de ce type de résultat.

KTD service account missing permissions

Nom de la catégorie dans l'API : KTD_SERVICE_ACCOUNT_MISSING_PERMISSIONS

Le compte de service Container Threat Detection identifié dans les détails du résultat dans la console Google Cloud ne dispose pas des autorisations requises. Tous ou certains des résultats de Container Threat Detection ne sont pas envoyés à Security Command Center.

Pour corriger ce résultat, procédez comme suit :

  1. Attribuez le rôle Agent de service Container Threat Detection (roles/containerthreatdetection.serviceAgent) au compte de service. Pour en savoir plus, consultez la section Attribuer un rôle unique.

    Si vous souhaitez utiliser un rôle personnalisé, assurez-vous qu'il dispose des autorisations du rôle d'agent de service Container Threat Detection.

  2. Assurez-vous qu'il n'existe aucune stratégie de refus IAM empêchant le compte de service d'utiliser l'une des autorisations du rôle "Agent de service Container Threat Detection". Si une stratégie de refus bloque l'accès, ajoutez le compte de service en tant que principal d'exception dans la stratégie de refus.

Pour en savoir plus sur le compte de service Container Threat Detection, ainsi que sur le rôle et les autorisations requis, consultez la section Autorisations IAM requises.

En savoir plus sur les éléments et les paramètres d'analyse compatibles de ce type de résultat.

Misconfigured Cloud Logging Export

Nom de la catégorie dans l'API : MISCONFIGURED_CLOUD_LOGGING_EXPORT

Le projet configuré pour l'exportation continue vers Cloud Logging n'est pas disponible. Par conséquent, Security Command Center ne peut pas envoyer de résultats à Logging.

Pour corriger ce résultat, effectuez l'une des opérations suivantes :

En savoir plus sur les éléments et les paramètres d'analyse compatibles de ce type de résultat.

VPC Service Controls Restriction

Nom de la catégorie dans l'API : VPC_SC_RESTRICTION

Security Health Analytics ne peut pas produire certains résultats pour un projet, car celui-ci est protégé par un périmètre de service. Vous devez accorder au compte de service Security Command Center un accès entrant au périmètre de service.

L'identifiant du compte de service est une adresse e-mail au format suivant:

service-RESOURCE_KEYWORD-RESOURCE_ID@security-center-api.iam.gserviceaccount.com

Remplacez les éléments suivants :

  • RESOURCE_KEYWORD: mot clé org ou project, en fonction de la ressource propriétaire du compte de service
  • RESOURCE_ID: l'une des valeurs suivantes:

    • ID de l'organisation si le compte de service lui appartient
    • Numéro de projet si le compte de service appartient à un projet

Si vous disposez à la fois de comptes de service au niveau de l'organisation et au niveau du projet, appliquez la correction aux deux.

Pour corriger ce résultat, procédez comme suit :

Étape 1 : Déterminer le périmètre de service qui bloque Security Health Analytics

  1. Obtenez l'ID unique de VPC Service Controls et l'ID de projet associé au résultat:

    1. Pour afficher les détails du résultat, cliquez sur son nom de catégorie.
    2. Dans le champ Description, copiez l'ID unique de VPC Service Controls (par exemple, 5e4GI409D6BTWfOp_6C-uSwmTpOQWcmW82sfZW9VIdRhGO5pXyCJPQ).
    3. Dans le champ Chemin d'accès à la ressource, copiez l'ID du projet.
  2. Obtenez l'ID de la règle d'accès et le nom du périmètre de service :

    1. Dans Google Cloud Console, accédez à la page Explorateur de journaux.

      Accéder à l'explorateur de journaux

    2. Dans la barre d'outils, sélectionnez le projet associé au résultat.

      Sélecteur de projet

    3. Dans la zone de recherche, saisissez l'identifiant unique de l'erreur.

      Recherche par UID d'erreur

      Si l'erreur n'apparaît pas dans les résultats de la requête, étendez la chronologie dans l'histogramme, puis réexécutez la requête.

    4. Cliquez sur l'erreur qui s'affiche.

    5. Cliquez sur Développer les champs imbriqués.

    6. Copiez la valeur du champ servicePerimeterName. La valeur a le format suivant :

      accessPolicies/ACCESS_POLICY/servicePerimeters/SERVICE_PERIMETER
      

      Dans cet exemple, le nom de ressource complet du périmètre de service est accessPolicies/540107806624/servicePerimeters/vpc_sc_misconfigured.

      • ACCESS_POLICY correspond à l'ID de la règle d'accès (par exemple, 540107806624).
      • SERVICE_PERIMETER correspond au nom du périmètre de service (par exemple, vpc_sc_misconfigured).

        Nom de ressource complet du périmètre de service

    7. Pour obtenir le nom à afficher correspondant à l'ID de règle d'accès, utilisez la gcloud CLI.

      Si vous ne pouvez pas effectuer de requêtes au niveau de l'organisation, demandez à votre administrateur d'effectuer cette étape.

      gcloud access-context-manager policies list \
          --organization ORGANIZATION_ID
      

      Remplacez ORGANIZATION_ID par l'ID numérique de votre organisation.

      Un résultat semblable aux lignes suivantes doit s'afficher :

      NAME          ORGANIZATION  SCOPES                 TITLE           ETAG
      540107806624  549441802605                         default policy  2a9a7e30cbc14371
      352948212018  549441802605  projects/393598488212  another_policy  d7b47a9ecebd4659
      

      Le nom à afficher est le titre qui correspond à l'ID de règle d'accès. Prenez note du nom à afficher de la règle d'accès et du nom du périmètre de service. Vous en aurez besoin dans la section suivante.

Étape 2 : Créer une règle d'entrée accordant l'accès au projet

Pour accéder à cette section, vous devez disposer d'un accès au niveau de l'organisation à VPC Service Controls. Si vous ne disposez pas d'un accès au niveau de l'organisation, demandez à votre administrateur d'effectuer ces étapes.

Dans les étapes suivantes, vous créez une règle d'entrée sur le périmètre de service que vous avez identifié à l'étape 1.

Pour accorder à un compte de service un accès entrant à un périmètre de service, procédez comme suit :

  1. Accédez à VPC Service Controls.

    Accéder à VPC Service Controls

  2. Dans la barre d'outils, sélectionnez votre organisation Google Cloud.

    Sélecteur de projet

  3. Dans la liste déroulante, sélectionnez la règle d'accès contenant le périmètre de service auquel vous souhaitez accorder l'accès.

    Liste des règles d'accès

    Les périmètres de service associés à la règle d'accès apparaissent dans la liste.

  4. Cliquez sur le nom du périmètre de service.

  5. Cliquez sur Modifier le périmètre.

  6. Dans le menu de navigation, cliquez sur Règle d'entrée.

  7. Cliquez sur Add rule (Ajouter une règle).

  8. Configurez la règle comme suit :

    Attributs "FROM" du client API

    1. Pour Source, sélectionnez Toutes les sources.
    2. Pour Identité, sélectionnez Identités sélectionnées.
    3. Dans le champ Ajouter un utilisateur/compte de service, cliquez sur Sélectionner.
    4. Saisissez l'adresse e-mail du compte de service. Si vous disposez à la fois de comptes de service au niveau de l'organisation et au niveau du projet, ajoutez-les tous les deux.
    5. Cliquez sur Enregistrer.

    Attributs "TO" des services/ressources GCP

    1. Pour Projet, sélectionnez Tous les projets ou sélectionnez le projet spécifié dans le résultat.

    2. Pour Services, sélectionnez Tous les services ou chacun des services suivants requis par Security Health Analytics:

      • API BigQuery
      • API Binary Authorization
      • API Cloud Logging
      • API Cloud Monitoring
      • API Compute Engine
      • API Kubernetes Engine

    Si un périmètre de service limite l'accès à un service requis, Security Health Analytics ne peut pas produire de résultats pour ce service.

  9. Dans le menu de navigation, cliquez sur Enregistrer.

Pour plus d'informations, consultez la section Configurer les règles d'entrée et de sortie.

En savoir plus sur les éléments et les paramètres d'analyse compatibles de ce type de résultat.

Security Command Center service account missing permissions

Nom de la catégorie dans l'API : SCC_SERVICE_ACCOUNT_MISSING_PERMISSIONS

L'agent de service de Security Command Center ne dispose pas des autorisations nécessaires pour fonctionner correctement.

L'identifiant du compte de service est une adresse e-mail au format suivant:

service-RESOURCE_KEYWORD-RESOURCE_ID@security-center-api.iam.gserviceaccount.com

Remplacez les éléments suivants :

  • RESOURCE_KEYWORD: mot clé org ou project, en fonction de la ressource propriétaire du compte de service
  • RESOURCE_ID: l'une des valeurs suivantes:

    • ID de l'organisation si le compte de service lui appartient
    • Numéro de projet si le compte de service appartient à un projet

Si vous disposez à la fois de comptes de service au niveau de l'organisation et au niveau du projet, appliquez la correction à tous les deux.

Pour corriger ce résultat, procédez comme suit :

  1. Attribuez le rôle d'agent de service Security Center (roles/securitycenter.serviceAgent) au compte de service.

    Pour en savoir plus, consultez la section Attribuer un rôle unique.

    Si vous souhaitez utiliser un rôle personnalisé, assurez-vous qu'il dispose des autorisations du rôle Agent de service Security Center.

  2. Assurez-vous qu'il n'existe aucune stratégie de refus IAM empêchant le compte de service d'utiliser l'une des autorisations des rôles requis. Si une stratégie de refus bloque l'accès, ajoutez le compte de service en tant qu'entité principale d'exception dans la stratégie de refus.

En savoir plus sur les éléments et les paramètres d'analyse compatibles de ce type de résultat.

Étape suivante

Apprenez-en plus sur les erreurs Security Command Center.