Fortinet FortiSIEM
Versione integrazione: 5.0
Configurare l'integrazione di Fortinet FortiSIEM in Google Security Operations
Per istruzioni dettagliate su come configurare un'integrazione in Google SecOps, vedi Configurare le integrazioni.
Parametri di integrazione
Utilizza i seguenti parametri per configurare l'integrazione:
| Nome visualizzato del parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
|---|---|---|---|---|
| Root API | Stringa | https://x.x.x.x:port | Sì | Specifica la radice dell'API per l'installazione di FortiSIEM di destinazione. |
| Nome utente | Stringa | N/D | Sì | Specifica il nome utente da utilizzare per l'installazione di FortiSIEM di destinazione. |
| Password | Password | N/D | Sì | Specifica la password da utilizzare per l'installazione di FortiSIEM di destinazione. |
| Verifica SSL | Casella di controllo | Selezionata | No | Se abilitato, il server Google SecOps verifica che il certificato sia configurato per la radice dell'API. |
Casi d'uso del prodotto
- Ingerisci gli avvisi da SIEM a Google SecOps.
- Utilizza i dati di SIEM per l'arricchimento degli avvisi di Google SecOps.
- Sincronizza gli stati di elaborazione con gli avvisi di Google SecOps sul lato SIEM.
Azioni
Dindin
Descrizione
Verifica la connettività a FortiSIEM con i parametri forniti nella pagina di configurazione dell'integrazione nella scheda Google Security Operations Marketplace.
Parametri
N/D
Run On
L'azione non viene eseguita sulle entità e non ha parametri di input obbligatori.
Risultati dell'azione
Risultato script
| Nome risultato script | Opzioni di valore | Esempio |
|---|---|---|
| is_success | Vero/Falso | is_success=False |
Risultato JSON
N/A
Arricchimento delle entità
N/D
Approfondimenti
N/D
Bacheca casi
| Tipo di risultato | Valore/Descrizione | Tipo |
|---|---|---|
| Messaggio di output* | L'azione non deve non riuscire né interrompere l'esecuzione di un playbook: Se l'operazione va a buon fine: "Connessione all'installazione di FortiSIEM riuscita con i parametri di connessione forniti." L'azione deve non riuscire e interrompere l'esecuzione di un playbook: >Se non va a buon fine: "Failed to connect to the FortiSIEM installation! Errore: {0}".format(exception.stacktrace)" |
Generale |
Arricchisci entità
Descrizione
Arricchisci le entità utilizzando le informazioni di Fortinet FortiSIEM CMDB. Entità supportate: nome host, indirizzo IP.
Parametri
| Nome visualizzato del parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
|---|---|---|---|---|
| Organizzazione target | Stringa | N/D | No | Specifica il nome dell'organizzazione di destinazione facoltativa per cercare informazioni sull'arricchimento solo in questa organizzazione. |
Run On
Questa azione viene eseguita sulle seguenti entità:
- Nome host
- Indirizzo IP
Risultati dell'azione
Risultato script
| Nome risultato script | Opzioni di valore | Esempio |
|---|---|---|
| is_success | Vero/Falso | is_success=False |
Risultato JSON
[
{
"Entity": "centos-xxx",
"EntityResult": {
"device": {
"organization": {
"@id": "1xx",
"@name": "Super"
},
"accessIp": "172.30.xxx.xxx",
"approved": "true",
"components": null,
"creationMethod": "LOG",
"deviceType": {
"accessProtocols": "TELNET,SSH",
"jobWeight": "10",
"model": "Unix",
"vendor": "Generic",
"version": "ANY"
},
"discoverMethod": "LOG",
"discoverTime": "1640008485000",
"eventParserList": null,
"interfaces": null,
"ipToHostNames": null,
"luns": null,
"name": "centos-xxx",
"naturalId": "centos%2dxxx",
"processors": null,
"properties": {
"customproperty": [
{
"matched": "false",
"propertyDef": {
"displayInCMDB": "false",
"displayName": "Importance",
"groupKey": "false",
"propertyName": "importance",
"subValueType": "STRING",
"valueType": "STRING"
},
"propertyName": "importance",
"propertyValue": "Normal",
"updated": "false"
},
{
"matched": "false",
"propertyDef": {
"displayInCMDB": "false",
"displayName": "Location Name",
"groupKey": "false",
"propertyName": "locationName",
"subValueType": "STRING",
"valueType": "STRING"
},
"propertyName": "locationName",
"updated": "false"
}
]
},
"raidGroups": null,
"sanControllerPorts": null,
"softwarePatches": null,
"softwareServices": null,
"status": "2",
"storageGroups": null,
"storages": null,
"unmanaged": "false",
"updateMethod": "LOG",
"version": "ANY",
"winMachineGuid": null
}
}
},
{
"Entity": "172.30.xxx.xxx",
"EntityResult": {
"device": {
"organization": {
"@id": "1xx",
"@name": "Super"
},
"accessIp": "172.30.xxx.xxx",
"applications": null,
"approved": "true",
"components": null,
"creationMethod": "LOG",
"deviceType": {
"accessProtocols": "TELNET,SSH",
"jobWeight": "10",
"model": "Unix",
"vendor": "Generic",
"version": "ANY"
},
"discoverMethod": "LOG",
"discoverTime": "1640070721000",
"eventParserList": {
"eventparser": {
"deviceType": {
"category": "Appliance",
"jobWeight": "10",
"model": "Generic",
"vendor": "Generic",
"version": "ANY"
},
"enabled": "true",
"name": "SyslogNGParser",
"parserXml": "<patternDefinitions><pattern>..."
}
},
"interfaces": null,
"ipToHostNames": null,
"luns": null,
"name": "centos-xxx",
"naturalId": "centos",
"primaryContactUser": "0",
"processors": null,
"properties": {
"customproperty": [
{
"matched": "false",
"propertyDef": {
"displayInCMDB": "false",
"displayName": "Importance",
"groupKey": "false",
"propertyName": "importance",
"subValueType": "STRING",
"valueType": "STRING"
},
"propertyName": "importance",
"propertyValue": "Mission Critical",
"updated": "false"
},
{
"matched": "false",
"propertyDef": {
"displayInCMDB": "false",
"displayName": "Location Name",
"groupKey": "false",
"propertyName": "locationName",
"subValueType": "STRING",
"valueType": "STRING"
},
"propertyName": "locationName",
"updated": "false"
}
]
},
"raidGroups": null,
"sanControllerPorts": null,
"secondaryContactUser": "0",
"softwarePatches": null,
"softwareServices": null,
"status": "2",
"storageGroups": null,
"storages": null,
"unmanaged": "false",
"updateMethod": "MANUAL",
"version": "ANY",
"winMachineGuid": null
}
}
}
]
Arricchimento delle entità
| Nome campo di arricchimento | Origine (chiave JSON) | Logica - Quando applicarla |
|---|---|---|
| accessIp | accessIp | Quando disponibile in XML |
| nome | nome | Quando disponibile in XML |
| applicazioni | CSV di "applications/name" | Quando disponibile in XML |
| creationMethod | creationMethod | Quando disponibile in XML |
| deviceType_model | deviceType_model | Quando disponibile in XML |
deviceType_accessProtocols deviceType_vendor |
deviceType_accessProtocols deviceType_vendor |
Quando disponibile in XML |
| discoverMethod | discoverMethod | Quando disponibile in XML |
| discoverTime | discoverTime | Quando disponibile in XML |
Approfondimenti
N/D
Bacheca casi
| Tipo di risultato | Valore/Descrizione | Tipo |
|---|---|---|
| Messaggio di output* | L'azione non deve non riuscire né interrompere l'esecuzione di un playbook: Se i dati sono disponibili per un'entità (is_success=true): "Le seguenti entità sono state arricchite correttamente utilizzando le informazioni di FortiSIEM: {entity.identifier}." Se i dati non sono disponibili per un'entità (is_success=true): "L'azione non è riuscita ad arricchire le seguenti entità utilizzando le informazioni di FortiSIEM: {entity.identifier}." Se i dati non sono disponibili per tutte le entità (is_success=false): "Nessuna delle entità fornite è stata arricchita." L'azione deve non riuscire e interrompere l'esecuzione di un playbook: Se viene segnalato un errore irreversibile, ad esempio credenziali errate, nessuna connessione al server o altro: "Errore durante l'esecuzione dell'azione "Arricchisci entità". Motivo: {0}''.format(error.Stacktrace) |
Generale |
| Tabella Bacheca casi | Titolo della tabella: {entity.identifier} Colonne della tabella:
|
Entità |
Esegui query semplice
Descrizione
Esegui la query sugli eventi FortiSIEM in base ai parametri forniti.
Parametri
| Nome visualizzato del parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
|---|---|---|---|---|
| Tipi di evento | CSV | N/D | No | Specifica i tipi di eventi che la query deve recuperare. Il parametro accetta più valori come stringa separata da virgole. |
| Gravità minima da recuperare | Numero intero | N/D | No | Specifica la gravità minima degli eventi da recuperare in Google SecOps in numeri. Esempio: 5 o 7 |
| Categoria evento | CSV | N/D | No | Specifica la categoria di eventi che deve essere recuperata dalla query. Il parametro accetta più valori come stringa separata da virgole. |
| ID evento | CSV | N/D | No | Specifica facoltativamente gli ID evento esatti che la query deve recuperare. Il parametro accetta più valori come stringa separata da virgole. |
| Campi da restituire | CSV | N/D | No | Specifica i campi da restituire. Se non viene fornito nulla, l'azione restituisce tutti i campi. |
| Campo di ordinamento | Stringa | phRecvTime | No | Specifica il parametro da utilizzare per l'ordinamento. |
| Ordinamento | DDL | DECR Valori possibili:
|
No | Specifica l'ordine di ordinamento. |
| Intervallo di tempo | DDL | Ultima ora Valori possibili:
|
No | Specifica un periodo di tempo per i risultati. Se è selezionata l'opzione "Personalizzato", devi fornire anche il parametro "Ora di inizio". |
| Ora di inizio | Stringa | N/D | No | Specifica l'ora di inizio per i risultati. Questo parametro è obbligatorio se è selezionato "Personalizzato" per il parametro "Intervallo di tempo". Formato: ISO 8601 Esempio: 2021-04-23T12:38Z |
| Ora di fine | Stringa | N/D | No | Specifica l'ora di fine per i risultati. Se non viene fornito nulla e per il parametro "Intervallo di tempo" è selezionato "Personalizzato", questo parametro utilizza l'ora corrente. Formato: ISO 8601 |
| Numero massimo di risultati da restituire | Numero intero | 50 | No | Specifica il numero di risultati da restituire. |
Run On
Questa azione non viene eseguita sulle entità.
Risultati dell'azione
Risultato script
| Nome risultato script | Opzioni di valore | Esempio |
|---|---|---|
| is_success | Vero/Falso | is_success=False |
Risultato JSON
[
{
"custId": "1",
"attributes": {
"eventType": "Unknown_EventType",
"eventSeverity": "3",
"eventAction": "0 (Permit)",
"phRecvTime": "Wed Dec 29 00:36:55 IST 2021",
"relayDevIpAddr": "172.30.20xxx",
"reptDevIpAddr": "172.30.20xxx",
"destIpAddr": "172.30.20xxx",
"destName": "HOST-172.30.20xxx",
"reptDevName": "centos-xxx",
"reptVendor": "Unknown",
"customer": "Super",
"reptModel": "Unknown",
"rawEventMsg": "<27>Dec 29 00:36:47 centos-xxx aella_flow[5074]: 1902195|aos_afix_json|ERR|Failed to send message: Couldn't connect to server/7",
"collectorId": "1",
"eventId": "4242813061460978xxx",
"phEventCategory": "0 (External)",
"count": "1",
"eventName": "Unknown event type",
"eventParsedOk": "0",
"parserName": "SyslogNGParser"
},
"dataStr": null,
"eventType": "Unknown_EventType",
"id": "4242813061460978xxx",
"index": "0",
"nid": "4242813061460978xxx",
"receiveTime": "2021-12-29T00:36:55+02:00"
}
]
Arricchimento delle entità
N/D
Approfondimenti
N/D
Bacheca casi
| Tipo di risultato | Valore/Descrizione | Tipo |
|---|---|---|
| Messaggio di output* | L'azione non deve non riuscire né interrompere l'esecuzione di un playbook: Se sono stati trovati almeno alcuni dati (is_success=true): "Recupero riuscito dei risultati per la query creata "{query}" in FortiSIEM". Se non vengono trovati risultati (is_success=false): "Nessun risultato trovato per la query creata "{Query}" in FortiSIEM." L'azione deve non riuscire e interrompere l'esecuzione di un playbook: Se viene segnalato un errore irreversibile, ad esempio credenziali errate, nessuna connessione al server o altro: "Errore durante l'esecuzione dell'azione "Query semplice". Motivo: {0}''.format(error.Stacktrace) Se il parametro "Ora di inizio" è vuoto e il parametro "Intervallo di tempo" è impostato su "Personalizzato" (errore): "Errore durante l'esecuzione dell'azione "". Motivo: "Ora di inizio" deve essere fornita quando "Personalizzato" è selezionato nel parametro "Intervallo di tempo"." Se il valore del parametro "Ora di inizio" è maggiore del valore del parametro "Ora di fine" (errore): "Errore durante l'esecuzione dell'azione "". Motivo: "Ora di fine" deve essere successiva a "Ora di inizio". |
Generale |
| Tabella | Nome tabella:risultati della query semplice Colonne della tabella:tutte le colonne della risposta |
Generale |
Esegui query personalizzata
Descrizione
Esegui una query personalizzata in FortiSIEM.
Parametri
| Nome visualizzato del parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
|---|---|---|---|---|
| Query | Campo di input multilinea stringa | (Attributo = Valore O Valore) E (Valore attributo O Valore) | Sì | Specifica una query utilizzata per recuperare informazioni sugli eventi. Esempio: (relayDevIpAddr = 172.30.202.1 OR 172.30.202.2) AND (reptDevName = HOST1) |
| Campi da restituire | CSV | No | Specifica i campi da restituire. Se non viene fornito nulla, l'azione restituisce tutti i campi. |
|
| Campo di ordinamento | Stringa | phRecvTime | No | Specifica il parametro da utilizzare per l'ordinamento. |
| Ordinamento | DDL | DECR Valori possibili:
|
No | Specifica l'ordine di ordinamento. |
| Intervallo di tempo | DDL | Ultima ora Valori possibili:
|
No | Specifica un periodo di tempo per i risultati. Se è selezionata l'opzione "Personalizzato", devi fornire anche il parametro "Ora di inizio". |
| Ora di inizio | Stringa | N/D | No | Specifica l'ora di inizio per i risultati. Questo parametro è obbligatorio se è selezionato "Personalizzato" per il parametro "Intervallo di tempo". Formato: ISO 8601 Esempio: 2021-04-23T12:38Z |
| Ora di fine | Stringa | N/D | No | Specifica l'ora di fine per i risultati. Se non viene fornito nulla e per il parametro "Intervallo di tempo" è selezionato "Personalizzato", questo parametro utilizza l'ora corrente. |
| Numero massimo di risultati da restituire | Numero intero | 50 | No | Specifica il numero di risultati da restituire. |
Run On
Questa azione non viene eseguita sulle entità.
Risultati dell'azione
Risultato script
| Nome risultato script | Opzioni di valore | Esempio |
|---|---|---|
| is_success | Vero/Falso | is_success=False |
Risultato JSON
[
{
"custId": "1",
"attributes": {
"eventType": "Unknown_EventType",
"eventSeverity": "3",
"eventAction": "0 (Permit)",
"phRecvTime": "Wed Dec 29 00:36:55 IST 2021",
"relayDevIpAddr": "172.30.20xxx",
"reptDevIpAddr": "172.30.20xxx",
"destIpAddr": "172.30.20xxx",
"destName": "HOST-172.30.20xxx",
"reptDevName": "centos-xxx",
"reptVendor": "Unknown",
"customer": "Super",
"reptModel": "Unknown",
"rawEventMsg": "<27>Dec 29 00:36:47 centos-xxx aella_flow[5074]: 1902195|aos_afix_json|ERR|Failed to send message: Couldn't connect to server/7",
"collectorId": "1",
"eventId": "4242813061460978xxx",
"phEventCategory": "0 (External)",
"count": "1",
"eventName": "Unknown event type",
"eventParsedOk": "0",
"parserName": "SyslogNGParser"
},
"dataStr": null,
"eventType": "Unknown_EventType",
"id": "4242813061460978xxx",
"index": "0",
"nid": "4242813061460978xxx",
"receiveTime": "2021-12-29T00:36:55+02:00"
}
]
Arricchimento delle entità
N/D
Approfondimenti
N/D
Bacheca casi
| Tipo di risultato | Valore/Descrizione | Tipo |
|---|---|---|
| Messaggio di output* | L'azione non deve non riuscire né interrompere l'esecuzione di un playbook: Se sono stati trovati almeno alcuni dati (is_success=true): "Recupero riuscito dei risultati per la query fornita "{query}" in FortiSIEM." Se non vengono trovati risultati (is_success=false): "Nessun risultato trovato per la query fornita "{Query}" in FortiSIEM." L'azione deve non riuscire e interrompere l'esecuzione di un playbook: Se viene segnalato un errore irreversibile, ad esempio credenziali errate, nessuna connessione al server o altro: "Errore durante l'esecuzione dell'azione "Query semplice". Motivo: {0}''.format(error.Stacktrace) Se il parametro "Ora di inizio" è vuoto e il parametro "Intervallo di tempo" è impostato su "Personalizzato" (errore): "Errore durante l'esecuzione dell'azione "". Motivo: "Ora di inizio" deve essere fornita quando "Personalizzato" è selezionato nel parametro "Intervallo di tempo"." Se il valore di "Ora di inizio" è maggiore del valore del parametro "Ora di fine" (errore): "Errore durante l'esecuzione dell'azione "". Motivo: "Ora di fine" deve essere successiva a "Ora di inizio". |
Generale |
| Tabella | Nome tabella: risultati della query personalizzata Colonne della tabella:tutte le colonne della risposta |
Generale |
Connettori
FortiSIEM Incidents Connector
Descrizione connettore
Il connettore può essere utilizzato per recuperare gli incidenti FortiSIEM. La lista consentita dei connettori può essere utilizzata per importare solo tipi specifici di incidenti in base al valore dell'attributo "eventType" dell'incidente. SourceGroupIdentifier del connettore può essere utilizzato per raggruppare gli avvisi di Google SecOps in base all'ID incidente. Il connettore richiede FortiSIEM versione 6.3 o successive.
Parametri del connettore
| Nome visualizzato del parametro | Tipo | Valore predefinito | È obbligatorio | Descrizione |
|---|---|---|---|---|
| Nome campo prodotto | Stringa | deviceProduct | Sì | Inserisci il nome del campo di origine per recuperare il nome del campo prodotto. |
| Nome campo evento | Stringa | eventType | Sì | Inserisci il nome del campo di origine per recuperare il nome del campo evento. |
| Nome campo ambiente | Stringa | No | Descrive il nome del campo in cui è memorizzato il nome dell'ambiente. Se il campo dell'ambiente non viene trovato, l'ambiente è quello predefinito. |
|
| Pattern regex ambiente | Stringa | .* | No | Un pattern regex da eseguire sul valore trovato nel campo "Nome campo ambiente". Il valore predefinito è .* per acquisire tutto e restituire il valore invariato. Utilizzato per consentire all'utente di manipolare il campo dell'ambiente tramite la logica delle espressioni regolari. Se il pattern regex è null o vuoto oppure il valore dell'ambiente è null, il risultato finale dell'ambiente è l'ambiente predefinito. |
| Timeout dello script | Numero intero | 300 | Sì | Specifica il timeout per l'esecuzione del connettore. |
| Root API | Stringa | https:/x.x.x.x:port | Sì | Specifica la radice dell'API per l'installazione di FortiSIEM di destinazione. |
| Nome utente | Stringa | N/D | Sì | Specifica il nome utente da utilizzare per l'installazione di FortiSIEM di destinazione. |
| Password | Password | N/D | Sì | Specifica la password da utilizzare per l'installazione di FortiSIEM di destinazione. |
| Verifica SSL | Casella di controllo | Selezionata | No | Se abilitato, il server Google SecOps controlla il certificato configurato per la radice dell'API. |
| Organizzazione target | CSV | N/D | No | Specifica le organizzazioni per cui il connettore deve recuperare gli incidenti. I parametri accettano più valori come stringa separata da virgole. |
| Ore massime indietro | Numero intero | 24 | Sì | Specifica il periodo di tempo per recuperare gli incidenti a partire da X ore prima. |
| Numero massimo di incidenti per ciclo | Numero intero | 10 | Sì | Specifica il numero di incidenti da elaborare durante l'esecuzione di un connettore. |
| Numero massimo di eventi per incidente | Numero intero | 100 | Sì | Specifica il numero massimo di eventi che il connettore deve monitorare per l'incidente. Una volta raggiunto il limite, i nuovi eventi non vengono aggiunti a Google SecOps. |
| Stati degli incidenti da recuperare | CSV | 0 | No | Specifica gli stati dell'incidente da recuperare in Google SecOps. Il parametro accetta più valori come stringa separata da virgole. 0 indica gli incidenti con stato aperto. |
| Gravità minima da recuperare | Numero intero | N/D | No | Specifica la gravità minima dell'evento dell'incidente da recuperare in Google SecOps in numeri, ad esempio 5 o 7. |
| Utilizzare la lista consentita come lista nera | Casella di controllo | Deselezionata | Sì | Se questa opzione è abilitata, la lista consentita viene utilizzata come lista bloccata. |
| Monitorare i nuovi eventi aggiunti agli incidenti già importati | Casella di controllo | Selezionata | Sì | Se abilitata, se vengono aggiunti nuovi eventi all'incidente FortiSIEM già importato, in Google SecOps viene creato un nuovo avviso aggiuntivo contenente questi nuovi eventi. |
| Monitora soglia nuovi eventi (ore) | Numero intero | 24 | Sì | Se la casella di controllo "Monitora nuovi eventi aggiunti a incidenti già importati" è selezionata, specifica il numero massimo di ore in cui il connettore deve monitorare gli incidenti già importati per i nuovi eventi. Una volta raggiunto il limite, i nuovi eventi non vengono aggiunti a Google SecOps. |
| Indirizzo del server proxy | Stringa | N/D | No | Specifica l'indirizzo del server proxy da utilizzare. |
| Nome utente proxy | Stringa | N/D | No | Specifica il nome utente del proxy per l'autenticazione. |
| Password proxy | Password | N/D | No | Specifica la password del proxy per l'autenticazione. |
Regole del connettore
Supporto proxy
Il connettore supporta il proxy.
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.