Netskope LogoNetskope Logo
  • Services de sécurité
  • Services d’IA
  • Services de miseenréseau
  • Services d'analyse
  • Intégrations
  • getting-started.svgPour commencer
    • Support
    • Communauté
    • Netskope.com
    © 2026 Tous droits réservés. Netskope Inc.
    Accueil
    Netskope Cloud Exchange
    Module Threat Exchange
    Configurer les plugins Threat Exchange tiers
    Plugin AWS GuardDuty pour Threat Exchange

    Plugin AWS GuardDuty pour Threat Exchange

    Ce document explique comment configurer l'intégration d'AWS GuardDuty avec le module Cloud Threat Exchange de la plateforme Netskope Cloud Exchange. Ce plugin récupère les URL (IPv4 et domaine) et le hachage (SHA256) de la plateforme AWS GuardDuty. Ce plugin ne permet pas d'envoyer des indicateurs à AWS GuardDuty.

    Conditions préalables

    Pour compléter cette configuration, vous avez besoin de :

    • Un locataire Netskope (ou plusieurs, par exemple des instances de production et de développement/test).
    • A Netskope Cloud Exchange tenant with the Tenant plugin and Threat Exchange plugin already configured.
    • Un abonnement à Netskope Threat prevention pour le partage de fichiers malveillants par hachage.
    • Accès à votre ID de clé d'accès AWS (clé publique), à votre clé d'accès secrète AWS (clé privée), à votre jeton de session AWS (facultatif, uniquement pour les utilisateurs temporaires), à votre nom de région et à votre ID de détecteur (ID de détecteur unique).
    Support du plugin AWS GuardDuty
    Types d'indicateurs prédéfinisURL (IPv4 et domaine), SHA256
    Types d'indicateurs partagésAucun
    Mises en correspondance
    Cartographie de la gravité
    Sévérité de NetskopeAWS GuardDuty Severity
    <1Inconnu
    1.0 – 3.9Faible
    4.0 – 6.9Moyen
    7.0 – 8.9Haut
    9.0 – 10.0Critique
    Mappings for Pull (champs Netskope - champs AWS GuardDuty)
    Champ de l'indicateur Netskope Cloud ExchangeAWS GuardDuty Field
    value

    EbsVolumeScanDetails Mapping
    Service.EbsVolumeScanDetails.ScanDetections.ThreatDetectedByName.ThreatNames.FilePaths.FileName.Hash

    NetworkConnectionAction Mapping

    Service.Action.NetworkConnectionAction.RemoteIpDetails.IpAddressV4

    PortProbeAction Mapping

    Service.Action.PortProbeAction.PortProbeDetails.RemoteIpDetails.IpAddressV4

    DnsRequestAction Mapping

    Service.Action.DnsRequestAction.Domain

    type

    EbsVolumeScanDetails Mapping
    SHA256

    NetworkConnectionAction Mapping
    URL


    PortProbeAction Mapping

    URL

    DnsRequestAction Mapping

    URL

    firstSeen

    EbsVolumeScanDetails Mapping
    Service.EventFirstSeen

    NetworkConnectionAction Mapping

    Service.Action.EventFirstSeen

    PortProbeAction Mapping

    Service.Action.EventFirstSeen

    DnsRequestAction Mapping

    Service.Action.EventFirstSeen

    lastSeen

    EbsVolumeScanDetails Mapping
    Service.EventLastSeen

    NetworkConnectionAction Mapping
    Service.Action.EventLastSeen

    PortProbeAction Mapping

    Service.Action.EventLastSeen

    DnsRequestAction Mapping

    Service.Action.EventLastSeen

    sévérité

    EbsVolumeScanDetails Mapping
    Service.EbsVolumeScanDetails.ScanDetections.HighestSeverityThreatDetails.Severity

    NetworkConnectionAction Mapping

    Sévérité

    PortProbeAction Mapping

    Sévérité

    DnsRequestAction Mapping

    Sévérité

    tags

    EbsVolumeScanDetails Mapping
    Service.EbsVolumeScanDetails.Sources }}+ {{GuardDuty-public if PublicIp is present in NetworkInterfaces +

    GuardDuty-private si PrivateIpAddress est présent dans NetworkInterfaces

    NetworkConnectionAction Mapping
    Resource.InstanceDetails.Tags +

    NetworkConnectionAction.Blocked=<value>

    +

    GuardDuty-public si PublicIp est présent dans NetworkInterfaces +

    GuardDuty-private si PrivateIpAddress est présent dans NetworkInterfaces

    PortProbeAction Mapping
    portProbeAction.Blocked = <value> + Resource.InstanceDetails.Tags + GuardDuty-public si PublicIp est présent dans NetworkInterfaces + GuardDuty-private si PrivateIpAddress est présent dans NetworkInterfaces

    DnsRequestAction Mapping
    DnsRequestAction :Blocked : <value> +Resource.InstanceDetails.Tags +GuardDuty-public si PublicIp est présent dans NetworkInterfaces +GuardDuty-privé si PrivateIpAddress est présent dans NetworkInterfaces

    commentaires

    EbsVolumeScanDetails Mapping
    Trouver Arn : Arn,TriggerFindingId:Service.EbsVolumeScanDetails.TriggerFindingId,Name:Service.EbsVolumeScanDetails.ScanDetections.ThreatDetectedByName.ThreatNames.FilePaths.FileName.Hash.Filename 

    Chemin d'accès:Service.EbsVolumeScanDetails.ScanDetections.ThreatDetectedByName.ThreatNames.FilePaths.Chemind'accès,Description:Description


    NetworkConnectionAction Mapping
    Recherche ARN : Arn, Type de recherche : Type, Description : Description

    PortProbeAction Mapping
    Recherche ARN : Arn, Type de recherche : Type, Description : Description

    DnsRequestAction Mapping
    Recherche ARN : Arn, Type de recherche : Type, Description : Description,

     

    Permissions

    Vous trouverez ci-dessous les permissions nécessaires à l'utilisateur IAM pour le plugin workflow.

    • GetFindings
    • ListFindings
    Détails de l'API
    Liste des API utilisées

    Ce plugin utilise la bibliothèque python (Boto3 v1.34.44) pour obtenir les résultats de la plateforme AWS GuardDuty.
    Bibliothèque : Le SDK AWS pour python (Boto3 v1.34.44)
    Utilisation : Le SDK AWS pour python (Boto3) pour créer, configurer et gérer les services AWS,
    tels que Amazon Elastic Compute Cloud (Amazon EC2) et Amazon Simple Storage Service.

    Création d'un objet client GuardDuty
    guardduty_client = boto3.Session(
        aws_access_key_id=self.aws_public_key,
        aws_secret_access_key=self.aws_private_key,
        region_name=self.configuration["region_name"].strip()
        config=Config(proxies=self.proxy, user_agent=self.useragent),
    ).client("guardduty")
    Liste des résultats
    findings = guardduty_client.list_findings(
         DetectorId=detection_id,
         MaxResults=1,
         SortCriteria={"AttributeName": "updatedAt", "OrderBy": "ASC"},
      )
    Liste des résultats avec pagination
    paginator = guardduty_client.get_paginator("list_findings")
        page_iterator = paginator.paginate(
          DetectorId=self.configuration["aws_detector_id"].strip(),
          FindingCriteria={
            "Criterion": {
              "updatedAt": {
                "Gte": int(checkpoint.timestamp() * 1000),
              }
            }
          },
           SortCriteria={"AttributeName": "updatedAt", "OrderBy": "ASC"},
        )
    Obtenir des résultats
    guardduty_client.get_findings(
             DetectorId=detection_id,
             FindingIds=finding_ids,
    )
    Matrice de performance

    Ce plugin a été testé en récupérant 288 résultats de la plateforme AWS GuardDuty. Il faut environ 15 secondes pour récupérer et stocker les indicateurs de ces résultats dans Netskope CE.

    Détails de la pile

    Taille : Grand

    RAM : 32 GO

    CPU : 16 cœurs

    Indicateurs extraits de AWS GuardDuty

    ~ 1K per minute

    Indicateurs partagés avec AWS GuardDuty

    NA

    Agent utilisateur
    • netskope-ce-5.0.0-cte-aws-guardduty-v1.1.0

    Workflow

    1. Obtenez vos identifiants AWS GuardDuty.
    2. Configurez le plugin AWS GuardDuty.
    3. Configurez le partage entre Netskope et AWS GuardDuty.
    4. Validate the AWS GuardDuty Plugin.

    Cliquer sur « play » pour regarder une vidéo.

     

    Créer une politique pour AWS GuardDuty

    1. Allez sur IAM Services dans la console AWS.
    2. Cliquez sur Create policies.
    3. Select Le service de garde dans les services.
      Capture d'écran d'un ordinateur. Description générée automatiquement.
    4. Select GetFindings et ListFindings.
    5. Cliquez sur Next.
    6. Ajoutez un nom de police.
      Capture d'écran d'un ordinateur. Description générée automatiquement.
    7. Cliquez sur Create Policy.
      Capture d'écran d'un ordinateur. Description générée automatiquement.

    Méthodes d'authentification des plugins

    Configuration de IAM Role Anywhere

    Conditions préalables

    Le service AWS Certificate Manager doit être activé pour authentifier le plugin à l'aide de la méthode d'authentification AWS IAM Roles Anywhere.

    Remarque : veillez à créer l'autorité de certification privée, l'ancre de confiance et le profil dans la même région que celle où se trouve votre AWS S3 Source Bucket.

    Créer une politique IAM

    Cette politique contient les autorisations requises pour la création d'un certificat d'autorité de certification privé (y compris les autorisations pour la création d'une ancre de confiance et d'un profil) et l'utilisation des rôles IAM Anywhere.

    1. Accédez au générateur de politiques et cliquez sur Add Statement pour générer une politique.
      • Select Type de politique : Politique IAM
      • Effet : Autoriser
      • Service AWS : Autorité de certification privée AWS
      • Actions :
        • Créer une autorité de certification
        • DescribeCertificateAuthority
        • Obtenir un certificat
        • Obtenir un certificat d'autorité
        • Obtenir l'autorité de certification (GetCertificateAuthorityCsr)
        • ImportCertificateAuthorityCertificate
        • Délivrer un certificat
        • Liste des autorités de certification
      • ARN : *
    2. Cliquez Add Statement.
      • Select Type de politique : Politique IAM
      • Effet : Autoriser
      • Service AWS : Gestion des identités et des accès (IAM) d'AWS
      • Actions :
        • Politique de rattachement des rôles
        • Créer une clé d'accès
        • Créer un rôle
        • Supprimer un rôle
        • PassRole
      • ARN : *
    3. Cliquez Add Statement.
      • Select Type de politique : Politique IAM
      • Effet : Autoriser
      • Service AWS : Gestionnaire de certificats AWS
      • Actions :
        • Décrire le certificat
        • Certificat d'exportation
        • Obtenir un certificat
        • Liste des certificats
        • ListTagsForCertificate
        • Demande de certificat
      • ARN : *
    4. Cliquez Add Statement.
      • Select Type de politique : Politique IAM
      • Effet : Autoriser
      • Service AWS : Gestion des identités et des accès AWS Rôles en tout lieu
      • Actions :
        • Créer un profil
        • CreateTrustAnchor
        • Obtenir un profil
        • GetTrustAnchor
        • Liste des profils
        • ListTrustAnchors
      • ARN : *
    5. Cliquez sur Add Statement.
    6. Cliquez sur Generate Policy.
    7. Copiez la politique car elle sera utilisée dans l'étape suivante pour créer la politique nécessaire à la création des certificats de l'AC privée.
    8. Accédez à la console AWS et sélectionnez IAM parmi All Services. Cliquez sur Policies dans le panneau de gauche, puis sur Create Policy.
    9. Copiez la politique dans l'onglet JSON, puis cliquez sur Next: Tags et sur Next: Review.
    10. Entrez un nom, comme Netskope-ce-rolesAnywhere-policy, et cliquez sur Save Changes.
    Créer une autorité de certification privée
    1. Connectez-vous à la console AWS.
    2. Cherche Certificate Manager.
    3. Cliquez sur AWS Private CA.
    4. Cliquez Create a private CA.
    5. Select General-purpose pour Mode Options.
    6. Select Root pour CA type options.
    7. Saisissez l'organisation (O).
    8. Select RSA 2048 pour Key algorithm options.
    9. Add tags if any (optional).
    10. Activez la case à cocher dans la section CA permissions options.
    11. Activez la case à cocher dans la section Pricing.
    12. Cliquez sur Create pour créer le certificat CA.
    13. À partir de Actions, sélectionnez Install.
    14. Cliquez Confirm and Install.
    Créer un ancrage de confiance
    1. Recherchez le service IAM et accédez à Roles sous Gestion des accès. Faites défiler vers le bas jusqu'à Rôles Anywhere et sélectionnez Manage.
    2. Cliquez Create a Trust anchor.
    3. Enter the Trust anchor name, like netskope-ce-trust-anchor.
    4. Select AWS Certificate Manager Private CA (créé dans les étapes précédentes) en tant que Certificate authority (CA) source
    5. Ajoutez des étiquettes si nécessaire.
    6. Cliquez Create a trust anchor.
    7. Cliquez sur le Trust Anchor créé et copiez le Trust Anchor ARN.
    Créer un rôle IAM
    1. Accédez aux services IAM dans la console AWS.
    2. Click Role under Access management.
    3. Cliquez Create Role.
    4. Pour le type d’entité de confiance, sélectionnez Custom Trust Policy.
    5. Accédez au générateur de politiques.
    6. Remplacez la politique de confiance personnalisée par la politique de confiance ci-dessous ; cette politique contient les autorisations d'utilisation du service Rôles n'importe où :
      {
          "Version": "2012-10-17",
          "Statement": [
              {
                  "Effect": "Allow",
                  "Principal": {
                      "Service": [
                          "rolesanywhere.amazonaws.com"
                      ]
                  },
                  "Action": [
                      "sts:AssumeRole",
                      "sts:TagSession",
                      "sts:SetSourceIdentity"
                  ]
              }
          ]
      }
    7. Cliquez sur Next.
    8. Dans les stratégies d'autorisation , sélectionnez la stratégie de compartiment créée précédemment.
    9. Cliquez sur Next.
    10. Donnez un nom de rôle, comme Netskope-ce-roleAnywhere, et ajoutez une description pour le rôle. 
    11. Cliquez Create role.
    12. Notez la Role ARN car elle sera requise dans le paramètre de configuration Plugin : Role ARN pour la méthode d’authentification AWS IAM Roles Anywhere.
    Créer un profil
    1. Select Roles under Access management.
    2. Faites défiler vers le bas jusqu'à Roles Anywhere et cliquez sur Manage.
    3. Développez le Setup steps.
    4. Cliquez sur Step 2: Configure roles.
    5. Cliquez Configure a profile.
    6. Entrez un nom de profil, comme Netskope-ce-profile.
    7. Select le rôle créé dans la section Create IAM Role : Netskope-ce-roleAnywhere.
    8. Supprimez le Inline Policy.
    9. Cliquez Create profile.
    10. Cliquez sur le Profile créé et copiez le Profile ARN.
    Demander un certificat privé
    1. Allez sur AWS Certificate Manager > Request certificate.
    2. Select Request a private certificate.
    3. Cliquez sur Next.
    4. Select l'autorité de certification créée dans les étapes précédentes.
    5. Indiquez un nom de domaine dans le champ Fully qualified domain name, comme Netskope-ce.com.
    6. Select RSA 2048 pour le Key algorithm.
    7. Ajoutez des étiquettes si nécessaire.
    8. Confirmez les autorisations de renouvellement du certificat.
    9. Cliquez Request.
    10. Allez sur List certificates dans le volet de navigation d'AWS Certificate Manager.
    11. Select le certificat créé précédemment.
    12. Cliquez Export.
    13. Saisissez le passphrase. Notez la phrase d'authentification car elle sera nécessaire pour la configuration du plugin AWS S3 à l'aide de la méthode d'authentification AWS IAM Roles Anywhere.
    14. Cliquez Generate PEM Encoding.
    15. Téléchargez tous les Certificates car ils ne seront plus visibles. Pour New certificats, il faudra l’exporter à nouveau. Pour plus d’informations, rendez-vous sur AWS IAM Role Anywhere

    Déployé sur AWS Configuration

    Créer un rôle
    1. Allez sur IAM services dans la console AWS.
    2. Cliquez Create role.
    3. Select le AWS Service.
    4. Pour le cas d'utilisation, sélectionnez EC2.
    5. Cliquez Next.
    6. Select la politique de permission créée dans votre Bucket Policy.
    7. Cliquez Next.
    8. Saisissez un nom de rôle, comme Netskope-ce-instance-role, et ajoutez une description. 
    9. Cliquez Create Role. Note: Pour cette configuration, l’instance Netskope et le bucket S3 doivent être dans la même région.
    Attribuer un rôle à une instance EC2
    1. Ouvrez la console de votre instance EC2.
    2. Click Instances under Instances.
    3. Allez à Action > Security > Modify IAM Role.
    4. Select le rôle que vous avez créé précédemment (comme Netskope-ce-instance-role).
    5. Cliquez Update IAM Role.

    Configurer le plugin AWS GuardDuty

    1. Connectez-vous à votre instance CE et allez sur Settings > Plugins.
    2. Recherchez et sélectionnez la boîte du plugin AWS GuardDuty pour configurer le plugin.
    3. Entrez ces valeurs :
      • Nom de la configuration : Nom unique de la configuration.
      • Intervalle de synchronisation : Laissez la valeur par défaut.
      • Critères de vieillissement : Durée d'expiration du plugin en jours. (Valeur par défaut : 90)
      • Ignorer la réputation : Définissez une valeur pour remplacer la réputation des indicateurs reçus de cette configuration.
      • Activer la validation SSL : Activez la validation du certificat SSL.
      • Utiliser le proxy du système : Activez cette option si le proxy est nécessaire pour la communication.
    4. Cliquez sur Next.
    5. Entrez ces valeurs :
      • Méthode d'authentification : Select la méthode à utiliser pour l'authentification (déployé sur AWS/AWS IAM Roles Anywhere)
      • Private Key (Clé privée) : Clé privée pour le décryptage du certificat privé de l'autorité de certification AWS. Requis pour le type d'authentification AWS IAM Roles Anywhere.
      • Organisme de certification : Organisme de certification pour le certificat de l'autorité de certification publique/privée d'AWS. Requis pour le type d'authentification AWS IAM Roles Anywhere.
      • Password Phrase : Phrase de mot de passe pour décrypter le certificat CA. Requis pour le type d'authentification AWS IAM Roles Anywhere.
      • Profil ARN : ARN du profil AWS pour l'authentification du client AWS. Requis pour le type d'authentification AWS IAM Roles Anywhere .
      • ARN de rôle : ARN du rôle AWS pour l'authentification du client AWS. Requis pour le type d'authentification AWS IAM Roles Anywhere.
      • Trust Anchor ARN : ARN de l'ancre de confiance AWS pour l'authentification du client AWS. Requis pour le type d'authentification AWS IAM Roles Anywhere.
      • Nom de la région : Région dans laquelle le service GuardDuty fonctionne. Assurez-vous que le nom de la région correspond à celui de l'ARN du profil et de l'ARN de l'ancre de confiance.
      • ID du détecteur : L'identifiant unique du détecteur.
      • Initial Range (in days) : Nombre de jours pour extraire les données pour l'exécution initiale.
    6. Cliquez sur Save.

    Ajouter une règle de gestion pour AWS GuardDuty

    Pour partager les indicateurs extraits de AWS GuardDuty avec Netskope CE, vous devez disposer d'une règle de gestion qui filtre les indicateurs que vous souhaitez partager. Pour configurer une règle de gestion, suivez les étapes ci-dessous :

    1. Allez à Threat Exchange > Business Rule et cliquez sur Create New Rule.
    2. Ajoutez le filtre selon vos besoins dans la règle.

    Configurer le partage pour Netskope et AWS GuardDuty

    1. Allez sur Threat Exchange et sélectionnez Sharing. La page Partage affiche les relations existantes pour chaque configuration de partage sous forme de grille, comme indiqué ci-dessous. La page Partage comporte également des entrées permettant de configurer le partage de New d'un plugin à l'autre.
    2. Cliquez Add Sharing Configuration, et dans la liste déroulante Configuration de la source, sélectionnez AWS GuardDuty.
    3. Select une règle métier, puis sélectionnez Netskope pour la configuration de destination. Les configurations de partage sont unidirectionnelles. Les données obtenues d’un plugin sont partagées avec un autre plugin.
    4. Select a Cible. Chaque plugin aura une cible ou une destination différente pour l'IoC.
    5. Pour ajouter une liste de hachage de fichiers, saisissez un nom de liste, une taille de liste et un hachage de fichier par défaut. Le nom de la liste doit exister dans votre interface utilisateur Netskope à Settings > Policies > Profiles. Pour plus d'informations sur la création d'un profil de fichier pour les hachages, consultez la section « Ajout d'un profil de fichier ».
    6. Cliquez sur Save.

    L'ajout d'une configuration de partage New sur le sondage source actif permet de partager les IoC existants de la configuration source avec la configuration de destination. Chaque fois qu'une configuration de partage New est créée, tous les IoC actifs seront également pris en compte pour le partage s'ils correspondent à la combinaison source/destination.

    Note

    Les plugins qui n'ont pas d'API pour ingérer des données ne peuvent pas recevoir de données sur les menaces. C'est le cas du plugin installé API Source, qui fournit un bac associé à un point de terminaison API pour que des systèmes tiers distants puissent envoyer des données. Une fois qu'une politique de partage a été ajoutée, elle prend effet.

    Après la création d'une configuration de partage, le tableau de partage indique la règle invoquée, le système source qui fournit les correspondances potentielles d'informations de référence, le système de destination qui recevra les informations de référence correspondantes et la cible applicable à cette règle. Plusieurs configurations de partage peuvent être mises en place pour permettre le mappage de certains IoC à plusieurs cibles, même sur le système de destination.

    Modifier, tester ou supprimer une configuration de partage

    Chaque configuration prend en charge 3 actions :

    image10.png
    • Modifiez la règle en cliquant sur l'icône en forme de crayon.
    • Testez la règle en cliquant sur l'icône de synchronisation. Il s'agit de tester le nombre d'images de contrôle qui seront effectivement envoyées au système de destination en fonction du délai et de la règle.
    • Supprimez la règle en cliquant sur l'icône de la poubelle.

    Validate the AWS Guardduty Plugin

    Valider le retrait

    Les données extraites seront répertoriées sur la page IoCs de la menace. Vous pouvez filtrer les IoCs extraits de la plateforme en utilisant le filtre: sources.source Like "<plugin name>". Vous pouvez également filtrer les logs de CE avec le nom du plugin.

    Sur la plateforme AWS GuardDuty, les indicateurs sont tirés de GuardDuty > Findings.

    Valider le push

    Pour valider le push dans Cloud Exchange, allez sur Threat Exchange > Logging et filtrez les logs partagés pour Netskope.

    Pour vérifier à partir du locataire Netskope :

    1. Connectez-vous à votre locataire Netskope.
    2. Cliquez sur Policies.
    3. Cliquez sur File (pour Sha256).
    4. Saisissez le nom de fichier que vous avez utilisé lors de la configuration du partage.
    5. Pour les URL : (IPv4 et domaine).
    6. Cliquez sur Web > URL Lists.
    7. Cliquez sur la liste d'URL qui a été utilisée lors de la configuration du partage.

    Dépannage

    Si vous rencontrez un problème lors de la configuration du plugin avec Deployed on AWS

    Vérifiez le rôle IAM attaché à votre machine EC2.

    Dans ce thème
    • Plugin AWS GuardDuty pour Threat Exchange