Ce document explique comment configurer le plugin Anomali ThreatStream XDR v1.3.2 pour le module Threat Exchange de la plateforme Netskope Cloud Exchange. Ce plugin est utilisé pour récupérer les indicateurs de type URL, IP (IPv4, IPv6), Domaine, SHA256, et MD5 des Observables sur Anomali ThreatStream XDR. Ce plugin prend en charge le partage de MD5, SHA256, URL, Domaine, IPv4 et IPv6 vers des Observables sur la plateforme Anomali ThreatStream XDR à l'aide de l'action Share Indicators.
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).
- Un profil de fichier sur votre locataire Netskope.
- A URL List on your Netskope tenant.
- A Netskope Cloud Exchange tenant with the Tenant plugin and Threat Exchange plugin already configured.
- Une instance Anomali Threatstream Cloud Platform ou sur site.
- Connectivité avec les hôtes suivants :
- Pour Cloud Platform : https://api.threatstream.com.
- Pour les environnements sur site : https://<ThreatStream_On-Premises_IP_ou_FQDN>.
Anomali Threatstream XDR Plugin prend en charge
Le plugin est utilisé pour tirer et pousser des IoC de type URL, IPv4, IPv6, Domaines, MD5, et SHA256 depuis/vers les Observables d'Anomali ThreatStream XDR.
| Types d'indicateurs prédéfinis | Types d'indicateurs partagés |
|---|---|
| URL, Domaines, IP (IPv4), IPv6, SHA256, MD5 | URL, Domaines, IP (IPv4), IPv6, SHA256, MD5 |
Retrait de l'IoC
Le plugin XDR d'Anomali Threatstream prend en charge la rétractation. La rétractation de la traction sera basée sur le champ Intervalle de rétractation dans les paramètres de configuration et les filtres de plugin configurés. Cela signifie que les objets de confiance présents dans la plage d'intervalle de rétractation ne seront pas marqués comme rétractés et que les autres objets de confiance seront marqués comme rétractés dans Cloud Exchange.
IoC Retraction (Pull) : Les indicateurs seront récupérés à partir d'Anomali et dans les cycles de traction suivants. Si certains indicateurs sont supprimés d'Anomali, ils seront marqués comme retirés dans Cloud Exchange.
| Type | Description |
|---|---|
| Retrait de l'IoC (Pull) | Oui |
| Retrait de l'IoC (Push) | Non |
Étiquetage des sources IoC
L'indicateur partagé avec la tierce partie comportera un champ décrivant le plugin source qui a effectivement récupéré cet IoC.
| Type | Description |
|---|---|
| Étiquetage des sources IoC | Supported (Netskope CE | <Source Plugin>) |
Mises en correspondance
Correspondance des sévérités
| Sévérité de Netskope | Anomali ThreatStream XDR Gravité |
|---|---|
| low | low |
| medium | medium |
| high | high |
| critical | very-high |
| unknown | – |
Mappage des indicateurs pour la traction et la poussée
| Champs Netskope | Champs observables d'Anomali ThreatStream XDR |
|---|---|
| value | value |
| type | type |
| firstSeen | created_ts |
| lastSeen | modified_ts |
| reputation | confidence |
| sévérité | meta.severity |
| commentaires | description |
| tags | tags.name |
Correspondance réputation-confiance
| Réputation de Netskope | Anomali ThreatStream XDR Confidence |
|---|---|
| 1 | 1-10 |
| 2 | 11-20 |
| 3 | 21-30 |
| 4 | 31-40 |
| 5 | 41-50 |
| 6 | 51-60 |
| 7 | 61-70 |
| 8 | 71-80 |
| 9 | 81-90 |
| 10 | 91-100 |
Mappages des indicateurs de pression
| Champ observable Anomali ThreatStream XDR | Champ indicateur Netskope |
|---|---|
| url pour le type d'URL IoC domain pour le type d'IoC Domain scrip pour le type d'IoC IPv4 ipv6 pour le type d'objet de confiance IPV6 md5 pour les types d'oic de MD5 et de SHA256 | value |
| sous-type (uniquement pour SHA256 et MD5) | SHA256 pour SHA256 MD5 pour MD5 |
| itype | Les paramètres d'action utilisés pour chaque type de COI sont indiqués ci-dessous : iType URL pour les URL iType IP pour IPv4 iType IPv6 pour IPv6 iType de domaine pour les domaines Hash [MD5, SHA256] iType pour SHA256 et MD5 |
| sévérité | Gravité très élevée si critique élevée si élevée moyenne -> moyenne faible -> faible inconnu -> "" |
| confidence | reputation |
| description | commentaires |
| tags.name | Tags + “netskope-ce” + “Netskope CE | <Source Plugin Name>” |
Matrice de performance
Cette lecture a été effectuée sur une grande pile de Cloud Exchangeavec ces spécifications en tirant et en poussant 100K IoCs.
| Description | Spécifications |
|---|---|
| Détails de la pile | Taille : Grande RAM : 32 GB CPU : 16 cœurs |
| Indicateurs extraits de Anomali ThreatStream XDR | ~33K per minute |
| Indicateurs partagés avec Anomali ThreatStream XDR | ~180K per minute |
Permissions
Ces autorisations sont nécessaires pour la configuration du plugin.
- Approbation Intel
- Afficher l'API pour les utilisateurs
Détails de l'API
List of APIs used
| Point final de l'API | Méthode | Cas d'utilisation |
|---|---|---|
| /api/v2/intelligence | OBTENIR | Pour retirer les indicateurs et vérifier s'ils sont modifiés |
| /api/v2/intelligence/ | PATCH | Pour appuyer sur les indicateurs |
Pull indicators and check for modified indicators
API Endpoint: /api/v2/intelligence
Method: OBTENIR
Parameters:
| Clé | Value |
|---|---|
| limit | 1000 |
| modified_ts__gt | 2024-01-23T13:33:40.314Z |
| update_id__gt | 0 |
| order_by | update_id |
| remote_api | true |
| type | domaine,ip,ipv6,hash,url |
| hash$subtype(Pour SHA256 et MD5) | MD5, SHA256 |
| confidence__gte | 1 |
| status | active |
| meta.severity | faible, moyen, élevé, très élevé |
| tags | tag1, tag2 |
| feed_id | 0,1 |
Headers:
| Clé | Value |
|---|---|
| Authorization | apikey <username>:<password> |
| Content-Type | application/json |
| Accept | application/json |
| User-Agent | netskope-ce-6.0.1-cte-anomali-threatstream-xdr-v1.3.2 |
Sample API Response:
{
“objects”: [
{
“source”: “Botscout BOT IPs”,
“threatscore”: 17,
“threat_type”: “bot”,
“trusted_circle_ids”: [
146,
211,
388
],
“description”: null,
“workgroups”: [],
“sort”: [
17729579514
],
“resource_uri”: “/api/v2/intelligence/60654060239/”,
“modified_ts”: « 2023-10-18T11:11:57.115Z »,
« update_id » : 17729579514,
« source_reported_confidence » : 65,
« type » : « ipv6 »,
« uuid » : « 39a5d9b0-c48e-4831-afdb-511f57c039ec »,
« feed_id » : 141,
« retina_confidence » : -1,
« created_ts » : « 2023-10-18T10:52:26.484Z »,
« id » : 60654060239,
« value » : "2401:4900:171:609:11:98:550:76",
"itype": "bot_ipv6",
"org": "",
"confidence": 65,
"expiration_ts": "2024-01-16T10:52:23.000Z",
"owner_organization_id": 2,
"meta": {
"severity": "medium",
"detail2": "imported by user 668"
},
"is_anonymous": false,
"is_public": false,
"asn": "",
"status": "active",
“tags”: [
{
“id”: “1yx”,
“name”: “childfirstbehaviortherapy.seo”
},
{
« id » : « 3t7 »,
« nom » : « childfirstbehaviortherapy.seo@gmail.com »
}
],
“can_add_public_tags”: false,
“subtype”: null,
“tlp”: null,
“created_by”: null,
“rdns”: null,
“is_editable”: false
}
],
“meta”: {
“offset”: 0,
“limit”: 1,
“total_count”: 1499,
“next”: "/api/v2/intelligence/?limit=1&modified_ts__gt=2023-04-08T19%3A46%3A42.345Z&order_by=update_id&status=active&type=ipv6&update_id__gt=0&search_after=17729579514",
« a pris » : 34
}
}
Indicateurs de poussée
API Endpoint: /api/v2/intelligence/
Method: PATCH
Request Body:
{
"meta": {
"classification": "private",
"allow_unresolved": true,
"allow_update": true,
"enrich": false
},
"objects": [
{
"url": "https://185.67.81.10",
"severity": "high",
"itype": "compromised_url",
"type": "url",
"tags": [
{
"name": "Netskope CE | MISp",
"tlp": "white"
},
{
"name": "netskope-test",
"tlp": "white"
}
]
}
]
}
Headers:
| Clé | Value |
|---|---|
| Authorization | apikey <username>:<password> |
| Content-Type | application/json |
| Accept | application/json |
| User-Agent | netskope-ce-6.0.1-cte-anomali-threatstream-xdr-v1.3.2 |
Sample API Response:
202 Accepted
Agent utilisateur
netskope-ce-6.0.1-cte-anomali-threatstream-xdr-v1.3.2
Workflow
- Obtenez vos identifiants Anomali ThreatStream XDR.
- Configurez le plugin Anomali ThreatStream XDR.
- Configurez une règle de gestion pour Anomali ThreatStream XDR.
- Configurez le partage entre Netskope et Anomali ThreatStream XDR.
- Validez le plugin Anomali ThreatStream XDR.
Regardez une vidéo
Cliquer sur « play » pour regarder une vidéo.
Obtenez vos identifiants Anomali ThreatStream XDR
Contactez votre équipe d'assistance Anomali pour obtenir votre URL de base, votre nom d'utilisateur et votre clé API.
Configurer le plugin Anomali ThreatStream XDR
- Dans Cloud Exchange, accédez à Settings > Plugin Store.
- Recherchez et sélectionnez le plugin Anomali ThreatStream XDR v1.3.2 (CTE).

- Saisissez les informations de base :
- Configuration Name: Nom unique pour la configuration.
- Sync Interval: Laissez la valeur par défaut.
- Aging Criteria: Durée d'expiration du plugin en jours (par défaut : 90).
- Override Reputation: Définissez une valeur pour remplacer la réputation des indicateurs reçus de cette configuration.
- Enable SSL Validation: Activer la validation du certificat SSL.

- Cliquez sur Next et entrez les paramètres de configuration :
- Base URL: L'URL de base de l'API ThreatStream en fonction de votre instance Cloud ou sur site.
- Username: Nom d’utilisateur de la plateforme ThreatStream (utilisé lors de la connexion à la plateforme).
- API Key: Clé API récupérée depuis la plateforme ThreatStream Anomali XDR.
- Remote Observables: Select Oui ou Non pour récupérer les Observables à Distance.
- Type of Threat Data to pull: Select les données que vous souhaitez extraire. Le plugin prend en charge le filtrage de type et sous-type depuis Anomali pour les types IoC pris en charge dans Cloud Exchange.
- Minimum Confidence: Indiquez une valeur de confiance (dans une plage de 1 à 100). Les indicateurs de compromission (IoC) dont la confiance est supérieure ou égale à la valeur fournie seront extraits.
- Severity: Les IOC avec la sévérité fournie seront retirés.
- Status: Les indicateurs de compromission (IoC) ayant un statut correspondant seront récupérés.
- Tags: Les indicateurs correspondant aux balises seront extraits ; veuillez saisir un ou plusieurs noms de balises séparés par des virgules. Laisser vide pour extraire les IoC avec toutes les balises.
- Feed ID: Les indicateurs correspondant à l’identifiant du flux seront extraits, entrez des valeurs numériques séparées par une ou plusieurs virgules pour l’identifiant du flux. Gardez le vide pour extraire les IoC de tous les flux.
Note
- Lorsque plusieurs tags ou ID de flux sont ajoutés, le plugin extrait les données de chaque tag mentionné en utilisant l'opération OR.
- Si vous avez ajouté des étiquettes et des ID de flux dans le plugin pour extraire les données, les IoC seront extraits en utilisant l'opération AND entre les étiquettes et les ID de flux, c'est-à-dire Les IoC ne seront tirés que si l'identifiant de flux spécifié possède les balises mentionnées.
- Enable Polling: Garde Oui pour extraire les données, Garde Non si le plugin est utilisé pour pousser.
- Enable Tagging: Conservez « Oui » pour extraire les balises ainsi que tous les indicateurs de compromission (IoC) de la plateforme.
- Retraction Interval: Spécifiez le nombre de jours pendant lesquels la rétraction des indicateurs de compromission (IoC) doit être exécutée pour les indicateurs Anomali ThreatStream XDR. Remarque : ce paramètre s'applique uniquement à la version 5.1.0 de Cloud Exchange. ou plus tard, et si la rétractation des IoC est activée dans les paramètres d'échange de menaces.
- Initial Range: Nombre de jours : Menaces IoC pour tirer de la distance initiale.


- Cliquez Save. Votre configuration de plugin est affichée dans Plugins.

Configurer une règle métier Threat Exchange pour Anomali ThreatStream XDR
Pour partager les indicateurs récupérés dans Anomali ThreatStream XDR avec Cloud Exchange et vice versa, vous devrez disposer d'une règle de gestion qui filtrera les indicateurs que vous souhaitez partager.
Pour configurer une règle de gestion :
- Dans Threat Exchange, allez à Business Rules et cliquez sur Create New Rule.
- Ajoutez le filtre selon vos exigences dans la règle, puis cliquez sur Save.

Configurer le partage pour Netskope et Anomali ThreatStream XDR
Pour partager des IoC entre Cloud Exchang et la plateforme Anomali ThreatStream XDR, ou vice versa, suivez les étapes suivantes :
- Dans Threat Exchange, allez à Sharing et cliquez sur Add Sharing Configuration.
- Select votre configuration de la source (Netskope CTE), la règle de gestion, la configuration de la destination (Anomali ThreatStream XDR) et la cible.

- Select these parameters:
- URL iType: Select l'iType que vous souhaitez attribuer à votre URL.
- IP iType: Select l'iType que vous souhaitez attribuer à votre IP.
- IPv6 iType: Select l'iType que vous souhaitez attribuer à votre IPv6.
- Domain iType: Select l'iType que vous souhaitez attribuer à votre domaine.
- Hash[MD5, SHA256] iType: Select le iType que vous souhaitez attribuer à votre Hash [MD5, SHA256].
- Suivez les mêmes étapes, mais vice versa, pour partager les IoCs Anomali ThreatStream XDR avec Netskope. Sélectionnez votre configuration source comme Anomali ThreatStream XDR, Business Rule, Configuration de destination (Netskope CTE), et Target. Reportez-vous au guide du plugin Netskope pour plus de détails.
- Cliquez sur Save.

Valider le plugin Anomali ThreatStream XDR
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 configuration name>".




Pour vérifier les journaux tirés dans Cloud Exchange, allez sur Logging et recherchez les journaux du plugin CTE Anomali ThreatStream XDR.

Pour vérifier les données disponibles pour l’extraction d’Anomali ThreatStream XDR, rendez-vous sur Analyze > Observables.

Pour vérifier les IoC rétractés, vérifiez les journaux pour l'exemple de rétractation d'IoC : message Like CTE Anomali ThreatStream XDR [CTE Anomali ThreatStream XDR] [Retraction] :

Vous pouvez filtrer les IoCs rétractés de la plateforme en utilisant le filtre : sources.source Is equal "<plugin configuration name>" && sources.retracted Is equal true

Note
Les objets de contrôle qui tombent sous l'intervalle de rétractation seront marqués comme rétractés : Oui dans Cloud Exchange.

Vous pouvez voir ici que les IoC ont été ajoutés à la liste des URL sur Netskope Tenant.

Ensuite, certains IoC partagés ont été marqués comme rétractés et ont donc été supprimés de la liste des URL.

Note
Anomali ne prend pas en charge la suppression (rétractation) des certificats de conformité sur sa plateforme. Par conséquent, les certificats d'origine précédemment partagés ne seront pas supprimés (rétractés) sur Anomali.
Valider le push
Les IoC partagés avec Anomali peuvent être vérifiés à partir des journaux disponibles à l'adresse Logging dans Cloud Exchange.

Note
Anomali a une limite d'ingestion de 10MB de données en un cycle de poussée, donc si les données à ingérer sont plus de 10MB, elles seront divisées en morceaux de 10MB à pousser.
Sur la plateforme Anomali, rendez-vous sur Analyze > Observables, IOC. Les IoC poussés à partir de Cloud Exchange auront Netskope-ce ajouté comme balise.
Note
Tous les IoCs poussés depuis Cloud Exchange auront une visibilité privée, comme My Organization, et ne feront pas partie de la communauté Anomali.






Note
Vous pouvez également utiliser le label source IoC pour filtrer les IOC partagés en fonction du plugin source. Par exemple, pour filtrer les IoC partagés qui ont été tirés du locataire Netskope, vous pouvez utiliser ce filtre comme balise :
Format de la balise : "Netskope CE |<source plugin name>"

Dépannage du plugin Anomali ThreatStream
Impossible d'extraire les IoCs de la plateforme Anomali ThreatStream
Après la configuration du plugin, si les IoC ne sont pas extraits de la plateforme, cela peut être dû à l'une des raisons suivantes :
- Aucun IoC n'est disponible sur la plateforme.
- Les objets virtuels ne sont pas disponibles pour la période donnée ou ne correspondent pas aux paramètres de configuration.
What to do: Identifiez la cause première mentionnée ci-dessus, puis suivez l'une des deux sections suivantes pour résoudre le problème.
No IoCs are available on the platform to pull
Vérifiez si les IoC sont disponibles sur la plateforme pour être extraits. Si disponible, consultez la résolution mentionnée dans la section suivante.
Les IoC ne sont pas disponibles pour l'intervalle de temps donné
Si les IoC sont disponibles sur la plateforme à extraire, mais que le plugin n'a pas extrait les IoC dans Cloud Exchange, vérifiez le nombre de jours mentionné dans le paramètre de la plage initiale de la configuration du plugin. Sur la plateforme Anomali, vérifiez si vous disposez de données pour la période donnée.


Si les données sont toujours disponibles pour la période donnée, il est possible que les IoCs pour le filtre fourni dans la configuration du plugin ne soient pas disponibles, vérifiez donc les valeurs du paramètre de configuration du plugin et filtrez de la même manière sur la plateforme Anomali.
Assurez-vous également que vous avez sélectionné Yes dans le polling enable pour tirer les IoCs.

Impossible de pousser les IoCs vers Anomali
Si vous ne parvenez pas à déployer les IoC sur la plateforme et que vous recevez une erreur lors du déploiement, cela peut être dû à des autorisations insuffisantes pour l'utilisateur.

Les IoCs sont poussés depuis CE mais ne sont pas disponibles sur la plateforme Anomali.
Si les IoC sont poussés et ne sont pas reflétés sur la plateforme, cela peut être dû au fait que le nombre d'IoC est trop important. Lorsque des données sont communiquées à Anomali, il faut parfois un certain temps pour qu'elles soient prises en compte sur la plateforme. Au maximum, 10 Mo de données peuvent être partagés dans une page à la fois.
What to do: Les données poussées seront reflétées, mais cela peut prendre un certain temps, parfois quelques minutes, parfois quelques heures, nous vous conseillons donc d'attendre que les données soient reflétées.
Comportements connus
Les éléments suivants ont été constatés lors de la vérification du plugin workflow.
- Parfois, plusieurs IoC pour un seul enregistrement sont créés sur la plateforme ThreatStream d'Anomali après que les IoC ont été partagés.
- Parfois, les IoCs ingérés prennent du temps à se refléter sur la plateforme d'Anomali après que les IoCs aient été poussés. Cela peut prendre quelques minutes ou, dans certains cas, quelques heures.
- La gravité inconnue de Cloud Exchange n'est pas mappée dans Anomali, donc lorsque des IoC sont partagés avec une gravité inconnue, la plateforme calcule sa propre gravité et l'assigne à l'IoC.
- L'iType des objets de confiance ne sera pas mis à jour si les objets de confiance sont partagés à nouveau avec un iType mis à jour.
- Parfois, si un IoC avec une valeur correspondante existe déjà sur la plateforme Anomali ThreatStream en tant qu'indicateur expiré, la plateforme ne modifie pas ou ne met pas à jour l'IoC existant, même lorsqu'un appel API est effectué avec succès pour pousser le même IoC.
- Certaines URL partagées via des appels API peuvent ne pas s'afficher dans l'interface utilisateur d'Anomali ThreatStream, bien qu'elles aient été acceptées par l'API. Cela peut être dû à un filtrage ou à une validation supplémentaire appliquée du côté de la plateforme.
- Anomali API fournit plusieurs objets IoC dans la réponse API, et dans certains cas, les valeurs IoC sont les mêmes, mais d'autres paramètres comme la sévérité, la réputation, etc. sont différents.

