Intégrer Anomali à Google SecOps

Ce document explique comment intégrer Anomali à Google Security Operations (Google SecOps).

Avant de commencer

Pour obtenir votre clé API personnelle, procédez comme suit :

  1. Connectez-vous à votre compte Anomali ThreatStream.

  2. Cliquez sur My API Keys (Mes clés API).

  3. Copiez la valeur de la clé API et collez-la dans le champ du paramètre "Clé API" de la boîte de dialogue Configurer l'instance dans Google SecOps.

Réseau

Fonction Port par défaut Direction Protocole
API Multivalues Sortant apikey

Paramètres d'intégration

Utilisez les paramètres suivants pour configurer l'intégration :

Nom du paramètre Type Valeur par défaut Est obligatoire Description
Nom de l'instance Chaîne N/A Non Nom de l'instance pour laquelle vous souhaitez configurer l'intégration.
Description Chaîne N/A Non Description de l'instance.
Racine de l'API Chaîne https://api.threatstream.com/api Oui Adresse de l'instance Anomali.
Nom d'utilisateur Chaîne user@domain.com Oui Adresse e-mail de l'utilisateur à utiliser pour se connecter à Anomali.
Mot de passe Mot de passe N/A Oui Mot de passe de l'utilisateur correspondant.
Clé API Chaîne N/A Oui Clé API générée dans la console AlienVault.
Exécuter à distance Case à cocher Décochée Non Cochez le champ pour exécuter l'intégration configurée à distance. Une fois cette option cochée, l'option permettant de sélectionner l'utilisateur distant (agent) s'affiche.

Pour savoir comment configurer une intégration dans Google SecOps, consultez Configurer des intégrations.

Vous pourrez apporter des modifications ultérieurement si nécessaire. Après avoir configuré une instance d'intégration, vous pouvez l'utiliser dans des playbooks. Pour en savoir plus sur la configuration et la prise en charge de plusieurs instances, consultez Prendre en charge plusieurs instances.

Actions

Pour en savoir plus sur les actions, consultez Répondre aux actions en attente depuis votre bureau et Exécuter une action manuelle dans votre demande.

Obtenir des informations sur les menaces

Enrichissez les entités à l'aide des informations d'Anomali ThreatStream. Entités compatibles : IP, URL, hachage, adresses e-mail (entités utilisateur correspondant à l'expression régulière d'adresse e-mail).

Paramètres

Nom du paramètre Type Valeur par défaut Est obligatoire Description
Limite Chaîne 10 Oui Spécifiez le nombre d'enregistrements à renvoyer par entité.
Seuil de gravité LDD

Moyenne

Valeurs possibles :

  • Très élevé
  • Élevée
  • Moyen
  • Faible
Non Spécifiez le seuil de gravité de l'entité pour qu'elle soit marquée comme suspecte. Si plusieurs enregistrements sont trouvés pour la même entité, l'action prendra en compte la gravité la plus élevée parmi tous les enregistrements disponibles.
Seuil de confiance Integer 50 Non Spécifiez le seuil de confiance pour l'entité, afin de la marquer comme suspecte. Remarque : La valeur maximale est de 100. Si plusieurs enregistrements sont trouvés pour l'entité, l'action prendra la moyenne. Les enregistrements actifs sont prioritaires. Valeur par défaut : 50.
Ignorer l'état "Faux positif" Case à cocher Décochée Non Si cette option est activée, l'action ignorera l'état de faux positif et marquera l'entité comme suspecte en fonction du seuil de gravité et du seuil de confiance. Si cette option est désactivée, l'action ne marquera jamais les entités faux positifs comme suspectes, qu'elles remplissent ou non les conditions de seuil de gravité et de seuil de confiance.

Exécution

Cette action s'exécute sur les entités suivantes :

  • Adresse IP
  • URL
  • Hash
  • Adresses e-mail (entités utilisateur correspondant à l'expression régulière d'adresse e-mail)

Résultats de l'action

Enrichissement d'entités
Nom Logique : quand les utiliser ?
id Renvoie s'il existe dans le résultat JSON
état Renvoie s'il existe dans le résultat JSON
itype Renvoie s'il existe dans le résultat JSON
expiration_time Renvoie s'il existe dans le résultat JSON
ip Renvoie s'il existe dans le résultat JSON
feed_id Renvoie s'il existe dans le résultat JSON
confiance Renvoie s'il existe dans le résultat JSON
uuid Renvoie s'il existe dans le résultat JSON
retina_confidence Renvoie s'il existe dans le résultat JSON
trusted_circle_ids Renvoie s'il existe dans le résultat JSON
source Renvoie s'il existe dans le résultat JSON
latitude Renvoie s'il existe dans le résultat JSON
type Renvoie s'il existe dans le résultat JSON
description Renvoie s'il existe dans le résultat JSON
tags Renvoie s'il existe dans le résultat JSON
threat_score Renvoie s'il existe dans le résultat JSON
source_confidence Renvoie s'il existe dans le résultat JSON
modification_time Renvoie s'il existe dans le résultat JSON
org_name Renvoie s'il existe dans le résultat JSON
asn Renvoie s'il existe dans le résultat JSON
creation_time Renvoie s'il existe dans le résultat JSON
tlp Renvoie s'il existe dans le résultat JSON
pays Renvoie s'il existe dans le résultat JSON
longitude Renvoie s'il existe dans le résultat JSON
de gravité, Renvoie s'il existe dans le résultat JSON
subtype Renvoie s'il existe dans le résultat JSON
Résultat du script
Nom du résultat du script Options de valeur Exemple
success Vrai ou faux success:False
Résultat JSON
    {
        "Entity": "ENTITY_ID",
        "EntityResult": {
            "Info": [{
                "source_created": null,
                "status": "inactive",
                "itype": "mal_domain",
                "expiration_ts": "2020-11-28T13:29:57.000Z",
                "ip": "192.0.2.1",
                "is_editable": false,
                "feed_id": 1111111,
                "update_id": 1111111111,
                "longitude": -0.1223454,
                "is_public": true,
                "threat_type": "malware",
                "workgroups": [],
                "rdns": null,
                "confidence": 11111,
                "uuid": "UUID",
                "retina_confidence": 1111111,
                "trusted_circle_ids": null,
                "id": 111111111111111110000,
                "source": "COVID19 Cyber Threat Coalition Blocklist - Domains",
                "owner_organization_id": 111,
                "import_session_id": null,
                "source_modified": null,
                "type": "domain",
                "sort": [1607193157800, "56224953198"],
                "description": null,
                "tags": [{
                    "id": "wu6",
                    "name": "Blocklist"
                }, {
                    "id": "pvj",
                    "name": "Coronavirus"
                }, {
                    "id": "01i",
                    "name": "COVID-19"
                }, {
                    "id": "o70",
                    "name": "Malicious"
                }, {
                    "id": "fk0",
                    "name": "Source:COVID19-Cyber-Threat-Coalition"
                }],
                "threatscore": 11111,
                "source_reported_confidence": 11111,
                "modified_ts": "2020-12-05T18:32:37.800Z",
                "org": "Namecheap",
                "asn": "11111111",
                "created_ts": "2020-10-29T13:33:24.904Z",
                "tlp": null,
                "is_anonymous": false,
                "latitude": 51.4964,
                "country": "GB",
                "can_add_public_tags": false,
                "value": "VALUE",
                "subtype": null,
                "meta": {
                    "registration_updated": "2020-10-24T22:16:59+00:00",
                    "detail2": "bifocals_deactivated_on_2020-12-05_18:30:00.085789",
                    "severity": "high",
                    "registration_created": "2020-10-24T22:16:42+00:00"
                },
                "resource_uri": "/api/v2/intelligence/"
            }],
            "Campaigns": [{
                "association_info": [{
                    "comment": null,
                    "created": "2020-10-29T13:33:29.200283",
                    "from_id": "ID"
                }],
                "can_add_public_tags": true,
                "circles": [],
                "created_ts": "2020-03-15T04:24:55.428496",
                "end_date": "2020-03-23T16:05:00.761000",
                "feed_id": 0,
                "id": "ID",
                "is_anonymous": true,
                "is_cloneable": "yes",
                "is_public": true,
                "modified_ts": "2021-02-02T02:38:19.892072",
                "name": "Coronavirus (COVID-19)",
                "objective": null,
                "organization": {
                    "id": 0,
                    "name": "Analyst",
                    "title": "Analyst"
                },
                "publication_status": "published",
                "published_ts": "2020-04-06T21:40:24.452312",
                "resource_uri": "/api/v1/campaign/",
                "source_created": null,
                "source_modified": null,
                "start_date": "2020-01-30T13:10:00.070000",
                "status": {
                    "display_name": "Ongoing",
                    "id": 1,
                    "resource_uri": "/api/v1/campaignstatus/1/"
                },
                "tags": ["Malware", "Fraud", "Phishing", "COVID-19", "Coronavirus", "Scams"],
                "tags_v2": [{
                    "id": "wqe",
                    "name": "Coronavirus"
                }, {
                    "id": "hlg",
                    "name": "COVID-19"
                }, {
                    "id": "74i",
                    "name": "Phishing"
                }, {
                    "id": "0y2",
                    "name": "Malware"
                }, {
                    "id": "u63",
                    "name": "Scams"
                }, {
                    "id": "1er",
                    "name": "Fraud"
                }],
                "tlp": "white",
                "uuid": "UUID",
                "workgroups": []
            }],
            "Tip": [{
                "all_circles_visible": true,
                "association_info": [{
                    "comment": null,
                    "created": "2020-10-29T13:33:29.212118",
                    "from_id": "ID"
                }],
                "body_content_type": "richtext",
                "campaign": null,
                "can_add_public_tags": true,
                "circles": [],
                "created_ts": "2020-03-19T04:23:35.714929",
                "feed_id": 0,
                "id": "ID",
                "is_anonymous": true,
                "is_cloneable": "yes",
                "is_editable": true,
                "is_email": false,
                "is_public": true,
                "modified_ts": "2021-02-02T02:38:20.061912",
                "name": "Coronavirus (COVID-19) Cyber Threats",
                "original_source": null,
                "original_source_id": null,
                "owner_org": {
                    "id": 0,
                    "name": "Analyst",
                    "title": "Analyst"
                },
                "parent": null,
                "published_ts": "2020-05-25T18:39:36.890647",
                "resource_uri": "/api/v1/ID/",
                "source_created": null,
                "source_modified": null,
                "starred_by_me": false,
                "starred_total_count": 5,
                "status": "published",
                "tags": ["Scams", "HCL-", "Malware"],
                "tags_v2": [{
                    "id": "ID",
                    "name": "Coronavirus"
                }, {
                    "id": "ID",
                    "name": "COVID-19"
                }, {
                    "id": "ID",
                    "name": "Phishing"
                }],
                "threat_actor": null,
                "tlp": "white",
                "ttp": null,
                "uuid": "UUID",
                "votes": {
                    "me": null,
                    "total": 0
                },
                "watched_by_me": false,
                "watched_total_count": 11111,
                "workgroups": []
            }],
            "Actors": [],
            "Incidents": [],
            "TTP": []
        }
    }
Mur des cas
Type de résultat Description Type
Message de sortie*

Si des données sont disponibles pour une entité (is_success=true) : "Successfully returned information about the following entities from Anomali ThreatStream: {entity.identifier}"

Si aucune donnée n'est disponible pour une entité (is_success=true) : "L'action n'a pas pu renvoyer d'informations sur les entités suivantes à partir d'Anomali ThreatStream : {entity.identifier}"

Si l'enrichissement n'est disponible pour aucune entité (is_success=false) : "Aucune entité n'a été enrichie.

Erreur critique (échec) : erreur lors de l'exécution de l'action "Get Threat Info". Motif : {error traceback}"

Général

Ping

Testez la connectivité à Anomali ThreatStream.

Paramètres

N/A

Exécution

Cette action s'exécute sur toutes les entités.

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
success Vrai ou faux success:False

Récupérez les associations liées à l'entité à partir d'Anomali ThreatStream.

Paramètres

Nom du paramètre Type Valeur par défaut Est obligatoire Description
Campagnes de retour Case à cocher Cochée Non Si cette option est activée, l'action récupérera les campagnes associées et les détails les concernant.
Renvoyer les bulletins de menaces Case à cocher Cochée Non Si cette option est activée, l'action récupère les bulletins de menace associés et les détails les concernant.
Acteurs de retour Case à cocher Cochée Non Si cette option est activée, l'action récupère les acteurs associés et les détails les concernant.
Renvoyer les modèles d'attaque Case à cocher Cochée Non Si cette option est activée, l'action récupère les modèles d'attaque associés et les détails les concernant.
Renvoyer les plans d'action Case à cocher Cochée Non Si cette option est activée, l'action récupère les plans d'action associés et les détails les concernant.
Identités de retour Case à cocher Cochée Non Si cette option est activée, l'action récupère les identités associées et les détails les concernant.
Incidents de retour Case à cocher Cochée Non Si cette option est activée, l'action récupère les incidents associés et les détails les concernant.
Infrastructure de retour Case à cocher Cochée Non Si cette option est activée, l'action récupère l'infrastructure associée et les détails la concernant.
Renvoyer les ensembles d'intrusion Case à cocher Cochée Non Si cette option est activée, l'action récupère les ensembles d'intrusion associés et les détails les concernant.
renvoi de logiciel malveillant Case à cocher Cochée Non Si cette option est activée, l'action récupère les logiciels malveillants associés et les détails les concernant.
Signatures de retour Case à cocher Cochée Non Si cette option est activée, l'action récupère les signatures associées et les détails les concernant.
Outils de retour Case à cocher Cochée Non Si cette option est activée, l'action récupérera les outils associés et les détails les concernant.
TTP de retour Case à cocher Cochée Non Si cette option est activée, l'action récupère les TTP associés et les détails les concernant.
Renvoyer les failles Case à cocher Cochée Non Si cette option est activée, l'action récupère les failles associées et les détails les concernant.
Créer une entité de campagne Case à cocher Décochée Non Si cette option est activée, l'action crée une entité à partir des associations de campagnes disponibles.
Créer l'entité "Actors" Case à cocher Décochée Non Si cette option est activée, l'action crée une entité à partir des associations d'acteurs disponibles.
Créer une entité de signature Case à cocher Décochée Non Si cette option est activée, l'action crée une entité à partir des associations de signatures disponibles.
Créer une entité de faille Case à cocher Décochée Non Si cette option est activée, l'action crée une entité à partir des associations de failles disponibles.
Nombre maximal d'associations à renvoyer Integer 5 Non Spécifiez le nombre d'associations à renvoyer par type.

Exécution

Cette action s'exécute sur les entités suivantes :

  • Hash
  • Adresse IP
  • URL
  • E-mail

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
success Vrai ou faux success:False
Résultat JSON
{
    "campaign": [
        {
            "name": "Example 1",
            "id": 1
        },
        {
            "name": "Example 2",
            "id": 2
        }
    ],
    "actor": [
        {
            "name": "Actor 1",
            "id": 1
        },
        {
            "name": "Actor 2",
            "id": 2
        }
    ],
    "attackpattern": [
        {
            "name": "Pattern 1",
            "id": 1
        },
        {
            "name": "Pattern 2",
            "id": 2
        }
    ],
    "courseofaction": [
        {
            "name": "Course of Action 1",
            "id": 1
        },
        {
            "name": "Course Of Action 2",
            "id": 2
        }
    ],
    "identity": [
        {
            "name": "Identity 1",
            "id": 1
        },
        {
            "name": "Identity 2",
            "id": 2
        }
    ],
    "incident": [
        {
            "name": "Incident 1",
            "id": 1
        },
        {
            "name": "Incident 2",
            "id": 2
        }
    ],
    "infrastructure": [
        {
            "name": "Infrustructure 1",
            "id": 1
        },
        {
            "name": "Infrustructure 2",
            "id": 2
        }
    ],
    "intrusionset": [
        {
            "name": "Intrusion set 1",
            "id": 1
        },
        {
            "name": "Intrusion set 2",
            "id": 2
        }
    ],
    "malware": [
        {
            "name": "Malware 1",
            "id": 1
        },
        {
            "name": "Malware 2",
            "id": 2
        }
    ],
    "signature": [
        {
            "name": "Signature 1",
            "id": 1
        },
        {
            "name": "Signature 2",
            "id": 2
        }
    ],
    "tool": [
        {
            "name": "Tool 1",
            "id": 1
        },
        {
            "name": "Tool 2",
            "id": 2
        }
    ],
    "ttp": [
        {
            "name": "TTP 1",
            "id": 1
        },
        {
            "name": "TTP 2",
            "id": 2
        }
    ],
    "vulnerability": [
        {
            "name": "Vulnerability 1",
            "id": 1
        },
        {
            "name": "Vulnerability 2",
            "id": 2
        }
    ],
}
Mur des cas
Type de résultat Description Type
Message de sortie*

L'action ne doit pas échouer ni arrêter l'exécution d'un playbook :

Si l'opération réussit et qu'au moins une association entre les entités est trouvée (is_success=true) : "Successfully retrieved related associations from Anomali" (Associations associées récupérées depuis Anomali)

Si aucune association n'est trouvée (is_success=false) : "Aucune association associée n'a été trouvée."

Message asynchrone : "En attente de la récupération de tous les détails de l'association"

L'action doit échouer et arrêter l'exécution d'un playbook :

Si une erreur fatale est signalée (par exemple, des identifiants incorrects, l'absence de connexion au serveur, etc.) : "Erreur lors de l'exécution de l'action "Obtenir l'association associée". Reason: {0}''.format(error.Stacktrace)

Général
Tableau du mur des cas

Nom du tableau : "Associations associées"

Colonnes du tableau :

  • ID
  • Nom
  • Type
  • État

Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.