Integra Armis en Google SecOps

En este documento, se describe cómo integrar Armis en Google Security Operations.

Casos de uso

  1. Realizar acciones de enriquecimiento
  2. Realiza la transferencia de las alertas.
  3. Realiza la acción de clasificación (Actualizar el estado de la alerta).

Parámetros de integración

Usa los siguientes parámetros para configurar la integración:

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Raíz de la API String Sí Raíz de la API de Armis
Secreto de API Contraseña N/A Sí Secreto de la API de Armis
Verificar SSL Casilla de verificación Marcado Sí Si está habilitada, verifica que el certificado SSL para la conexión con el servidor de Armis sea válido.

Para obtener instrucciones sobre cómo configurar una integración en Google SecOps, consulta Configura integraciones.

Si es necesario, puedes realizar cambios más adelante. Después de configurar una instancia de integración, puedes usarla en las guías. Para obtener más información sobre cómo configurar y admitir varias instancias, consulta Cómo admitir varias instancias.

Acciones

Para obtener más información sobre las acciones, consulta Responde a las acciones pendientes desde tu escritorio y Ejecuta una acción manual en tu caso.

Ping

Prueba la conectividad con Armis.

Parámetros

N/A

Fecha de ejecución

La acción no usa entidades ni tiene parámetros de entrada obligatorios.

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 o falso is_success:False
Muro de casos
Tipo de resultado Descripción Tipo
Mensaje de salida*

La acción no debería fallar ni detener la ejecución de una guía:

Si se realiza correctamente: "Successfully connected to the Armis server with the provided connection parameters!"

La acción debería fallar y detener la ejecución de una guía:

Si no se realiza correctamente, aparecerá el mensaje "Failed to connect to the Armis server! Error is {0}".format(exception.stacktrace)

General

Enriquece entidades

Enriquece las entidades con información de Armis. Entidades admitidas: IP y dirección MAC.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Crea una estadística de extremo Casilla de verificación Marcado Sí Si está habilitada, la acción crea una estadística que contiene información sobre los extremos.

Fecha de ejecución

Esta acción se ejecuta en las siguientes entidades:

  • Dirección IP
  • Dirección MAC

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 o falso is_success:False

Resultado de JSON

{
    "accessSwitch": null,
    "category": "Computers",
    "dataSources": [
        {
            "firstSeen": "2021-03-07T04:04:22.562873+00:00",
            "lastSeen": "2021-03-07T04:04:22.562873+00:00",
            "name": "Example",
            "types": [
                "Asset & System Management",
                "Virtualization"
            ]
        },
        {
            "firstSeen": "2021-03-07T04:04:22.562873+00:00",
            "lastSeen": "2021-03-07T04:04:22.562873+00:00",
            "name": "Armis Smart Scanner",
            "types": [
                "Vulnerability Management"
            ]
        }
    ],
    "firstSeen": "2021-03-07T04:04:22.562873+00:00",
    "id": 1616,
    "ipAddress": "192.0.2.120",
    "ipv6": null,
    "lastSeen": "2021-03-21T08:05:40.244960+00:00",
    "macAddress": "01:23:45:ab:cd:ef",
    "manufacturer": "VMware",
    "model": "VMware Virtual Platform",
    "name": "Example",
    "operatingSystem": "CentOS",
    "operatingSystemVersion": "6.6",
    "purdueLevel": 4.0,
    "riskLevel": 5,
    "sensor": {
        "name": "North conference room",
        "type": "Physical Sensor"
    },
    "site": {
        "location": "Palo Alto",
        "name": "Palo Alto Offices"
    },
    "tags": [
        "Discover",
        "Example"
    ],
    "type": "Virtual Machines",
    "user": "",
    "visibility": "Full"
}

Enriquecimiento de entidades

Nombre del campo de enriquecimiento Lógica: Cuándo aplicarla
categoría Cuando está disponible en JSON
id Cuando está disponible en JSON
ipAddress Cuando está disponible en JSON
macAddress Cuando está disponible en JSON
nombre Cuando está disponible en JSON
os Cuando está disponible en JSON
purdue_level Cuando está disponible en JSON
risk_level Cuando está disponible en JSON
tags Cuando está disponible en JSON
tipo Cuando está disponible en JSON
usuario Cuando está disponible en JSON
visibility Cuando está disponible en JSON
sitio Cuando está disponible en JSON
vínculo Cuando está disponible en JSON
Muro de casos
Tipo de resultado Descripción Tipo
Mensaje de salida*

La acción no debería fallar ni detener la ejecución de una guía:

if enriched some(is_success = true): "Successfully enriched the following entities using Armis:\n".format(entity.identifier)

Si no se enriquecieron algunas (is_success = true): "Action wasn't able to enriche the following entities using Armis:\n".format(entity.identifier)

Si no se enriquecieron todas (is_success = false): "No entities were enriched".

La acción debería fallar y detener la ejecución de una guía:
si se produce un error grave, como credenciales incorrectas, falta de conexión con el servidor, entre otros: "Error executing action "Enrich Entities". Reason: {0}''.format(error.Stacktrace)

General
Tabla de la entidad Entidad

Enumera las conexiones de alertas

Enumera las conexiones relacionadas con la alerta en Armis.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
ID de alerta Número entero Sí Especifica el ID de la alerta de la que deseas extraer los datos de las conexiones.
Gravedad más baja para recuperar DDL

Media

Valores posibles:

  • Baja
  • Medio
  • Alta
No Especifica la gravedad más baja de las conexiones que se deben usar cuando se recuperan.
Cantidad máxima de conexiones que se devolverán Número entero 50 No Especifica cuántas conexiones se deben mostrar.

Fecha de ejecución

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 o falso is_success:False

Resultado de JSON

{
    "band": null,
    "channel": null,
    "dhcpAuthenticationDuration": null,
    "duration": 12339,
    "endTimestamp": "2021-03-18T20:19:31.562873+00:00",
    "id": 33355,
    "inboundTraffic": 12412512,
    "outboundTraffic": 19626489,
    "protocol": "Bluetooth",
    "radiusAuthenticationDuration": null,
    "risk": "Medium",
    "rssi": null,
    "sensor": {
        "name": "EXAMPLE",
        "type": "Switch"
    },
    "site": {
        "location": "Location",
        "name": "Location HQ"
    },
    "snr": null,
    "sourceId": 2097,
    "startTimestamp": "2021-03-18T16:53:52.562873+00:00",
    "targetId": 217,
    "title": "Connection between Example and user's iPhone",
    "totalAssociationDuration": null,
    "traffic": 32039001,
    "wlanAssociationDuration": null
}
Muro de casos
Tipo de resultado Descripción Tipo
Mensaje de salida*

La acción no debería fallar ni detener la ejecución de una guía:

Si el código es 200 y hay datos disponibles (is_success = true): "Successfully returned connections related to the alert {alertId} based on the provided criteria in Armis."

Si el código es 200 y no hay datos disponibles (is_success=false): "No se encontraron conexiones relacionadas con la alerta {alertId} según los criterios proporcionados en Armis".

La acción debería fallar y detener la ejecución de una guía:

if fatal error, like wrong credentials, no connection to server, other: "Error executing action "List Alert Connections". Reason: {0}''.format(error.Stacktrace)

General
Tabla del muro de casos

Nombre: Comunicaciones disponibles

Columnas:

  • Título
  • Protocolo
  • Gravedad
  • Hora de inicio
  • Hora de finalización
General

Actualiza el estado de la alerta

Actualiza el estado de la alerta en Armis.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
ID de alerta Número entero Sí Especifica el ID de la alerta para la que quieres actualizar el estado.
Estado DDL

No controlada

Valores posibles:

  • No controlada
  • Suprimida
  • Resuelto
No Especifica qué estado se debe establecer para la alerta.

Fecha de ejecución

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 o falso is_success:False
Muro de casos
Tipo de resultado Descripción Tipo
Mensaje de salida*

La acción no debería fallar ni detener la ejecución de una guía:

if 200 (is_success = true): "Successfully updated status of the alert "{alert id}" to "{status}" in Armis.".

Si es 400 (is_success=true): "La alerta "{alert id}" ya tiene el estado "{status}" en Armis. "

La acción debería fallar y detener la ejecución de una guía:

Si se produce un error grave, como credenciales incorrectas, falta de conexión con el servidor, etc.: "Error al ejecutar la acción "Actualizar estado de la alerta". Reason: {0}''.format(error.Stacktrace)

Si es 404: "Error executing action "Update Alert Status". Motivo: No se encontró la alerta "{alert id}" en Armis.'

General

Conector

Para obtener más información sobre cómo configurar conectores en Google SecOps, consulta Transferir tus datos (conectores).

Armis: Conector de alertas

Extrae alertas con actividades relacionadas de Armis.

Parámetros del conector

Usa los siguientes parámetros para configurar el conector:

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Nombre del campo del producto String alert_type Sí

Es el nombre del campo en el que se almacena el nombre del producto.

El valor predeterminado es alert_type.

El nombre del producto afecta principalmente la asignación. Para optimizar y mejorar el proceso de asignación del conector, el valor predeterminado alert_type se resuelve en un valor de resguardo al que se hace referencia desde el código. Cualquier entrada no válida para este parámetro se resuelve en un valor de resguardo de forma predeterminada.

Nombre del campo del evento String tipo Sí

Es el nombre del campo que determina el nombre del evento (subtipo).

Nombre del campo del entorno String "" No

Es el nombre del campo en el que se almacena el nombre del entorno.

Si falta el campo environment, el conector usa el valor predeterminado.

Environment Regex Pattern String .* No

Es un patrón de expresión regular que se ejecuta en el valor que se encuentra en el campo Environment Field Name. Este parámetro te permite manipular el campo de entorno con la lógica de expresiones regulares.

Usa el valor predeterminado .* para recuperar el valor sin procesar de Environment Field Name requerido.

Si el patrón de expresión regular 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, en segundos, para el proceso de Python que ejecuta la secuencia de comandos actual.

Raíz de la API String https:// Sí Es la raíz de la API de la instancia de Armis.
Secreto de API Contraseña N/A Sí Es el secreto de API de la cuenta de Armis.
Gravedad más baja para recuperar Baja Baja No Es la gravedad más baja que se usará para recuperar alertas. Valores posibles: Low, Medium, High.
Cantidad máxima de horas hacia atrás Número entero 1 No

Es la cantidad de horas antes de la primera iteración del conector para recuperar las alertas.

Este parámetro se puede aplicar a la iteración inicial del conector después de que lo habilites por primera vez o al valor de resguardo de una marca de tiempo de conector vencida.

Cantidad máxima de alertas que se recuperarán Número entero 10 No Es la cantidad de alertas que se procesarán por iteración del conector. El valor máximo es 1000.
Use whitelist as a blacklist Casilla de verificación Marcado Sí

Si se selecciona, el conector usa la lista dinámica como una lista de entidades bloqueadas.

Verificar SSL Casilla de verificación Desmarcado Sí Si se selecciona, la integración valida el certificado SSL cuando se conecta al servidor de Armis.
Dirección del servidor proxy String No Es la dirección del servidor proxy que se usará.
Nombre de usuario del proxy String No Es el nombre de usuario del proxy con el que se autenticará.
Contraseña del proxy Contraseña No Es la contraseña del proxy con la que se realizará la autenticación.

Reglas del conector

El conector admite proxies.

¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.