Vectra
Integrationsversion: 8.0
Anwendungsbereiche
- Vectra-Erkennungen aufnehmen, um damit Google Security Operations-Benachrichtigungen zu erstellen. In Google SecOps können dann mit Benachrichtigungen Orchestrierungen mit Playbooks oder manuelle Analysen durchgeführt werden.
- Anreicherungsaktionen ausführen – Daten von Vectra abrufen, um Daten in Google SecOps-Benachrichtigungen anzureichern.
Produktberechtigung
Um ein API-Token zu erhalten, müssen Sie zur Profilseite gehen und es kopieren.
Vectra-Integration in Google SecOps 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 |
---|---|---|---|---|
Instanzname | String | – | Nein | Name der Instanz, für die Sie die Integration konfigurieren möchten. |
Beschreibung | String | – | Nein | Beschreibung der Instanz. |
API-Stamm | String | https://{address}:{port} | Ja | API-Stammverzeichnis des Vectra-Servers. |
API-Token | Passwort | – | Ja | API-Token des Vectra-Kontos. |
SSL überprüfen | Kästchen | Aktiviert | Ja | Wenn diese Option aktiviert ist, prüfen Sie, ob das SSL-Zertifikat für die Verbindung zum Vectra-Server gültig ist. |
Remote ausführen | Kästchen | Deaktiviert | Nein | Aktivieren Sie das Feld, um die konfigurierte Integration remote auszuführen. Nachdem Sie das Kästchen angekreuzt haben, wird die Option zum Auswählen des Remote-Nutzers (Kundenservicemitarbeiters) angezeigt. |
Aktionen
Ping
Beschreibung
Testen Sie die Verbindung zu Vectra mit Parametern, die auf der Seite mit der Integrationskonfiguration auf dem Tab „Google Security Operations Marketplace“ angegeben sind.
Ausführen am
Die Aktion wird nicht für Elemente ausgeführt.
Aktionsergebnisse
Scriptergebnis
Name des Scriptergebnisses | Wertoptionen | Beispiel |
---|---|---|
is_success | Wahr/falsch | is_success:False |
Fall-Repository
Ergebnistyp | Wert / Beschreibung | Typ |
---|---|---|
Ausgabemeldung* | Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen: Bei Erfolg: Geben Sie „Successfully connected to the Vectra server with the provided connection parameters!“ aus. Die Aktion sollte fehlschlagen und die Playbook-Ausführung beenden: Geben Sie „Verbindung zum Vectra-Server konnte nicht hergestellt werden!“ aus. Fehler: {0}".format(exception.stacktrace) |
Allgemein |
Endpunkt für die Anreicherung
Beschreibung
Systeminformationen des Abrufendpunkts anhand des Hostnamens oder der IP-Adresse abrufen.
Ausführen am
Diese Aktion wird für die folgenden Einheiten ausgeführt:
- IP-Adresse
- Hostname
Aktionsergebnisse
Entitätsanreicherung
Name des Anreicherungsfelds | Quelle (JSON-Schlüssel) | Logik – Wann anwenden? |
---|---|---|
Vectra_id | results/id | Wenn in JSON verfügbar |
Vectra_name | results/name | Wenn in JSON verfügbar |
Vectra_state | results/state | Wenn in JSON verfügbar |
Vectra_threat | Ergebnisse/Bedrohung | Wenn in JSON verfügbar |
Vectra_certainty | Ergebnisse/Gewissheit | Wenn in JSON verfügbar |
Vectra_ip | results/last_source | Wenn in JSON verfügbar |
Vectra_tags | Durch Leerzeichen getrennte {results/tags} | Wenn in JSON verfügbar |
Vectra_note | Ergebnisse/Hinweis | Wenn in JSON verfügbar |
Vectra_url | results/url | Wenn in JSON verfügbar |
Vectra_last_modified | results/last_modified | Wenn in JSON verfügbar |
Vectra_groups | Durch Leerzeichen getrennte {results/groups} | Wenn in JSON verfügbar |
Vectra_is_key_asset | results/is_key_asset | Wenn in JSON verfügbar |
Vectra_has_active_traffic | results/has_active_traffic | Wenn in JSON verfügbar |
Vectra_is_targeting_key_asset | results/is_targeting_key_asset | Wenn in JSON verfügbar |
Vectra_privilege_level | results/privilege_level | Wenn in JSON verfügbar |
Vectra_previous_ip | Durch Leerzeichen getrennte {results/previous_ips} | Wenn in JSON verfügbar |
Scriptergebnis
Name des Scriptergebnisses | Wertoptionen | Beispiel |
---|---|---|
is_success | Wahr/falsch | is_success:False |
JSON-Ergebnis
{
"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"
}
Fall-Repository
Ergebnistyp | Wert / Beschreibung | Typ |
---|---|---|
Ausgabemeldung* | Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen. Bei Erfolg und wenn mindestens eine der angegebenen Entitäten angereichert wurde (is_success = true): Geben Sie „Die folgenden Endpunkte wurden erfolgreich mit Daten von Vectra angereichert: \n {0}“ aus.format(entity.identifier list) Wenn bei der Aktion in Vectra mehrere Übereinstimmungen für einige Google SecOps-Entitäten gefunden wurden, wurde die erste Übereinstimmung verwendet, um den Endpunkt zu erweitern: Print "Multiple matches were found in Vectra, taking first match for the following entities:/n {0}".format(entity.identifiers list) Wenn die Anreicherung bestimmter Einheiten fehlschlägt(is_success = true): Geben Sie „Es wurden keine Entitäten angereichert.“ aus. Die Aktion sollte fehlschlagen und die Ausführung eines Playbooks beenden: Gibt „Error executing action ‚Enrich Endpoint‘“ (Fehler beim Ausführen der Aktion „Enrich Endpoint“) aus. Grund: {0}''.format(error.Stacktrace) |
Allgemein |
Tags hinzufügen
Beschreibung
Fügen Sie dem Endpunkt oder der Erkennung in Vectra Tags hinzu.
Parameter
Anzeigename des Parameters | Typ | Standardwert | Ist Mandatory | Beschreibung |
---|---|---|---|---|
Elementtyp | Drop-down-Menü | Endpunkt Mögliche Werte: Erkennung |
Ja | Wählen Sie aus, welchem Elementtyp Sie Tags hinzufügen möchten. |
Artikel-ID | String | – | Ja | Geben Sie die ID der Erkennung/des Endpunkts an. |
Tags | CSV | – | Ja | Geben Sie an, welche Tags Sie der Erkennung bzw. dem Endpunkt hinzufügen möchten. Tags sollten durch Kommas getrennt werden, z. B. tag1, tag2. |
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 |
Fall-Repository
Ergebnistyp | Wert / Beschreibung | Typ |
---|---|---|
Ausgabemeldung* | Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen. Wenn eine Erkennung/ein Endpunkt gefunden wurde und die Tags erfolgreich aktualisiert wurden (is_success = true): Gib „Successfully added tags {0} to {1} with ID {2}.format(tags, Item Type, Item ID) Wenn die Erkennung/der Endpunkt gefunden wurde, aber keine Tags hinzugefügt wurden (is_success=False): Gib „Die Aktion konnte die Tags {0} nicht zu {1} mit der ID {2} hinzufügen.“ aus. Grund: {3}. format(tags, Item Type, Item ID, tags parameter from response)". Wenn die Erkennung/der Endpunkt nicht gefunden wurde (is_success=False): Geben Sie „{0} mit der ID {1} wurde nicht gefunden.format(Item Type, Item ID).“ aus. II is_success=false ohne eine bestimmte Situation und es handelt sich nicht um einen kritischen Fehler: Geben Sie Folgendes aus: „Action konnte keine Tags für {0} mit der ID {1} hinzufügen.“ (format(Item Type, Item ID)): Die Aktion sollte fehlschlagen und die Ausführung eines Playbooks beenden: „Fehler beim Ausführen der Aktion ‚Tags hinzufügen‘.“ Grund: {0}''.format(error.Stacktrace) |
Allgemein |
Tags entfernen
Beschreibung
Entfernen Sie Tags vom Endpunkt oder der Erkennung in Vectra.
Parameter
Anzeigename des Parameters | Typ | Standardwert | Ist obligatorisch | Beschreibung |
---|---|---|---|---|
Elementtyp | Drop-down-Menü | Endpunkt Mögliche Werte: Erkennung |
Ja | Wählen Sie aus, von welchem Elementtyp Sie Tags entfernen möchten. |
Artikel-ID | String | – | Ja | Geben Sie die ID der Erkennung/des Endpunkts an. |
Tags | CSV | – | Ja | Geben Sie an, welche Tags Sie aus der Erkennung bzw. vom Endpunkt entfernen möchten. Tags sollten durch Kommas getrennt werden, z. B. tag1, tag2. |
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 |
Fall-Repository
Ergebnistyp | Wert / Beschreibung | Typ |
---|---|---|
Ausgabemeldung* | Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen. Wenn eine Erkennung/ein Endpunkt gefunden wurde und die Tags erfolgreich aktualisiert wurden (is_success = true): Gib „Successfully removed tags {0} from {1} with ID {2}.format(tags, Item Type, Item ID) Wenn die Erkennung/der Endpunkt nicht gefunden wurde (is_success=False): Geben Sie „{0} mit der ID {1} wurde nicht gefunden.“ aus.format(Item Type, Item ID). Wenn die Erkennung/der Endpunkt gefunden wurde, das Tag aber nicht (is_success=False): Gib „Tags {0} don't exist in {1} with ID {2}.“ aus.format(Liste der nicht gefundenen Tags, getrennt durch Kommas, Elementtyp, Element-ID). Wenn is_success=false ohne eine bestimmte Situation und es sich nicht um einen kritischen Fehler handelt: Gib Folgendes aus: „Action wasn't able to remove tags from {0} with ID {1}.format(Item Type, Item ID)“: Die Aktion sollte fehlschlagen und die Ausführung eines Playbooks beenden: Geben Sie „Fehler beim Ausführen der Aktion ‚Tags entfernen‘“ aus. Grund: {0}''.format(error.Stacktrace) |
Allgemein |
Notiz aktualisieren
Beschreibung
Aktualisieren Sie die Notiz für den Endpunkt oder die Erkennung.
Parameter
Anzeigename des Parameters | Typ | Standardwert | Ist Mandatory | Beschreibung |
---|---|---|---|---|
Elementtyp | Drop-down-Menü | Endpunkt Mögliche Werte: Erkennung |
Ja | Wählen Sie den Elementtyp aus, für den Sie eine Notiz aktualisieren möchten. |
Artikel-ID | String | – | Ja | Geben Sie die ID der Erkennung/des Endpunkts an. |
Hinweis | String | – | Ja | Geben Sie an, welche Notiz Sie für die Erkennung/den Endpunkt haben möchten. |
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 |
Fall-Repository
Ergebnistyp | Wert / Beschreibung | Typ |
---|---|---|
Ausgabemeldung* | Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen. Wenn eine Erkennung/ein Endpunkt gefunden wurde und die Notiz erfolgreich aktualisiert wurde (is_success = true): Gibt „Successfully updated note on {1} with ID {2}.format(Item Type, Item ID) Wenn die Erkennung/der Endpunkt nicht gefunden wurde (is_success=False): Geben Sie „{0} mit der ID {1} wurde nicht gefunden.“ aus.format(Item Type, Item ID). Wenn is_success=false ohne eine bestimmte Situation und es sich nicht um einen kritischen Fehler handelt: Gibt „Action wasn't able to update note on {0} with ID {1}.format(Item Type, Item ID)“ aus: Die Aktion sollte fehlschlagen und die Ausführung eines Playbooks beenden: Gib „Fehler beim Ausführen der Aktion ‚Hinweis aktualisieren‘.“ aus. Grund: {0}''.format(error.Stacktrace) |
Allgemein |
Erkennungsstatus aktualisieren
Beschreibung
Status der Erkennung aktualisieren
Parameter
Anzeigename des Parameters | Typ | Standardwert | Ist obligatorisch | Beschreibung |
---|---|---|---|---|
Erkennungs-ID | Ganzzahl | – | Ja | Geben Sie die Erkennungs-ID an, für die Sie den Status aktualisieren möchten. |
Status | DDL | Behoben Mögliche Werte: Erledigt Aktiv |
Ja | Geben Sie an, welcher Status für die Erkennung festgelegt 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 |
Fall-Repository
Ergebnistyp | Wert / Beschreibung | Typ |
---|---|---|
Ausgabemeldung\* | Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen. Wenn eine Erkennung gefunden wurde und der Status erfolgreich aktualisiert wurde (is_success = true): Gib „Status erfolgreich zu ‚{0}‘ aktualisiert bei Erkennung mit ID {1}.format(Status, Detection ID)“ aus.
Wenn keine Erkennung gefunden wurde (is_success=False): Gib „Detection with ID {1} was not found.“ aus.format(Detection ID). Wenn is_success=false ohne eine bestimmte Situation und es sich nicht um einen kritischen Fehler handelt: Gib Folgendes aus: „Action wasn't able to update status on detection with ID {1}.format(detection ID)“ (Die Aktion konnte den Status der Erkennung mit der ID {1}.format(detection ID) nicht aktualisieren): Die Aktion sollte fehlschlagen und die Ausführung eines Playbooks beenden: Gibt „Fehler beim Ausführen der Aktion ‚Erkennungsstatus aktualisieren‘.“ aus. Grund: {0}''.format(error.Stacktrace) |
Allgemein |
Details zur Triage-Regel abrufen
Beschreibung
Detaillierte Informationen zu Triage-Regeln
Parameter
Anzeigename des Parameters | Typ | Standardwert | Ist obligatorisch | Beschreibung |
---|---|---|---|---|
Triage-Regel-IDs | Ganzzahl | – | Ja | Geben Sie eine durch Kommas getrennte Liste von Triage-Regel-IDs an. Beispiel: 28,29 |
Statistiken erstellen | Kästchen | Wahr | Ja | Wenn diese Option aktiviert ist, wird für jede verarbeitete Triage-Regel ein separater Insight erstellt. |
Ausführen am
Diese Aktion wird nicht für Elemente ausgeführt.
Aktionsergebnisse
Insight
Titel der Information | Insight-Beschreibung |
---|---|
„Triage-Regel {0}“.format(triage_rule) | "Detection Category: {0}\n Triage Category: {1}\n Detection: {2} \n Description: {3}".format(detection_category, triage_category, detection, description) |
Scriptergebnis
Name des Scriptergebnisses | Wertoptionen | Beispiel |
---|---|---|
is_success | Wahr/falsch | is_success:False |
JSON-Ergebnis
{
"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"
Fall-Repository
Ergebnistyp | Wert / Beschreibung | Typ |
---|---|---|
Ausgabemeldung* | Die Aktion darf nicht fehlschlagen und darf die Ausführung eines Playbooks nicht stoppen. Bei Erfolg und wenn mindestens eine der angegebenen Regel-IDs angereichert wurde (is_success = true): Print "Successfully retrieved information about the following triage rules from Vectra: \n {0}".format(processed rule ids) Wenn bestimmte Einheiten nicht angereichert werden können(is_success = true): Print "Action was not able to retrieve information about the following triage rules\n: {0}".format(not processed rule ids) Wenn die Anreicherung für alle Rechtspersönlichkeiten fehlschlägt (is_success = false): Gib „Es wurden keine Informationen zu den Triage-Regeln abgerufen.“ aus. Die Aktion sollte fehlschlagen und die Ausführung eines Playbooks beenden: Gibt „Error executing action ‚Get Triage Rule Details‘“ (Fehler beim Ausführen der Aktion „Get Triage Rule Details“) aus. Grund: {0}''.format(error.Stacktrace) |
Allgemein |
Tabelle „Fall-Repository“ | Tabellenname:Triage Rules Details Tabellenspalten: ID (als „id“ zugeordnet) Aktiviert (als „Aktiviert“ zugeordnet) Erkennungskategorie (als „detection_category“ zugeordnet) Triage-Kategorie (zugeordnet als „triage_category“) Erkennung (als „Erkennung“ zugeordnet) Zulassungsliste (wird als „is_whitelist“ zugeordnet) Priorität (als „priority“ zugeordnet) Erstellt am (als „created_timestamp“ zugeordnet) |
Allgemein |
Connectors
Vectra – Connector für Erkennungen
Vectra – Detections 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 | Produktname | Ja | Geben Sie den Namen des Quellfelds ein, um den Namen des Produktfelds abzurufen. |
Name des Ereignisfelds | String | eventType | Ja | Geben Sie den Namen des Quellfelds ein, um den Namen des Ereignisfelds abzurufen. |
Feldname der Umgebung |
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. Damit kann der Nutzer das Feld „environment“ über Regex-Logik 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://x.x.x.x:x:x | Ja | API-Stammverzeichnis des Vectra-Servers. |
API-Token | Passwort | – | Ja | API-Token des Vectra-Kontos. |
Niedrigster abzurufender Bedrohungs-Score | Ganzzahl | 50 | Ja | Der niedrigste Bedrohungs-Score, der zum Abrufen von Erkennungen verwendet wird. Min.: 0 Max.: 100 |
Niedrigster Konfidenzwert für den Abruf | Ganzzahl | 0 | Nein | Niedrigster Wahrscheinlichkeitswert, der zum Abrufen von Erkennungen verwendet wird. Min.: 0 Max.: 100 |
Kategoriefilter | Durch Kommas getrennte Werte | Command and Control,Botnet ,Reconnaissance,Lateral Movement,Exfiltration,Info | Geben Sie an, welche Kategorien von Erkennungen in Google SecOps aufgenommen werden sollen. Mögliche Werte: Command-and-Control-Aktivitäten Botnet Ausspähen Ausbreitung im Netzwerk Exfiltration Info |
|
Maximale Stunden rückwärts abrufen | Ganzzahl | 1 | Nein | Anzahl der Stunden, ab denen Bedrohungen abgerufen werden sollen. |
Max. Anzahl der abzurufenden Erkennungen | Ganzzahl | 25 | Nein | Die Anzahl der Erkennungen, die pro Connector-Iteration verarbeitet werden sollen. Das Limit beträgt 5.000. Dies ist eine Einschränkung von Vectra. |
Zulassungsliste als Sperrliste verwenden | Kästchen | Deaktiviert | Ja | Wenn diese Option aktiviert ist, wird die Zulassungsliste als Sperrliste verwendet. |
SSL überprüfen | Kästchen | Aktiviert | Ja | Wenn diese Option aktiviert ist, prüfen Sie, ob das SSL-Zertifikat für die Verbindung zum Vectra-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