FortiAnalyzer

Version de l'intégration : 5.0

Configurer l'intégration de FortiAnalyzer dans Google Security Operations

Pour obtenir des instructions détaillées sur la configuration d'une intégration dans Google SecOps, consultez Configurer des intégrations.

Paramètres d'intégration

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

Nom à afficher du paramètre Type Valeur par défaut Obligatoire Description
Racine de l'API Chaîne https://{ip address} Oui Racine de l'API de l'instance FortiAnalyzer.
Nom d'utilisateur Chaîne N/A Oui Nom d'utilisateur du compte FortiAnalyzer.
Mot de passe Mot de passe N/A Oui Mot de passe du compte FortiAnalyzer.
Vérifier le protocole SSL Case à cocher Cochée Oui Si cette option est activée, elle vérifie que le certificat SSL de la connexion à FortiAnalyzer est valide.

Actions

Ajouter un commentaire à une alerte

Description

Ajoutez un commentaire à l'alerte dans FortiAnalyzer.

Paramètres

Nom à afficher du paramètre Type Valeur par défaut Obligatoire Description
ID d'alerte Chaîne N/A Oui Spécifiez l'ID de l'alerte à mettre à jour.
Commentaire Chaîne N/A Oui Spécifiez le commentaire pour l'alerte.

Date d'exécution

Cette action ne s'applique pas aux entités.

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
is_success Vrai/Faux is_success=False
Résultat JSON
{
    "jsonrpc": "2.0",
    "id": "string",
    "result": {
        "status": "done"
    }
}
Mur des cas
Type de résultat Valeur / Description Type
Message de sortie*

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

Si les informations renvoyées sont les suivantes (is_success=true) : "Commentaire ajouté à l'alerte avec l'ID {id} dans FortiAnalyzer."

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 ou autre) : "Erreur lors de l'exécution de l'action "Ajouter un commentaire à l'alerte". Raison : {0}''.format(error.Stacktrace)"

Si l'alerte n'est pas trouvée : "Erreur lors de l'exécution de l'action "Ajouter un commentaire à l'alerte". Motif : l'alerte associée à l'ID {alert id} est introuvable dans FortiAnalyzer. Veuillez vérifier l'orthographe."

Général

Enrichir les entités

Description

Enrichissez les entités à l'aide des informations de FortiAnalyzer. Entités acceptées : nom d'hôte, adresse IP.

Paramètres

N/A

Date d'exécution

Cette action s'applique aux entités suivantes :

  • Nom d'hôte
  • Adresse IP

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
is_success Vrai/Faux is_success=False
Résultat JSON
{
    "adm_pass": [
        "ENC",
        "FLP+Dq8f3t2/S+GQ6DfPL2iRhtmk1CEZzEeH8+nVkRkFd72IUbBZM6uDyw0fQ1j1i28H1wtfqf6HlGEK2ubxs0rXE4L+Uqj433si+AmEF9gEB5gLw/4P5YYRkw/aOYF74k8/8bincoa31jBe0u0HWRNdWYQSyG7IWgvZGsPK4at0gwZI"
    ],
    "adm_usr": "admin",
    "app_ver": "",
    "av_ver": "",
    "beta": -1,
    "branch_pt": 1255,
    "build": 1255,
    "checksum": "",
    "conf_status": 0,
    "conn_mode": 0,
    "conn_status": 0,
    "db_status": 0,
    "desc": "",
    "dev_status": 0,
    "eip": "",
    "fap_cnt": 0,
    "faz.full_act": 0,
    "faz.perm": 15,
    "faz.quota": 0,
    "faz.used": 0,
    "fex_cnt": 0,
    "first_tunnel_up": 0,
    "flags": 2097152,
    "foslic_cpu": 0,
    "foslic_dr_site": 0,
    "foslic_inst_time": 0,
    "foslic_last_sync": 0,
    "foslic_ram": 0,
    "foslic_type": 0,
    "foslic_utm": 0,
    "fsw_cnt": 0,
    "ha_group_id": 0,
    "ha_group_name": "",
    "ha_mode": 0,
    "ha_slave": null,
    "hdisk_size": 0,
    "hostname": "",
    "hw_rev_major": 0,
    "hw_rev_minor": 0,
    "hyperscale": 0,
    "ip": "172.30.203.248",
    "ips_ext": 0,
    "ips_ver": "",
    "last_checked": 1665664693,
    "last_resync": 0,
    "latitude": "0.0",
    "lic_flags": 0,
    "lic_region": "",
    "location_from": "",
    "logdisk_size": 0,
    "longitude": "0.0",
    "maxvdom": 10,
    "mgmt.__data[0]": 0,
    "mgmt.__data[1]": 0,
    "mgmt.__data[2]": 0,
    "mgmt.__data[3]": 0,
    "mgmt.__data[4]": 0,
    "mgmt.__data[5]": 0,
    "mgmt.__data[6]": 0,
    "mgmt.__data[7]": 0,
    "mgmt_if": "",
    "mgmt_mode": 2,
    "mgmt_uuid": "1841991674",
    "mgt_vdom": "",
    "module_sn": "",
    "mr": 2,
    "name": "FGVMEV2YKQ61YQD5",
    "node_flags": 0,
    "nsxt_service_name": "",
    "oid": 181,
    "onboard_rule": null,
    "opts": 0,
    "os_type": 0,
    "os_ver": 7,
    "patch": 2,
    "platform_str": "FortiGate-VM64",
    "prefer_img_ver": "",
    "prio": 0,
    "private_key": "",
    "private_key_status": 0,
    "psk": "",
    "role": 0,
    "sn": "FGVMEV2YKQ61YQD5",
    "source": 2,
    "tab_status": "",
    "tunnel_cookie": "",
    "tunnel_ip": "",
    "vdom": [
        {
            "comments": null,
            "devid": "FGVMEV2YKQ61YQD5",
            "ext_flags": 0,
            "flags": 0,
            "name": "root",
            "node_flags": 0,
            "oid": 3,
            "opmode": 1,
            "rtm_prof_id": 0,
            "status": null,
            "tab_status": null,
            "vdom_type": 1,
            "vpn_id": 0
        }
    ],
    "version": 700,
    "vm_cpu": 0,
    "vm_cpu_limit": 0,
    "vm_lic_expire": 0,
    "vm_mem": 0,
    "vm_mem_limit": 0,
    "vm_status": 0
}
Enrichissement d'entités : préfixe FortiAn_
Nom du champ d'enrichissement Source (clé JSON) Logique : quand les utiliser ?
adm_usr adm_usr Lorsqu'il est disponible au format JSON
build build Lorsqu'il est disponible au format JSON
ip ip Lorsqu'il est disponible au format JSON
last_checked last_checked Lorsqu'il est disponible au format JSON
last_resync last_resync Lorsqu'il est disponible au format JSON
nom nom Lorsqu'il est disponible au format JSON
sn sn Lorsqu'il est disponible au format JSON
os_type os_type Lorsqu'il est disponible au format JSON
os_ver os_ver Lorsqu'il est disponible au format JSON
patch patch Lorsqu'il est disponible au format JSON
platform\_str platform\_str Lorsqu'il est disponible au format JSON
version version Lorsqu'il est disponible au format JSON
décroiss. décroiss. Lorsqu'il est disponible au format JSON
Mur des cas
Type de résultat Valeur / Description Type
Message de sortie*

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

Si des données sont disponibles pour une entité (is_success=true) : "Les entités suivantes ont été enrichies avec succès à l'aide des informations de FortiAnalyzer : {entity.identifier}".

Si les données ne sont pas disponibles pour une entité (is_success=true) : "L'action n'a pas pu enrichir les entités suivantes à l'aide des informations de FortiAnalyzer : {entity.identifier}"

Si les données ne sont pas disponibles pour toutes les entités (is_success=false) : "Aucune des entités fournies n'a été enrichie."

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, une absence de connexion au serveur ou autre) : "Erreur lors de l'exécution de l'action "Enrichir les entités". Raison : {0}''.format(error.Stacktrace)

Général
Tableau du mur des cas

Titre : {entity.identifier}

Colonnes :

Clé-valeur

Entité

Ping

Description

Testez la connectivité à FortiAnalyzer avec les paramètres fournis sur la page de configuration de l'intégration dans l'onglet "Marketplace" de Google Security Operations.

Paramètres

N/A

Date d'exécution

Cette action ne s'exécute pas sur les entités et ne comporte pas de paramètres d'entrée obligatoires.

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
is_success Vrai/Faux is_success=False
Résultat JSON
N/A
Mur des cas
Type de résultat Valeur / 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 : "La connexion au serveur BitSight a été établie avec succès à l'aide des paramètres de connexion fournis !"

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

Si l'opération échoue : "Échec de la connexion au serveur BitSight ! Error is {0}".format(exception.stacktrace)

Général

Journaux de recherche

Description

Recherchez des journaux dans FortiAnalyzer.

Paramètres

Nom à afficher du paramètre Type Valeur par défaut Obligatoire Description
Type de journal LDD

Trafic

Valeurs possibles :

  • Trafic
  • Contrôle des applications
  • Attaque
  • Contenu, protection contre la perte de données
  • Filtre de messagerie
  • Événement, Historique
  • Virus
  • Voix sur IP
  • Filtre Web
  • Netscan
  • Événement FCT
  • Trafic FCT
  • WAF
  • GTP
Non Spécifiez le type de journal à rechercher.
Filtre sensible à la casse Case à cocher Décochée Non Si cette option est activée, le filtre est sensible à la casse.
Filtre de requête Chaîne N/A Non Spécifiez le filtre de requête pour la recherche.
ID de l'appareil Chaîne All\_Fortigate Non

Spécifiez l'ID de l'appareil à rechercher.

Si aucune valeur n'est fournie, l'action effectue une recherche dans All_Fortigate.

Exemples de valeurs : All_FortiGate, All_FortiMail, All_FortiWeb, All_FortiManager, All_Syslog, All_FortiClient, All_FortiCache, All_FortiProxy, All_FortiAnalyzer, All_FortiSandbox, All_FortiAuthenticator, All_FortiDDoS

Période LDD

Le mois dernier

Valeurs possibles :

  • La dernière heure
  • Les 6 dernières heures
  • Dernières 24 heures
  • La semaine dernière
  • Le mois dernier
  • Personnalisé
Non

Spécifiez une période pour les résultats.

Si vous sélectionnez "Personnalisé", vous devez également fournir le paramètre "Heure de début".

Heure de début Chaîne N/A Non

Spécifiez l'heure de début des résultats.

Ce paramètre est obligatoire si l'option "Personnalisé" est sélectionnée pour le paramètre "Période".

Format : ISO 8601

Heure de fin Chaîne N/A Non

Spécifiez l'heure de fin des résultats.

Format : ISO 8601.

Si aucune valeur n'est fournie et que "Personnalisée" est sélectionné pour le paramètre "Période", ce paramètre utilise l'heure actuelle.

Ordre chronologique LDD

DESC

Valeurs possibles :

  • DESC
  • ASC
Non Spécifiez l'ordre chronologique dans la recherche.
Nombre maximal de journaux à renvoyer Integer 20 Non Spécifiez le nombre de journaux que vous souhaitez renvoyer. Par défaut : 20. Maximum : 1 000.

Date d'exécution

Cette action ne s'applique pas aux entités.

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
is_success Vrai/Faux is_success=False
Résultat JSON
{
    "sessionid": "29658",
    "srcip": "172.30.201.188",
    "dstip": "173.243.138.210",
    "srcport": "17453",
    "dstport": "443",
    "trandisp": "noop",
    "duration": "1",
    "proto": "6",
    "sentbyte": "216",
    "rcvdbyte": "112",
    "sentpkt": "4",
    "rcvdpkt": "2",
    "logid": "0001000014",
    "service": "HTTPS",
    "app": "HTTPS",
    "appcat": "unscanned",
    "srcintfrole": "undefined",
    "dstintfrole": "undefined",
    "eventtime": "1665752066921638736",
    "srccountry": "Reserved",
    "dstcountry": "Canada",
    "srcintf": "root",
    "dstintf": "port1",
    "dstowner": "540",
    "tz": "-0700",
    "devid": "FGVMEV2YKQ61YQD5",
    "vd": "root",
    "csf": "FortiNetFabric",
    "dtime": "2022-10-14 05:54:27",
    "itime_t": "1665752069",
    "devname": "FGVMEV2YKQ61YQD5"
}{
    "date": "2022-10-14",
    "time": "05:54:27",
    "id": "7154350659607724033",
    "itime": "2022-10-14 05:54:29",
    "euid": "102",
    "epid": "102",
    "dsteuid": "102",
    "dstepid": "102",
    "logver": "702021255",
    "type": "traffic",
    "subtype": "local",
    "level": "notice",
    "action": "close",
    "policyid": "0"
}
Mur des cas
Type de résultat Valeur / Description Type
Message de sortie*

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

Si les informations renvoyées sont les suivantes (is_success=true) : "Successfully retrieved logs for the provided criteria in FortiAnalyzer."

Si aucune information n'est renvoyée (is_success=true) : "Aucun journal n'a été trouvé pour les critères fournis dans FortiAnalyzer."

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, une absence de connexion au serveur ou autre), le message suivant s'affiche : "Erreur lors de l'exécution de l'action "Rechercher dans les journaux". Raison : {0}''.format(error.Stacktrace)"

Si une erreur est signalée dans la réponse : "Erreur lors de l'exécution de l'action "Rechercher dans les journaux". Reason: {0}''.format(error/message)"

Général

Mettre à jour l'alerte

Description

Mettez à jour une alerte dans FortiAnalyzer.

Paramètres

Nom à afficher du paramètre Type Valeur par défaut Obligatoire Description
ID d'alerte Chaîne N/A Oui Spécifiez l'ID de l'alerte à mettre à jour.
État de confirmation LDD

Sélectionnez une réponse

Valeurs possibles :

  • Sélectionnez une réponse
  • Confirmer
  • Annuler la confirmation
Non Spécifiez l'état d'accusé de réception de l'alerte.
Marquer comme lu Case à cocher Décochée Non Si cette option est activée, l'action marque l'alerte comme lue.
Attribuer à Chaîne N/A Non Indiquez à qui l'alerte doit être attribuée.

Date d'exécution

Cette action ne s'applique pas aux entités.

Résultats de l'action

Résultat du script
Nom du résultat du script Options de valeur Exemple
is_success Vrai/Faux is_success=False
Résultat JSON
{
    "alerttime": "1665653864",
    "logcount": "17",
    "alertid": "202210131000040003",
    "adom": "root",
    "epid": "1",
    "epname": "not implemented dev type",
    "subject": "desc:Trim local db",
    "euid": "1",
    "euname": "N/A",
    "devname": "fortianalyzer",
    "logtype": "event",
    "devtype": "FortiAnalyzer",
    "devid": "FAZ-VMTM22013516",
    "vdom": "_self_locallog_",
    "groupby1": "desc:Trim local db",
    "triggername": "Local Device Event",
    "tag": "Default,System,Local",
    "eventtype": "event",
    "severity": "medium",
    "extrainfo": "{ \"msg\": \"Requested to trim database tables older than 60 days to enforce the retention policy of Adom FortiAuthenticator.\" }",
    "ackflag": "no",
    "readflag": "yes",
    "filterkey": "3377053565526629289",
    "firstlogtime": "1665653864",
    "multiflag": "",
    "lastlogtime": "1665653887",
    "updatetime": "1665747977",
    "filtercksum": "2072153473",
    "filterid": "1",
    "assignto": "api_user",
    "ackby": "admin",
    "acktime": "1665747892"
}
Mur des cas
Type de résultat Valeur / Description Type
Message de sortie*

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

Si les informations renvoyées sont les suivantes (is_success=true) : "L'alerte portant l'ID {alert id} a bien été mise à jour dans FortiAnalyzer."

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, une absence de connexion au serveur ou autre) : "Erreur lors de l'exécution de l'action "Mettre à jour l'alerte". Raison : {0}''.format(error.Stacktrace)

Si l'alerte n'est pas trouvée : "Erreur lors de l'exécution de l'action "Mettre à jour l'alerte". Motif : l'alerte associée à l'ID {alert id} est introuvable dans FortiAnalyzer. Veuillez vérifier l'orthographe."

Si le paramètre "Acknowledge Status" (Accuser réception de l'état) est défini sur "Select One" (Sélectionner), le paramètre "Mark as Read" (Marquer comme lu) est défini sur "False" (Faux) et rien n'est fourni dans le paramètre "Assign To" (Attribuer à) : "Error executing action "Update Alert". Motif : au moins l'un des paramètres"Accuser réception", "Marquer comme lu " ou"Attribuer à" doit avoir une valeur.

Général

Connecteurs

Connecteur d'alertes FortiAnalyzer

Description

Extrayez des informations sur les alertes de FortiAnalyzer.

Configurer le connecteur d'alertes FortiAnalyzer dans Google SecOps

Pour obtenir des instructions détaillées sur la configuration d'un connecteur dans Google SecOps, consultez Configurer le connecteur.

Paramètres du connecteur

Utilisez les paramètres suivants pour configurer le connecteur :

Nom à afficher du paramètre Type Valeur par défaut Obligatoire Description
Nom du champ de produit Chaîne siemplify_type Oui Saisissez le nom du champ source pour récupérer le nom du champ produit.
Nom du champ d'événement Chaîne event_type Oui Saisissez le nom du champ source pour récupérer le nom du champ d'événement.
Nom du champ "Environnement" Chaîne "" Non

Décrit le nom du champ dans lequel le nom de l'environnement est stocké.

Si le champ "environment" (environnement) est introuvable, l'environnement est celui par défaut.

Modèle d'expression régulière de l'environnement Chaîne .* Non

Expression régulière à exécuter sur la valeur trouvée dans le champ "Nom du champ d'environnement".

La valeur par défaut est ".*" pour tout capturer et renvoyer la valeur inchangée.

Permet à l'utilisateur de manipuler le champ "environnement" à l'aide de la logique des expressions régulières.

Si le modèle d'expression régulière est nul ou vide, ou si la valeur d'environnement est nulle, l'environnement par défaut est utilisé comme résultat final.

Délai avant expiration du script (en secondes) Integer 180 Oui Délai avant expiration du processus Python exécutant le script actuel.
Racine de l'API Chaîne https://{ip address} Oui Racine de l'API de l'instance FortiAnalyzer.
Nom d'utilisateur Chaîne N/A Oui Nom d'utilisateur du compte FortiAnalyzer.
Mot de passe Mot de passe N/A Oui Mot de passe du compte FortiAnalyzer.
Gravité la plus faible à récupérer Chaîne Moyenne Non

Gravité minimale à utiliser pour récupérer les alertes.

Valeurs possibles : faible, moyenne, élevée, critique. Si rien n'est spécifié, le connecteur ingère les alertes de tous les niveaux de gravité.

Nombre maximal d'heures en arrière Integer 1 Non Nombre d'heures à partir desquelles récupérer les alertes.
Nombre maximal d'alertes à récupérer Integer 20 Non Nombre d'alertes par type à traiter par itération de connecteur.
Utiliser une liste dynamique comme liste noire Case à cocher Décochée Oui Si cette option est activée, la liste dynamique est utilisée comme liste noire.
Vérifier le protocole SSL Case à cocher Cochée Oui Si cette option est activée, le connecteur vérifie que le certificat SSL pour la connexion au serveur FortiAnalyzer est valide.
Adresse du serveur proxy Chaîne N/A Non Adresse du serveur proxy à utiliser.
Nom d'utilisateur du proxy Chaîne N/A Non Nom d'utilisateur du proxy pour l'authentification.
Mot de passe du proxy Mot de passe N/A Non Mot de passe du proxy pour l'authentification.

Règles du connecteur

Assistance de proxy

Le connecteur est compatible avec le proxy.

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