Vectra
Versión de integración: 8.0
Casos de uso
- Ingiere las detecciones de Vectra para crear alertas de Google Security Operations. A continuación, en Google SecOps, se pueden usar las alertas para realizar orquestaciones con guías o análisis manuales.
- Realiza acciones de enriquecimiento: Obtén datos de Vectra para enriquecer los datos en las alertas de Google SecOps.
Permiso del producto
Para obtener un token de API, debes ir a la página de perfil y copiarlo.
Configura la integración de Vectra en Google SecOps
Si quieres obtener instrucciones detalladas para configurar una integración en Google SecOps, consulta Configura integraciones.
Parámetros de integración
Usa los siguientes parámetros para configurar la integración:
Nombre visible del parámetro | Tipo | Valor predeterminado | Es obligatorio | Descripción |
---|---|---|---|---|
Nombre de la instancia | String | N/A | No | Nombre de la instancia para la que deseas configurar la integración. |
Descripción | String | N/A | No | Es la descripción de la instancia. |
Raíz de la API | String | https://{address}:{port} | Sí | Es la raíz de la API del servidor de Vectra. |
Token de API | Contraseña | N/A | Sí | Es el token de API de la cuenta de Vectra. |
Verificar SSL | Casilla de verificación | Marcado | Sí | Si está habilitada, verifica que el certificado SSL para la conexión al servidor de Vectra sea válido. |
Ejecutar de forma remota | Casilla de verificación | Desmarcado | No | Marca la casilla para ejecutar la integración configurada de forma remota. Una vez que se marca, aparece la opción para seleccionar al usuario remoto (agente). |
Acciones
Ping
Descripción
Prueba la conectividad con Vectra con los parámetros proporcionados en la página de configuración de la integración en la pestaña Google Security Operations Marketplace.
Ejecutar en
La acción no se ejecuta en entidades.
Resultados de la acción
Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos | Opciones de valor | Ejemplo |
---|---|---|
is_success | Verdadero/Falso | is_success:False |
Muro de casos
Tipo de resultado | Valor / Descripción | Tipo |
---|---|---|
Mensaje de salida* | La acción no debe fallar ni detener la ejecución de una guía: Si la operación se realiza correctamente, haz lo siguiente: Imprime "Se estableció la conexión con el servidor de Vectra correctamente con los parámetros de conexión proporcionados". La acción debería fallar y detener la ejecución de la guía: Imprime el mensaje "No se pudo establecer conexión con el servidor de Vectra". Error is {0}".format(exception.stacktrace) |
General |
Extremo de enriquecimiento
Descripción
Recupera la información del sistema del extremo por su nombre de host o dirección IP.
Ejecutar en
Esta acción se ejecuta en las siguientes entidades:
- Dirección IP
- Nombre de host
Resultados de la acción
Enriquecimiento de entidades
Nombre del campo de enriquecimiento | Fuente (clave JSON) | Lógica: Cuándo aplicar |
---|---|---|
Vectra_id | results/id | Cuando está disponible en JSON |
Vectra_name | results/name | Cuando está disponible en JSON |
Vectra_state | results/state | Cuando está disponible en JSON |
Vectra_threat | results/threat | Cuando está disponible en JSON |
Vectra_certainty | resultados/certeza | Cuando está disponible en JSON |
Vectra_ip | results/last_source | Cuando está disponible en JSON |
Vectra_tags | {results/tags} separados por espacios | Cuando está disponible en JSON |
Vectra_note | resultados/nota | Cuando está disponible en JSON |
Vectra_url | results/url | Cuando está disponible en JSON |
Vectra_last_modified | results/last_modified | Cuando está disponible en JSON |
Vectra_groups | {results/groups} separados por espacios | Cuando está disponible en JSON |
Vectra_is_key_asset | results/is_key_asset | Cuando está disponible en JSON |
Vectra_has_active_traffic | results/has_active_traffic | Cuando está disponible en JSON |
Vectra_is_targeting_key_asset | results/is_targeting_key_asset | Cuando está disponible en JSON |
Vectra_privilege_level | results/privilege_level | Cuando está disponible en JSON |
Vectra_previous_ip | {results/previous_ips} separados por espacios | Cuando está disponible en JSON |
Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos | Opciones de valor | Ejemplo |
---|---|---|
is_success | Verdadero/Falso | is_success:False |
Resultado de 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"
}
Muro de casos
Tipo de resultado | Valor / Descripción | Tipo |
---|---|---|
Mensaje de salida* | La acción no debe fallar ni detener la ejecución de una guía: Si la operación se realiza correctamente y se enriqueció al menos una de las entidades proporcionadas (is_success = true): Imprime "Se enriquecieron correctamente los siguientes extremos de Vectra: \n {0}".format(lista de identificadores de la entidad) Si la acción encontró varias coincidencias en Vectra para algunas entidades de Google SecOps, se tomó la primera coincidencia para enriquecer el endpoint: Imprime "Se encontraron varias coincidencias en Vectra. Se tomará la primera coincidencia para las siguientes entidades:/n {0}".format(lista de identificadores de la entidad) If Ifail to enrich specific entities(is_success = true): Imprime "No se enriqueció ninguna entidad". La acción debe fallar y detener la ejecución de un playbook: Imprime "Error al ejecutar la acción "Enrich Endpoint". Reason: {0}''.format(error.Stacktrace) |
General |
Agregar etiquetas
Descripción
Agrega etiquetas al extremo o a la detección en Vectra.
Parámetros
Nombre visible del parámetro | Tipo | Valor predeterminado | Es Obligatorio | Descripción |
---|---|---|---|---|
Tipo de elemento | Lista desplegable | Endpoint Valores posibles: Detección |
Sí | Selecciona el tipo de elemento al que deseas agregar etiquetas. |
ID de artículo | String | N/A | Sí | Especifica el ID de la detección o el extremo. |
Etiquetas | CSV | N/A | Sí | Especifica qué etiquetas deseas agregar a la detección o al extremo. Las etiquetas deben estar separadas por comas, por ejemplo: etiqueta1, etiqueta2. |
Ejecutar en
Esta acción no se ejecuta en entidades.
Resultados de la acción
Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos | Opciones de valor | Ejemplo |
---|---|---|
is_success | Verdadero/Falso | is_success:False |
Muro de casos
Tipo de resultado | Valor / Descripción | Tipo |
---|---|---|
Mensaje de salida* | La acción no debe fallar ni detener la ejecución de una guía: Si se encuentra la detección o el extremo y las etiquetas se actualizaron correctamente (is_success = true): Imprime "Successfully added tags {0} to {1} with ID {2}.format(tags, Item Type, Item ID) Si se encontró la detección o el extremo, pero no se agregaron etiquetas (is_success=False): Imprime "No se pudieron agregar las etiquetas {0} a {1} con el ID {2}. Motivo: {3}. format(tags, Item Type, Item ID, tags parameter from response)". Si no se encontró la detección o el extremo (is_success=False): Imprime "No se encontró {0} con el ID {1}.format(Tipo de elemento, ID del elemento)". II is_success=false sin una situación específica y no es un error crítico: Imprime "Action wasn't able to add tags to {0} with ID {1}.format(Item Type, Item ID)": La acción debe fallar y detener la ejecución de un playbook: Se imprimió el mensaje "Error al ejecutar la acción "Agregar etiquetas". Reason: {0}''.format(error.Stacktrace) |
General |
Cómo quitar etiquetas
Descripción
Quita las etiquetas del extremo o la detección en Vectra.
Parámetros
Nombre visible del parámetro | Tipo | Valor predeterminado | Es obligatorio | Descripción |
---|---|---|---|---|
Tipo de elemento | Lista desplegable | Endpoint Valores posibles: Detección |
Sí | Selecciona el tipo de elemento del que deseas quitar etiquetas. |
ID de artículo | String | N/A | Sí | Especifica el ID de la detección o el extremo. |
Etiquetas | CSV | N/A | Sí | Especifica qué etiquetas quieres quitar de la detección o el extremo. Las etiquetas deben estar separadas por comas, por ejemplo: etiqueta1, etiqueta2. |
Ejecutar en
Esta acción no se ejecuta en entidades.
Resultados de la acción
Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos | Opciones de valor | Ejemplo |
---|---|---|
is_success | Verdadero/Falso | is_success:False |
Muro de casos
Tipo de resultado | Valor / Descripción | Tipo |
---|---|---|
Mensaje de salida* | La acción no debe fallar ni detener la ejecución de una guía: Si se encuentra la detección o el extremo y las etiquetas se actualizaron correctamente (is_success = true): Imprime "Se quitaron correctamente las etiquetas {0} de {1} con el ID {2}.format(tags, Item Type, Item ID) Si no se encontró la detección o el extremo (is_success=False): Imprime "No se encontró {0} con el ID {1}".format(Tipo de elemento, ID del elemento)." Si se encontró la detección o el extremo, pero no se encontró la etiqueta (is_success=False): Imprime "Las etiquetas {0} no existen en {1} con el ID {2}".format(lista de etiquetas que no se encontraron separadas por comas, tipo de elemento, ID del elemento)." Si is_success=false sin una situación específica y no es un error crítico: Imprime "Action wasn't able to remove tags from {0} with ID {1}.format(Item Type, Item ID)": La acción debe fallar y detener la ejecución de un playbook: Imprime el mensaje "Error al ejecutar la acción "Quitar etiquetas"". Reason: {0}''.format(error.Stacktrace) |
General |
Actualizar nota
Descripción
Nota de actualización para el extremo o la detección.
Parámetros
Nombre visible del parámetro | Tipo | Valor predeterminado | Es Obligatorio | Descripción |
---|---|---|---|---|
Tipo de elemento | Lista desplegable | Endpoint Valores posibles: Detección |
Sí | Selecciona el tipo de elemento en el que deseas actualizar una nota. |
ID de artículo | String | N/A | Sí | Especifica el ID de la detección o el extremo. |
Nota | String | N/A | Sí | Especifica qué nota quieres tener en la detección o el extremo. |
Ejecutar en
Esta acción no se ejecuta en entidades.
Resultados de la acción
Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos | Opciones de valor | Ejemplo |
---|---|---|
is_success | Verdadero/Falso | is_success:False |
Muro de casos
Tipo de resultado | Valor / Descripción | Tipo |
---|---|---|
Mensaje de salida* | La acción no debe fallar ni detener la ejecución de una guía: Si se encuentra la detección o el extremo y la nota se actualizó correctamente (is_success = true): Imprime "Se actualizó correctamente la nota sobre {1} con el ID {2}.format(Tipo de elemento, ID del elemento) Si no se encontró la detección o el extremo (is_success=False): Imprime "No se encontró {0} con el ID {1}".format(Tipo de elemento, ID del elemento)." Si is_success=false sin una situación específica y no es un error crítico: Imprime "No se pudo actualizar la nota en {0} con el ID {1}.format(Item Type, Item ID)": La acción debe fallar y detener la ejecución de un playbook: Imprime "Error al ejecutar la acción "Actualizar nota". Reason: {0}''.format(error.Stacktrace) |
General |
Actualiza el estado de detección
Descripción
Actualiza el estado de la detección.
Parámetros
Nombre visible del parámetro | Tipo | Valor predeterminado | Es obligatorio | Descripción |
---|---|---|---|---|
ID de detección | Número entero | N/A | Sí | Especifica el ID de detección en el que deseas actualizar el estado. |
Estado | DDL | Se corrigió Valores posibles: Fijo Activo |
Sí | Especifica qué estado se debe establecer en la detección. |
Ejecutar en
Esta acción no se ejecuta en entidades.
Resultados de la acción
Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos | Opciones de valor | Ejemplo |
---|---|---|
is_success | Verdadero/Falso | is_success:False |
Muro de casos
Tipo de resultado | Valor / Descripción | Tipo |
---|---|---|
Mensaje de salida\* | La acción no debe fallar ni detener la ejecución de una guía: Si se encuentra la detección y el estado se actualizó correctamente (is_success = true): Imprime "Se actualizó correctamente el estado a "{0}" en la detección con el ID {1}.format(Status, Detection ID)
Si no se encontró la detección (is_success=False): Imprime "No se encontró la detección con el ID {1}".format(ID de detección)." Si is_success=false sin una situación específica y no es un error crítico: Imprime "Action wasn't able to update status on detection with ID {1}.format(detection ID)": La acción debe fallar y detener la ejecución de un playbook: Imprime el mensaje "Error al ejecutar la acción "Update Detection Status". Reason: {0}''.format(error.Stacktrace) |
General |
Obtén detalles de la regla de clasificación
Descripción
Obtén información detallada sobre las reglas de clasificación.
Parámetros
Nombre visible del parámetro | Tipo | Valor predeterminado | Es obligatorio | Descripción |
---|---|---|---|---|
IDs de reglas de clasificación | Número entero | N/A | Sí | Especifica una lista de IDs de reglas de clasificación separada por comas. Ejemplo: 28,29 |
Crea estadísticas | Casilla de verificación | Verdadero | Sí | Si se habilita, la acción creará una estadística independiente para cada regla de clasificación procesada. |
Ejecutar en
Esta acción no se ejecuta en entidades.
Resultados de la acción
Estadística
Título de la estadística | Descripción de la estadística |
---|---|
"Triage Rule {0}".format(triage_rule) | "Categoría de detección: {0}\n Categoría de clasificación: {1}\n Detección: {2} \n Descripción: {3}".format(detection_category, triage_category, detection, description) |
Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos | Opciones de valor | Ejemplo |
---|---|---|
is_success | Verdadero/Falso | is_success:False |
Resultado de 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"
Muro de casos
Tipo de resultado | Valor / Descripción | Tipo |
---|---|---|
Mensaje de salida* | La acción no debe fallar ni detener la ejecución de una guía: Si la operación se realiza correctamente y se enriqueció al menos uno de los IDs de regla proporcionados (is_success = true): Imprime "Se recuperó correctamente la información sobre las siguientes reglas de clasificación de Vectra: \n {0}".format(IDs de reglas procesadas) Si no se pueden enriquecer entidades específicas(is_success = true): Imprime "Action was not able to retrieve information about the following triage rules\n: {0}".format(not processed rule ids) Si no se puede enriquecer para todas las entidades (is_success = false): Imprime "No se recuperó información sobre las reglas de clasificación". La acción debe fallar y detener la ejecución de un playbook: Imprime "Error al ejecutar la acción "Get Triage Rule Details". Reason: {0}''.format(error.Stacktrace) |
General |
Tabla del muro de casos | Nombre de la tabla: Detalles de las reglas de clasificación Columnas de la tabla: ID (se asigna como id) Habilitado (se asigna como habilitado) Categoría de detección (se asigna como detection_category) Categoría de clasificación (se asigna como triage_category) Detección (se asigna como detección) Lista blanca (se asigna como is_whitelist) Prioridad (se asigna como prioridad) Fecha de creación (se asigna como created_timestamp) |
General |
Conectores
Vectra: conector de detecciones
Configura el conector de detecciones de Vectra en Google SecOps
Si quieres obtener instrucciones detalladas para configurar un conector en Google SecOps, consulta Cómo configurar el conector.
Parámetros del conector
Usa los siguientes parámetros para configurar el conector:
Nombre visible del parámetro | Tipo | Valor predeterminado | Es obligatorio | Descripción |
---|---|---|---|---|
Nombre del campo del producto | String | Nombre del producto | Sí | Ingresa el nombre del campo de origen para recuperar el nombre del campo del producto. |
Nombre del campo del evento | String | eventType | Sí | Ingresa el nombre del campo de origen para recuperar el nombre del campo del evento. |
Nombre del campo del entorno |
String | "" | No | Describe el nombre del campo en el que se almacena el nombre del entorno. Si no se encuentra el campo del entorno, se usa el entorno predeterminado. |
Patrón de regex del entorno |
String | .* | No | Es un patrón de regex que se ejecutará en el valor que se encuentra en el campo "Nombre del campo del entorno". El valor predeterminado es .* para capturar todo y devolver el valor sin cambios. Se usa para permitir que el usuario manipule el campo del entorno a través de la lógica de regex. Si el patrón de regex es nulo o está vacío, o si el valor del entorno es nulo, el resultado final del entorno es el entorno predeterminado. |
Tiempo de espera de la secuencia de comandos (segundos) | Número entero | 180 | Sí | Es el límite de tiempo de espera para el proceso de Python que ejecuta la secuencia de comandos actual. |
Raíz de la API | String | https://x.x.x.x:x:x | Sí | Es la raíz de la API del servidor de Vectra. |
Token de API | Contraseña | N/A | Sí | Es el token de API de la cuenta de Vectra. |
Puntuación de amenaza más baja que se recuperará | Número entero | 50 | Sí | Es la puntuación de amenaza más baja que se usará para recuperar las detecciones. Mín.: 0 Máx.: 100 |
Puntuación de certeza más baja para recuperar | Número entero | 0 | No | Es la puntuación de certeza más baja que se usará para recuperar las detecciones. Mín.: 0 Máx.: 100 |
Filtro de categoría | Valores separados por comas | Comando y control,Botnet ,Reconocimiento,Movimiento lateral,Exfiltración,Info | Especifica qué categorías de detecciones se transferirán a Google SecOps. Valores posibles: Comando y control Botnet Reconocimiento Movimiento lateral Robo de datos Información |
|
Recuperar horas máximas hacia atrás | Número entero | 1 | No | Cantidad de horas desde las que se recuperarán las amenazas. |
Cantidad máxima de detecciones que se recuperarán | Número entero | 25 | No | Cantidad de detecciones que se procesarán por iteración del conector. El límite es de 5,000. Esta es una limitación de Vectra. |
Usar la lista blanca como lista negra | Casilla de verificación | Desmarcado | Sí | Si se habilita, la lista de entidades permitidas se usará como lista de entidades bloqueadas. |
Verificar SSL | Casilla de verificación | Marcado | Sí | Si está habilitada, verifica que el certificado SSL para la conexión al servidor de Vectra sea válido. |
Dirección del servidor proxy | String | N/A | No | Es la dirección del servidor proxy que se usará. |
Nombre de usuario del proxy | String | N/A | No | Nombre de usuario del proxy con el que se realizará la autenticación. |
Contraseña de proxy | Contraseña | N/A | No | Contraseña del proxy para la autenticación. |
Reglas del conector
Compatibilidad con proxy
El conector admite proxy.
¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.