Vectra

Versione integrazione: 8.0

Casi d'uso

  1. Importa i rilevamenti di Vectra per utilizzarli per creare avvisi di Google Security Operations. Successivamente, in Google SecOps, gli avvisi possono essere utilizzati per eseguire orchestrazioni con playbook o analisi manuali.
  2. Esegui azioni di arricchimento: ottieni dati da Vectra per arricchire i dati negli avvisi di Google SecOps.

Autorizzazione del prodotto

Per ottenere un token API, devi andare alla pagina Profilo e copiarlo.

Posizione del token API

Configura l'integrazione di Vectra in Google SecOps

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
Nome istanza Stringa N/D No Nome dell'istanza per cui intendi configurare l'integrazione.
Descrizione Stringa N/D No Descrizione dell'istanza.
Root API Stringa https://{address}:{port} Root API del server Vectra.
Token API Password N/D Token API dell'account Vectra.
Verifica SSL Casella di controllo Selezionata Se abilitato, verifica che il certificato SSL per la connessione al server Vectra sia valido.
Esegui da remoto Casella di controllo Deselezionata No Seleziona il campo per eseguire l'integrazione configurata da remoto. Una volta selezionata, viene visualizzata l'opzione per selezionare l'utente remoto (agente).

Azioni

Dindin

Descrizione

Testa la connettività a Vectra con i parametri forniti nella pagina di configurazione dell'integrazione nella scheda Google Security Operations Marketplace.

Run On

L'azione non viene eseguita sulle entità.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore Esempio
is_success Vero/Falso is_success:False
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:

Stampa "Connessione al server Vectra riuscita con i parametri di connessione forniti".

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:
In caso contrario:

Stampa "Impossibile connettersi al server Vectra. Error is {0}".format(exception.stacktrace)

Generale

Endpoint Enrich

Descrizione

Recupera le informazioni di sistema dell'endpoint in base al nome host o all'indirizzo IP.

Run On

Questa azione viene eseguita sulle seguenti entità:

  • Indirizzo IP
  • Nome host

Risultati dell'azione

Arricchimento delle entità
Nome campo di arricchimento Origine (chiave JSON) Logica - Quando applicarla
Vectra_id results/id Quando disponibile in formato JSON
Vectra_name risultati/nome Quando disponibile in formato JSON
Vectra_state risultati/stato Quando disponibile in formato JSON
Vectra_threat risultati/minaccia Quando disponibile in formato JSON
Vectra_certainty risultati/certezza Quando disponibile in formato JSON
Vectra_ip results/last_source Quando disponibile in formato JSON
Vectra_tags {results/tags} separati da spazi Quando disponibile in formato JSON
Vectra_note risultati/nota Quando disponibile in formato JSON
Vectra_url results/url Quando disponibile in formato JSON
Vectra_last_modified results/last_modified Quando disponibile in formato JSON
Vectra_groups {results/groups} separati da spazi Quando disponibile in formato JSON
Vectra_is_key_asset results/is_key_asset Quando disponibile in formato JSON
Vectra_has_active_traffic results/has_active_traffic Quando disponibile in formato JSON
Vectra_is_targeting_key_asset results/is_targeting_key_asset Quando disponibile in formato JSON
Vectra_privilege_level results/privilege_level Quando disponibile in formato JSON
Vectra_previous_ip {results/previous_ips} separati da spazi Quando disponibile in formato JSON
Risultato script
Nome del risultato dello script Opzioni di valore Esempio
is_success Vero/Falso is_success:False
Risultato JSON
{
            "id": 131,
            "name": "DESKTOP-DAIOS7J",
            "active_traffic": false,
            "has_active_traffic": false,
            "t_score": 0,
            "threat": 0,
            "c_score": 0,
            "certainty": 0,
            "severity": null,
            "last_source": "10.0.2.68",
            "ip": "10.0.2.68",
            "previous_ips": [],
            "last_detection_timestamp": "2019-10-08T17:13:57Z",
            "key_asset": false,
            "is_key_asset": false,
            "state": "inactive",
            "targets_key_asset": false,
            "is_targeting_key_asset": false,
            "detection_set": [],
            "host_artifact_set": [
                {
                    "type": "netbios",
                    "value": "DESKTOP-DAIOS7J",
                    "source": null,
                    "siem": false
                }
            ],
            "sensor": "YLq09aHU",
            "sensor_name": "Vectra X",
            "tags": [],
            "note": null,
            "note_modified_by": null,
            "note_modified_timestamp": null,
            "url": "https://70.54.200.216:64443/api/v2.1/hosts/131",
            "host_url": "https://70.54.200.216:64443/api/v2.1/hosts/131",
            "last_modified": "2020-02-12T13:41:51Z",
            "assigned_to": null,
            "assigned_date": null,
            "groups": [],
            "has_custom_model": false,
            "privilege_level": null,
            "privilege_category": null,
            "probable_owner": null,
            "detection_profile": null,
            "host_session_luids": [],
            "host_luid": "e0M-jygN"
}
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 e almeno una delle entità fornite è stata arricchita (is_success = true):

Stampa "Successfully enriched the following endpoints from Vectra: \n {0}".format(entity.identifier list)

Se l'azione ha trovato più corrispondenze in Vectra per alcune entità Google SecOps, è stata presa la prima corrispondenza per arricchire l'endpoint:

Stampa "Sono state trovate più corrispondenze in Vectra. Viene utilizzata la prima corrispondenza per le seguenti entità:/n {0}".format(entity.identifiers list)

Se non riesco ad arricchire entità specifiche(is_success = true):

Stampa "Nessuna entità è stata arricchita".

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:
Se si verifica un errore irreversibile, ad esempio credenziali errate, nessuna connessione al server, altro:

Stampa "Errore durante l'esecuzione dell'azione "Arricchisci endpoint". Motivo: {0}''.format(error.Stacktrace)

Generale

Aggiungi tag

Descrizione

Aggiungi tag all'endpoint o al rilevamento in Vectra.

Parametri

Nome visualizzato del parametro Tipo Valore predefinito È Mandatory Descrizione
Tipo di elemento Elenco a discesa

Endpoint

Valori possibili:
Endpoint

Rilevamento

Seleziona il tipo di elemento a cui vuoi aggiungere i tag.
ID elemento Stringa N/D Specifica l'ID del rilevamento/dell'endpoint.
Tag CSV N/D Specifica i tag che vuoi aggiungere al rilevamento/endpoint. I tag devono essere separati da una virgola, ad esempio: tag1, tag2.

Run On

Questa azione non viene eseguita sulle entità.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore Esempio
is_success Vero/Falso is_success:False
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 viene rilevato un rilevamento/endpoint e i tag sono stati aggiornati correttamente (is_success = true):

Stampa "Successfully added tags {0} to {1} with ID {2}.format(tags, Item Type, Item ID)

Se è stata rilevata la rilevazione/l'endpoint, ma i tag non sono stati aggiunti (is_success=False):

Stampa "L'azione non è riuscita ad aggiungere i tag {0} a {1} con ID {2}. Motivo: {3}. format(tags, Item Type, Item ID, tags parameter from response)".

Se il rilevamento/l'endpoint non è stato trovato (is_success=False):

Stampa "{0} con ID {1} non è stato trovato.format(Item Type, Item ID)."

II is_success=false senza una situazione specifica e non è un errore critico:

Stampa "Action non è riuscita ad aggiungere tag a {0} con ID {1}.format(Item Type, Item ID)":

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:
Se si verifica un errore irreversibile (credenziali errate, errore di connessione, arresto anomalo dell'azione):

Stampa "Errore durante l'esecuzione dell'azione "Aggiungi tag". Motivo: {0}''.format(error.Stacktrace)

Generale

Rimuovere i tag

Descrizione

Rimuovi i tag dall'endpoint o dal rilevamento in Vectra.

Parametri

Nome visualizzato del parametro Tipo Valore predefinito È obbligatorio Descrizione
Tipo di elemento Elenco a discesa

Endpoint

Valori possibili:
Endpoint

Rilevamento

Seleziona il tipo di elemento da cui vuoi rimuovere i tag.
ID elemento Stringa N/D Specifica l'ID del rilevamento/dell'endpoint.
Tag CSV N/D Specifica i tag da rimuovere dal rilevamento/endpoint. I tag devono essere separati da una virgola, ad esempio: tag1, tag2.

Run On

Questa azione non viene eseguita sulle entità.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore Esempio
is_success Vero/Falso is_success:False
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 viene rilevato un rilevamento/endpoint e i tag sono stati aggiornati correttamente (is_success = true):

Stampa "Successfully removed tags {0} from {1} with ID {2}.format(tags, Item Type, Item ID)

Se il rilevamento/l'endpoint non è stato trovato (is_success=False):

Stampa "{0} con ID {1} non è stato trovato.".format(Tipo di elemento, ID elemento)."

Se è stato trovato il rilevamento/l'endpoint, ma non il tag (is_success=False):

Stampa "I tag {0} non esistono in {1} con ID {2}".format(elenco dei tag non trovati separati da virgola, Tipo di elemento, ID elemento)."

Se is_success=false senza una situazione specifica e non si tratta di un errore critico:

Stampa "Action wasn't able to remove tags from {0} with ID {1}.format(Item Type, Item ID)":

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:
Se si verifica un errore irreversibile (credenziali errate, errore di connessione, arresto anomalo dell'azione):

Stampa "Errore durante l'esecuzione dell'azione "Rimuovi tag". Motivo: {0}''.format(error.Stacktrace)

Generale

Aggiorna nota

Descrizione

Aggiorna la nota per l'endpoint o il rilevamento.

Parametri

Nome visualizzato del parametro Tipo Valore predefinito È Mandatory Descrizione
Tipo di elemento Elenco a discesa

Endpoint

Valori possibili:
Endpoint

Rilevamento

Seleziona il tipo di elemento su cui vuoi aggiornare una nota.
ID elemento Stringa N/D Specifica l'ID del rilevamento/dell'endpoint.
Nota Stringa N/D Specifica la nota che vuoi visualizzare nel rilevamento/endpoint.

Run On

Questa azione non viene eseguita sulle entità.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore Esempio
is_success Vero/Falso is_success:False
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 viene rilevato un rilevamento/endpoint e la nota è stata aggiornata correttamente (is_success = true):

Stampa "Successfully updated note on {1} with ID {2}.format(Item Type, Item ID)

Se il rilevamento/l'endpoint non è stato trovato (is_success=False):

Stampa "{0} con ID {1} non è stato trovato.".format(Tipo di elemento, ID elemento)."

Se is_success=false senza una situazione specifica e non si tratta di un errore critico:

Stampa "Action wasn't able to update note on {0} with ID {1}.format(Item Type, Item ID)":

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:
Se si verifica un errore irreversibile (credenziali errate, errore di connessione, arresto anomalo dell'azione):

Stampa "Errore durante l'esecuzione dell'azione "Aggiorna nota". Motivo: {0}''.format(error.Stacktrace)

Generale

Aggiorna stato rilevamento

Descrizione

Aggiorna lo stato del rilevamento.

Parametri

Nome visualizzato del parametro Tipo Valore predefinito È obbligatorio Descrizione
ID rilevamento Numero intero N/D Specifica l'ID rilevamento di cui vuoi aggiornare lo stato.
Stato DDL

Fisso

Valori possibili:

Fisso

Attivo

Specifica lo stato da impostare sul rilevamento.

Run On

Questa azione non viene eseguita sulle entità.

Risultati dell'azione

Risultato script
Nome del risultato dello script Opzioni di valore Esempio
is_success Vero/Falso is_success:False
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 viene rilevato un problema e lo stato è stato aggiornato correttamente (is_success = true):

Stampa "Successfully updated status to '{0}' on detection with ID {1}.format(Status, Detection ID)

Se il rilevamento non è stato trovato (is_success=False):

Stampa "Rilevamento con ID {1} non trovato.".format(ID rilevamento)."

Se is_success=false senza una situazione specifica e non si tratta di un errore critico:

Stampa "Action wasn't able to update status on detection with ID {1}.format(detection ID)":

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:
Se si verifica un errore irreversibile (credenziali errate, errore di connessione, arresto anomalo dell'azione):

Stampa "Error executing action "Update Detection Status". Motivo: {0}''.format(error.Stacktrace)

Generale

Ottieni dettagli regola di triage

Descrizione

Ottieni informazioni dettagliate sulle regole di triage.

Parametri

Nome visualizzato del parametro Tipo Valore predefinito È obbligatorio Descrizione
ID regole di triage Numero intero N/D Specifica un elenco separato da virgole di ID regole di triage. Esempio: 28,29
Crea approfondimenti Casella di controllo Vero Se attivata, l'azione creerà un approfondimento separato per ogni regola di triage elaborata.

Run On

Questa azione non viene eseguita sulle entità.

Risultati dell'azione

Insight
Titolo dell'approfondimento Descrizione dell'approfondimento
"Triage Rule {0}".format(triage_rule) "Detection Category: {0}\n Triage Category: {1}\n Detection: {2} \n Description: {3}".format(detection_category, triage_category, detection, description)
Risultato script
Nome del risultato dello script Opzioni di valore Esempio
is_success Vero/Falso is_success:False
Risultato JSON
{
    "id": 28,
    "url": "https://api.demo.vectranetworks.com/api/v2.1/rules/28",
    "description": "whatever",
    "enabled": true,
    "created_timestamp": "2020-10-01T17:21:19Z",
    "last_timestamp": "2020-10-01T17:21:19Z",
    "is_whitelist": false,
    "priority": 1,
    "active_detections": 1,
    "total_detections": 1,
    "template": false,
    "additional_conditions": {
        "OR": [
            {
                "AND": [
                    {
                        "ANY_OF": {
                            "field": "remote1_ip",
                            "values": [
                                {
                                    "url": null,
                                    "value": "35.166.75.118",
                                    "label": "35.166.75.118"
                                }
                            ],
                            "groups": [],
                            "label": "C&C Server IP"
                        }
                    }
                ]
            }
        ]
    },
    "source_conditions": {
        "OR": [
            {
                "AND": [
                    {
                        "ANY_OF": {
                            "field": "host",
                            "values": [
                                {
                                    "url": "https://api.demo.vectranetworks.com/api/v2.1/hosts/142",
                                    "value": 142,
                                    "label": "IP-10.10.100.10"
                                }
                            ],
                            "groups": [],
                            "label": "Host"
                        }
                    }
                ]
            }
        ]
    },
    "detection_category": "COMMAND & CONTROL",
    "triage_category": "triage rule 1",
    "detection": "Hidden HTTPS Tunnel"
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 e almeno uno degli ID regola forniti è stato arricchito (is_success = true):

Stampa "Successfully retrieved information about the following triage rules from Vectra: \n {0}".format(processed rule ids)

Se non riesci ad arricchire entità specifiche(is_success = true):

Stampa "Action was not able to retrieve information about the following triage rules\n: {0}".format(not processed rule ids)

Se l'arricchimento non va a buon fine per tutte le entità (is_success = false):

Stampa "Non sono state recuperate informazioni sulle regole di triage".

L'azione deve non riuscire e interrompere l'esecuzione di un playbook:
Se si verifica un errore irreversibile (credenziali errate, errore di connessione, arresto anomalo dell'azione):

Stampa "Error executing action "Get Triage Rule Details". Motivo: {0}''.format(error.Stacktrace)

Generale
Tabella Bacheca casi

Nome tabella:Dettagli delle regole di triage

Colonne della tabella:

ID (mappato come id)

Abilitato (mappato come abilitato)

Categoria di rilevamento (mappata come detection_category)

Categoria di valutazione (mappata come triage_category)

Rilevamento (mappato come rilevamento)

Whitelist (mappata come is_whitelist)

Priorità (mappata come priorità)

Data di creazione (mappata come created_timestamp)

Generale

Connettori

Vectra - Detections Connector

Configura Vectra - Detections Connector in Google SecOps

Per istruzioni dettagliate su come configurare un connettore in Google SecOps, vedi Configurazione del connettore.

Parametri del connettore

Utilizza i seguenti parametri per configurare il connettore:

Nome visualizzato del parametro Tipo Valore predefinito È obbligatorio Descrizione
Nome campo prodotto Stringa Nome prodotto Inserisci il nome del campo di origine per recuperare il nome del campo prodotto.
Nome campo evento Stringa eventType 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 dell'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 (secondi) Numero intero 180 Limite di timeout per il processo Python che esegue lo script corrente.
Root API Stringa https://x.x.x.x:x:x Root API del server Vectra.
Token API Password N/D Token API dell'account Vectra.
Punteggio di minaccia più basso da recuperare Numero intero 50

Il punteggio di minaccia più basso che verrà utilizzato per recuperare i rilevamenti.

Min: 0

Max: 100

Punteggio di certezza più basso da recuperare Numero intero 0 No

Il punteggio di certezza più basso che verrà utilizzato per recuperare i rilevamenti.

Min: 0

Max: 100

Filtro per categoria Valori separati da virgola Command and Control,Botnet ,Reconnaissance,Lateral Movement,Exfiltration,Info

Specifica le categorie di rilevamenti da importare in Google SecOps.

Valori possibili:

Comando e controllo

Botnet

Ricognizione

Movimento laterale

Esfiltrazione

Informazioni

Recupero ore massime a ritroso Numero intero 1 No Quantità di ore da cui recuperare le minacce.
Numero massimo di rilevamenti da recuperare Numero intero 25 No Numero di rilevamenti da elaborare per un'iterazione del connettore. Il limite è 5000. Si tratta di una limitazione di Vectra.
Utilizzare la lista consentita come lista nera Casella di controllo Deselezionata Se questa opzione è abilitata, la lista consentita verrà utilizzata come lista bloccata.
Verifica SSL Casella di controllo Selezionata Se abilitato, verifica che il certificato SSL per la connessione al server Vectra sia valido.
Indirizzo del server proxy Stringa N/D No L'indirizzo del server proxy da utilizzare.
Nome utente proxy Stringa N/D No Il nome utente del proxy con cui eseguire l'autenticazione.
Password proxy Password N/D No La password del proxy per l'autenticazione.

Regole del connettore

Supporto del proxy

Il connettore supporta il proxy.

Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.