Recopila registros de Nutanix Prism
Descripción general
Este analizador procesa los registros de Nutanix Prism y controla los formatos JSON y syslog. Extrae campos de varias estructuras de registros, los normaliza en el UDM y enriquece los datos con contexto adicional, como información del usuario, detalles de la red y gravedad de la seguridad. El analizador también realiza acciones específicas según el método HTTP y el nivel de registro, y categoriza los eventos en tipos de eventos del UDM, como USER_LOGIN, STATUS_UPDATE y GENERIC_EVENT.
Antes de comenzar
- Asegúrate de tener una instancia de Google SecOps.
- Asegúrate de tener acceso con privilegios a Nutanix Prism Central.
- Asegúrate de tener un host de Windows 2012 SP2 o posterior, o bien un host de Linux con systemd.
- Si ejecutas la herramienta detrás de un proxy, asegúrate de que los puertos del firewall estén abiertos.
Obtén el archivo de autenticación de transferencia de Google SecOps
- Accede a la consola de Google SecOps.
- Ve a SIEM Settings > Collection Agents.
- Descarga el archivo de autenticación de transferencia.
Obtén el ID de cliente de Google SecOps
- Accede a la consola de Google SecOps.
- Ve a Configuración del SIEM > Perfil.
- Copia y guarda el ID de cliente de la sección Detalles de la organización.
Instala el agente de BindPlane
- Para la instalación en Windows, ejecuta la siguiente secuencia de comandos:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
. - Para la instalación en Linux, ejecuta la siguiente secuencia de comandos:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
. - Puedes encontrar opciones de instalación adicionales en esta guía de instalación.
Configura el agente de Bindplane para que ingiera Syslog y lo envíe a Google SecOps
- Accede a la máquina en la que está instalado el agente de BindPlane.
Edita el archivo
config.yaml
de la siguiente manera:receivers: tcplog: # Replace the below port <54525> and IP (0.0.0.0) with your specific values listen_address: "0.0.0.0:54525" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the creds location below according the placement of the credentials file you downloaded creds: '{ json file for creds }' # Replace <customer_id> below with your actual ID that you copied customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # You can apply ingestion labels below as preferred ingestion_labels: log_type: SYSLOG namespace: Namespace raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - tcplog exporters: - chronicle/chronicle_w_labels
Reinicia el agente de Bindplane para aplicar los cambios con el siguiente comando:
sudo systemctl bindplane restart
Exporta Syslog desde Nutanix Prism
- Accede a Prism Central con una cuenta con privilegios.
- Selecciona Configuración de Prism Central en el menú.
- Ve a Servidor Syslog.
- Haz clic en + Configurar servidor Syslog.
- Especifica valores para los parámetros de entrada en el diálogo Servidores Syslog:
- Nombre del servidor: Ingresa un nombre para el servidor (por ejemplo, Servidor de Bindplane de Google SecOps).
- Dirección IP: Ingresa la IP de tu agente de Bindplane.
- Puerto: Ingresa el puerto en el que escucha el agente de Bindplane.
- Protocolo de transporte: Selecciona TCP.
- Haz clic en Configurar.
- Haz clic en + Editar en la opción Fuentes de datos.
- Especifica los valores de los parámetros de entrada en el diálogo Data Sources and Respective Severity Level:
- Selecciona API Audit, Audit y Flow.
- Establece el nivel de gravedad de cada uno en 6 - Informativo.
- Haz clic en Guardar.
Tabla de asignación de UDM
Campo de registro | Asignación de UDM | Lógica |
---|---|---|
@timestamp |
metadata.event_timestamp |
La marca de tiempo del evento se analiza a partir del campo @timestamp . Se admiten los formatos yyyy-MM-dd HH:mm:ss.SSS , yyyy-MM-ddTHH:mm:ssZ y ISO8601 . |
agent.id |
observer.asset_id |
Se combina con agent.type para formar el ID del recurso de observador en el formato "agent.type:agent.id". |
agent.type |
observer.application |
Es la aplicación que se usa para la observación. |
agent.version |
observer.platform_version |
Es la versión de la aplicación de observador. |
alertUid |
security_result.detection_fields.value |
El valor del UID de la alerta se asigna al campo value dentro de detection_fields . El key se establece en "Alert Uid". |
api_version |
metadata.product_version |
Es la versión de la API. |
clientIp |
principal.ip , principal.asset.ip |
Dirección IP del cliente. |
client_type |
principal.labels.value |
Es el valor del tipo de cliente. El parámetro key se establece en "client_type". |
defaultMsg |
metadata.description |
Es el mensaje predeterminado. |
entity_uuid |
metadata.product_log_id |
Es el UUID de la entidad. |
http_method |
network.http.method |
Es el método HTTP. Se convirtió a mayúsculas. |
host.architecture |
principal.asset.hardware.cpu_platform |
Es la arquitectura del host. |
host.id |
principal.asset_id |
Se le agrega el prefijo "NUTANIX:" para crear el ID del activo principal. |
host.ip |
principal.ip , principal.asset.ip |
Dirección IP del host. |
host.mac |
principal.mac |
Dirección MAC del host. |
host.os.kernel |
principal.platform_patch_level |
Es la versión del kernel del sistema operativo host. |
host.os.platform |
principal.platform |
Es la plataforma del sistema operativo host. Se asigna a LINUX , WINDOWS , MAC o UNKNOWN_PLATFORM . |
host.os.version |
principal.platform_version |
Es la versión del sistema operativo del host. |
input.type |
network.ip_protocol |
Es el protocolo de red. Se asigna a "UDP" o "TCP". |
log.source.address |
principal.ip , principal.asset.ip , principal.port |
Se analizó para extraer la IP y el puerto de origen. |
logstash.collect.host |
observer.ip |
Es la dirección IP del recopilador de Logstash. |
logstash.collect.timestamp |
metadata.collected_timestamp |
Es la marca de tiempo del momento en que se recopiló el registro. |
logstash.ingest.host |
intermediary.hostname |
Es el nombre de host del servidor de transferencia de Logstash. |
logstash.ingest.timestamp |
metadata.ingested_timestamp |
Es la marca de tiempo del momento en que se transfirió el registro. |
logstash.irm_environment |
principal.labels.value |
Es el valor del entorno de la administración de derechos de Internet. El valor de key se establece en "irm_environment". |
logstash.irm_region |
principal.labels.value |
Es el valor de la región del DRM. El valor de key se establece en "irm_region". |
logstash.irm_site |
principal.labels.value |
Es el valor del sitio de la IRM. El valor de key se establece en "irm_site". |
logstash.process.host |
intermediary.hostname |
Es el nombre de host del servidor de procesamiento de Logstash. |
operationType |
metadata.product_event_type |
El tipo de operación. |
originatingClusterUuid |
additional.fields.value.string_value |
Es el UUID del clúster de origen. El key se establece en "UUID del clúster de origen". |
params.mac_address |
target.mac |
La dirección MAC de los parámetros. |
params.requested_ip_address |
target.ip , target.asset.ip |
Es la dirección IP solicitada en los parámetros. |
params.vm_name |
target.resource.name |
Nombre de la VM que se obtiene de los parámetros. |
program |
metadata.product_event_type |
Es el nombre del programa. |
rest_endpoint |
target.url |
Es el extremo de REST. |
sessionId |
additional.fields.value.string_value |
Es el ID de sesión. El parámetro key se establece en "ID de sesión". |
syslog_host |
principal.hostname , principal.asset.hostname |
Es el host de Syslog. |
timestamp |
metadata.event_timestamp |
Es la marca de tiempo del evento. |
username |
principal.user.user_display_name o principal.user.userid |
Nombre de usuario. Se usa como ID de usuario si http_method es "POST". |
uuid |
metadata.product_log_id |
Es el UUID. |
N/A | metadata.vendor_name |
Se codificó de forma rígida como "Nutanix_Prism". |
N/A | metadata.product_name |
Se codificó de forma rígida como "Nutanix_Prism". |
N/A | metadata.event_type |
Se determina según la lógica del analizador en función de los valores de has_principal , has_target , audit_log , network_set y http_method . Puede ser GENERIC_EVENT , USER_LOGIN , STATUS_UPDATE , USER_RESOURCE_ACCESS , RESOURCE_CREATION , USER_RESOURCE_UPDATE_CONTENT o USER_RESOURCE_DELETION . |
N/A | metadata.log_type |
Se codifica de forma rígida como "NUTANIX_PRISM". |
N/A | extensions.auth.type |
Se establece en "AUTHTYPE_UNSPECIFIED" si metadata.event_type es USER_LOGIN . |
N/A | security_result.severity |
Se determina según la lógica del analizador en función de log_level y syslog_pri . Puede ser CRITICAL , ERROR , HIGH , MEDIUM o INFORMATIONAL . |
¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.