FortiAnalyzer
Integrationsversion: 5.0
FortiAnalyzer-Integration in Google Security Operations konfigurieren
Eine detaillierte Anleitung zum Konfigurieren einer Integration in Google SecOps finden Sie unter Integrationen konfigurieren.
Integrationsparameter
Verwenden Sie die folgenden Parameter, um die Integration zu konfigurieren:
Anzeigename des Parameters | Typ | Standardwert | Ist obligatorisch | Beschreibung |
---|---|---|---|---|
API-Stamm | String | https://{ip address} | Ja | API-Stammverzeichnis der FortiAnalyzer-Instanz. |
Nutzername | String | – | Ja | Nutzername des FortiAnalyzer-Kontos. |
Passwort | Passwort | – | Ja | Das Passwort des FortiAnalyzer-Kontos. |
SSL überprüfen | Kästchen | Aktiviert | Ja | Wenn diese Option aktiviert ist, wird geprüft, ob das SSL-Zertifikat für die Verbindung zum FortiAnalyzer gültig ist. |
Aktionen
Benachrichtigung kommentieren
Beschreibung
Fügen Sie der Benachrichtigung in FortiAnalyzer einen Kommentar hinzu.
Parameter
Anzeigename des Parameters | Typ | Standardwert | Ist obligatorisch | Beschreibung |
---|---|---|---|---|
Benachrichtigungs-ID | String | – | Ja | Geben Sie die ID der zu aktualisierenden Benachrichtigung an. |
Kommentar | String | – | Ja | Geben Sie den Kommentar für die Benachrichtigung an. |
Ausführen am
Diese Aktion wird nicht für Elemente ausgeführt.
Aktionsergebnisse
Scriptergebnis
Name des Scriptergebnisses | Wertoptionen | Beispiel |
---|---|---|
is_success | Wahr/falsch | is_success=False |
JSON-Ergebnis
{
"jsonrpc": "2.0",
"id": "string",
"result": {
"status": "done"
}
}
Fall-Repository
Ergebnistyp | Wert / Beschreibung | Typ |
---|---|---|
Ausgabemeldung* | Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen. Wenn zurückgegebene Informationen (is_success=true): „Successfully added a comment to the alert with ID {id} in FortiAnalyzer.“ (Dem Alert mit der ID {id} in FortiAnalyzer wurde erfolgreich ein Kommentar hinzugefügt.) Die Aktion sollte fehlschlagen und die Playbook-Ausführung beenden: Wenn ein schwerwiegender Fehler gemeldet wird, z. B. falsche Anmeldedaten, keine Verbindung zum Server oder ein anderer Fehler: „Fehler beim Ausführen der Aktion ‚Kommentar zur Benachrichtigung hinzufügen‘. Grund: {0}''.format(error.Stacktrace) Wenn die Benachrichtigung nicht gefunden wird: „Fehler beim Ausführen der Aktion ‚Kommentar zur Benachrichtigung hinzufügen‘. Grund: Die Warnmeldung mit der ID {alert id} wurde in FortiAnalyzer nicht gefunden. Bitte überprüfen Sie die Rechtschreibung.“ |
Allgemein |
Entitäten anreichern
Beschreibung
Entitäten mit Informationen aus FortiAnalyzer anreichern Unterstützte Einheiten: Hostname, IP-Adresse.
Parameter
–
Ausführen am
Diese Aktion wird für die folgenden Einheiten ausgeführt:
- Hostname
- IP-Adresse
Aktionsergebnisse
Scriptergebnis
Name des Scriptergebnisses | Wertoptionen | Beispiel |
---|---|---|
is_success | Wahr/falsch | is_success=False |
JSON-Ergebnis
{
"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
}
Entitätsanreicherung – Präfix „FortiAn_“
Name des Anreicherungsfelds | Quelle (JSON-Schlüssel) | Logik – Wann anwenden? |
---|---|---|
adm_usr | adm_usr | Wenn in JSON verfügbar |
Build | Build | Wenn in JSON verfügbar |
ip | ip | Wenn in JSON verfügbar |
last_checked | last_checked | Wenn in JSON verfügbar |
last_resync | last_resync | Wenn in JSON verfügbar |
Name | Name | Wenn in JSON verfügbar |
sn | sn | Wenn in JSON verfügbar |
os_type | os_type | Wenn in JSON verfügbar |
os_ver | os_ver | Wenn in JSON verfügbar |
patch | patch | Wenn in JSON verfügbar |
platform\_str | platform\_str | Wenn in JSON verfügbar |
Version | Version | Wenn in JSON verfügbar |
Ab | Ab | Wenn in JSON verfügbar |
Fall-Repository
Ergebnistyp | Wert / Beschreibung | Typ |
---|---|---|
Ausgabemeldung* | Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen. Wenn Daten für eine Entität verfügbar sind (is_success=true): „Successfully enriched the following entities using information from FortiAnalyzer: {entity.identifier}“ (Die folgenden Entitäten wurden mit Informationen aus FortiAnalyzer angereichert: {entity.identifier}). Wenn für ein Element keine Daten verfügbar sind (is_success=true): „Die Aktion konnte die folgenden Elemente nicht mit Informationen aus FortiAnalyzer anreichern: {entity.identifier}“ Wenn für nicht alle Entitäten Daten verfügbar sind (is_success=false): „None of the provided entities were enriched.“ (Keine der angegebenen Entitäten wurde angereichert.) Die Aktion sollte fehlschlagen und die Playbook-Ausführung beenden: Wenn ein schwerwiegender Fehler gemeldet wird, z. B. falsche Anmeldedaten, keine Verbindung zum Server oder ein anderer Fehler: „Fehler beim Ausführen der Aktion ‚Enrich Entities‘.“ Grund: {0}''.format(error.Stacktrace) |
Allgemein |
Tabelle „Fall-Repository“ | Titel: {entity.identifier} Spalten: Schlüsselwert |
Entität |
Ping
Beschreibung
Testen Sie die Verbindung zu FortiAnalyzer mit Parametern, die auf der Seite für die Integrationskonfiguration auf dem Tab „Google Security Operations Marketplace“ angegeben sind.
Parameter
–
Ausführen am
Diese Aktion wird nicht für Elemente ausgeführt und hat keine obligatorischen Eingabeparameter.
Aktionsergebnisse
Scriptergebnis
Name des Scriptergebnisses | Wertoptionen | Beispiel |
---|---|---|
is_success | Wahr/falsch | is_success=False |
JSON-Ergebnis
N/A
Fall-Repository
Ergebnistyp | Wert / Beschreibung | Typ |
---|---|---|
Ausgabemeldung* | Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen. Bei Erfolg: „Successfully connected to the BitSight server with the provided connection parameters!“ (Die Verbindung zum BitSight-Server mit den angegebenen Verbindungsparametern wurde hergestellt.) Die Aktion sollte fehlschlagen und die Playbook-Ausführung beenden: Wenn dies nicht gelingt: „Failed to connect to the BitSight server! Fehler: {0}".format(exception.stacktrace) |
Allgemein |
Suchprotokolle
Beschreibung
Suchen Sie in FortiAnalyzer nach Logs.
Parameter
Anzeigename des Parameters | Typ | Standardwert | Ist obligatorisch | Beschreibung |
---|---|---|---|---|
Logtyp | DDL | Traffic Mögliche Werte:
|
Nein | Geben Sie den Logtyp an, der durchsucht werden soll. |
Filter mit Berücksichtigung der Groß-/Kleinschreibung | Kästchen | Deaktiviert | Nein | Wenn diese Option aktiviert ist, wird bei Filtern zwischen Groß- und Kleinschreibung unterschieden. |
Abfragefilter | String | – | Nein | Geben Sie den Abfragefilter für die Suche an. |
Geräte-ID | String | All\_Fortigate | Nein | Geben Sie die ID des Geräts an, das gesucht werden soll. Wenn nichts angegeben wird, wird in „All_Fortigate“ gesucht. Beispiele für Werte: All_FortiGate, All_FortiMail, All_FortiWeb, All_FortiManager, All_Syslog, All_FortiClient, All_FortiCache, All_FortiProxy, All_FortiAnalyzer, All_FortiSandbox, All_FortiAuthenticator, All_FortiDDoS |
Zeitraum | DDL | Letzter Monat Mögliche Werte:
|
Nein | Geben Sie einen Zeitraum für die Ergebnisse an. Wenn „Benutzerdefiniert“ ausgewählt ist, müssen Sie auch den Parameter „Startzeit“ angeben. |
Beginn | String | – | Nein | Geben Sie die Startzeit für die Ergebnisse an. Dieser Parameter ist erforderlich, wenn für den Parameter „Zeitrahmen“ die Option „Benutzerdefiniert“ ausgewählt ist. Format: ISO 8601 |
Ende | String | – | Nein | Geben Sie die Endzeit für die Ergebnisse an. Format: ISO 8601. Wenn nichts angegeben ist und für den Parameter „Zeitrahmen“ die Option „Benutzerdefiniert“ ausgewählt ist, wird für diesen Parameter die aktuelle Zeit verwendet. |
Zeitliche Reihenfolge | DDL | DESC Mögliche Werte:
|
Nein | Geben Sie die zeitliche Reihenfolge in der Suche an. |
Maximale Anzahl zurückzugebender Logs | Ganzzahl | 20 | Nein | Geben Sie die Anzahl der Protokolle an, die zurückgegeben werden sollen. Standard: 20. Maximum: 1.000 |
Ausführen am
Diese Aktion wird nicht für Elemente ausgeführt.
Aktionsergebnisse
Scriptergebnis
Name des Scriptergebnisses | Wertoptionen | Beispiel |
---|---|---|
is_success | Wahr/falsch | is_success=False |
JSON-Ergebnis
{
"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"
}
Fall-Repository
Ergebnistyp | Wert / Beschreibung | Typ |
---|---|---|
Ausgabemeldung* | Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen. Wenn zurückgegebene Informationen (is_success=true): „Successfully retrieved logs for the provided criteria in FortiAnalyzer.“ (Protokolle für die angegebenen Kriterien in FortiAnalyzer wurden erfolgreich abgerufen.) Wenn keine Informationen zurückgegeben werden (is_success=true): „No logs were found for the provided criteria in FortiAnalyzer.“ (Für die angegebenen Kriterien wurden in FortiAnalyzer keine Protokolle gefunden.) Die Aktion sollte fehlschlagen und die Playbook-Ausführung beenden: Wenn ein schwerwiegender Fehler gemeldet wird, z. B. falsche Anmeldedaten oder keine Verbindung zum Server, wird folgende Meldung angezeigt: „Fehler beim Ausführen der Aktion ‚Protokolle durchsuchen‘. Grund: {0}''.format(error.Stacktrace) Wenn in der Antwort ein Fehler gemeldet wird: „Error executing action ‚Search Logs‘. Grund: {0}''.format(error/message)" |
Allgemein |
Benachrichtigung aktualisieren
Beschreibung
Aktualisieren Sie eine Benachrichtigung in FortiAnalyzer.
Parameter
Anzeigename des Parameters | Typ | Standardwert | Ist obligatorisch | Beschreibung |
---|---|---|---|---|
Benachrichtigungs-ID | String | – | Ja | Geben Sie die ID der zu aktualisierenden Benachrichtigung an. |
Bestätigungsstatus | DDL | Wählen Sie eine Option aus. Mögliche Werte:
|
Nein | Geben Sie den Bestätigungsstatus für die Benachrichtigung an. |
Als gelesen markieren | Kästchen | Deaktiviert | Nein | Wenn diese Option aktiviert ist, wird die Benachrichtigung durch die Aktion als gelesen markiert. |
Zuweisen zu | String | – | Nein | Geben Sie an, wem die Benachrichtigung zugewiesen werden soll. |
Ausführen am
Diese Aktion wird nicht für Elemente ausgeführt.
Aktionsergebnisse
Scriptergebnis
Name des Scriptergebnisses | Wertoptionen | Beispiel |
---|---|---|
is_success | Wahr/falsch | is_success=False |
JSON-Ergebnis
{
"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"
}
Fall-Repository
Ergebnistyp | Wert / Beschreibung | Typ |
---|---|---|
Ausgabemeldung* | Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen. Wenn zurückgegebene Informationen (is_success=true): „Successfully updated alert with ID {alert id} in FortiAnalyzer.“ (Die Benachrichtigung mit der ID {alert id} wurde in FortiAnalyzer aktualisiert.) Die Aktion sollte fehlschlagen und die Playbook-Ausführung beenden: Wenn ein schwerwiegender Fehler gemeldet wird, z. B. falsche Anmeldedaten oder keine Verbindung zum Server: „Fehler beim Ausführen der Aktion ‚Benachrichtigung aktualisieren‘. Grund: {0}''.format(error.Stacktrace) Wenn die Benachrichtigung nicht gefunden wird: „Fehler beim Ausführen der Aktion ‚Benachrichtigung aktualisieren‘. Grund: Die Warnmeldung mit der ID {alert id} wurde in FortiAnalyzer nicht gefunden. Bitte überprüfen Sie die Rechtschreibung.“ Wenn der Parameter „Acknowledge Status“ auf „Select One“ (Auswählen) festgelegt ist, der Parameter „Mark as Read“ (Als gelesen markieren) auf „False“ (Falsch) festgelegt ist und im Parameter „Assign To“ (Zuweisen an) nichts angegeben ist: „Error executing action ‚Update Alert‘“ (Fehler beim Ausführen der Aktion ‚Update Alert‘). Grund: Mindestens einer der Parameter „Acknowledge Status“, „Mark As Read“ oder „Assign To“ sollte einen Wert haben.“ |
Allgemein |
Connectors
FortiAnalyzer – Alerts Connector
Beschreibung
Informationen zu Warnungen aus FortiAnalyzer abrufen
FortiAnalyzer-Alerts-Connector in Google SecOps konfigurieren
Eine ausführliche Anleitung zum Konfigurieren eines Connectors in Google SecOps finden Sie unter Connector konfigurieren.
Connector-Parameter
Verwenden Sie die folgenden Parameter, um den Connector zu konfigurieren:
Anzeigename des Parameters | Typ | Standardwert | Ist obligatorisch | Beschreibung |
---|---|---|---|---|
Produktfeldname | String | siemplify_type | Ja | Geben Sie den Namen des Quellfelds ein, um den Namen des Produktfelds abzurufen. |
Name des Ereignisfelds | String | event_type | Ja | Geben Sie den Namen des Quellfelds ein, um den Namen des Ereignisfelds abzurufen. |
Name des Umgebungsfelds | String | "" | Nein | Beschreibt den Namen des Felds, in dem der Umgebungsname gespeichert ist. Wenn das Feld „environment“ nicht gefunden wird, ist die Umgebung die Standardumgebung. |
Regex-Muster für Umgebung | String | .* | Nein | Ein regulärer Ausdruck, der auf den Wert im Feld „Name des Umgebungsfelds“ angewendet wird. Der Standardwert ist „.*“, um alle Werte zu erfassen und unverändert zurückzugeben. Ermöglicht es dem Nutzer, das Feld „environment“ (Umgebung) über Regex-Logik zu bearbeiten. Wenn das reguläre Ausdrucksmuster null oder leer ist oder der Umgebungswert null ist, ist das endgültige Umgebungsergebnis die Standardumgebung. |
Zeitlimit für Script (Sekunden) | Ganzzahl | 180 | Ja | Zeitlimit für den Python-Prozess, in dem das aktuelle Skript ausgeführt wird. |
API-Stamm | String | https://{ip address} | Ja | API-Stammverzeichnis der FortiAnalyzer-Instanz. |
Nutzername | String | – | Ja | Nutzername des FortiAnalyzer-Kontos. |
Passwort | Passwort | – | Ja | Das Passwort des FortiAnalyzer-Kontos. |
Niedrigster abzurufender Schweregrad | String | Mittel | Nein | Der niedrigste Schweregrad, der zum Abrufen von Benachrichtigungen verwendet werden muss. Mögliche Werte: niedrig, mittel, hoch, kritisch. Wenn nichts angegeben ist, werden Warnungen mit allen Schweregraden aufgenommen. |
Maximale Stunden zurück | Ganzzahl | 1 | Nein | Anzahl der Stunden, ab denen Benachrichtigungen abgerufen werden sollen. |
Max. Anzahl der abzurufenden Benachrichtigungen | Ganzzahl | 20 | Nein | Anzahl der Warnungen pro Typ, die pro Connector-Iteration verarbeitet werden sollen. |
Dynamische Liste als Sperrliste verwenden | Kästchen | Deaktiviert | Ja | Wenn diese Option aktiviert ist, wird die dynamische Liste als Sperrliste verwendet. |
SSL überprüfen | Kästchen | Aktiviert | Ja | Wenn diese Option aktiviert ist, prüft der Connector, ob das SSL-Zertifikat für die Verbindung zum FortiAnalyzer-Server gültig ist. |
Proxyserveradresse | String | – | Nein | Die Adresse des zu verwendenden Proxyservers. |
Proxy-Nutzername | String | – | Nein | Der Proxy-Nutzername für die Authentifizierung. |
Proxy-Passwort | Passwort | – | Nein | Das Proxy-Passwort für die Authentifizierung. |
Connector-Regeln
Proxyunterstützung.
Der Connector unterstützt Proxys.
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten