Recopilar registros de Commvault
En este documento se explica cómo ingerir registros de Commvault en Google Security Operations mediante Bindplane. El analizador extrae datos de los registros COMMVAULT
y los clasifica como alertas, eventos o registros de auditoría. A continuación, normaliza y estructura los campos extraídos en un modelo de datos unificado (UDM) mediante el análisis de clave-valor, la extracción de marcas de tiempo y la asignación de campos.
Antes de empezar
Asegúrate de que cumples los siguientes requisitos previos:
- Instancia de Google SecOps
- Windows 2016 o versiones posteriores, o un host Linux con
systemd
- Si se ejecuta a través de un proxy, los puertos del cortafuegos están abiertos
- Acceso privilegiado a Commvault Cloud
Obtener el archivo de autenticación de ingestión de Google SecOps
- Inicia sesión en la consola de Google SecOps.
- Ve a Configuración de SIEM > Agentes de recogida.
- Descarga el archivo de autenticación de ingestión. Guarda el archivo de forma segura en el sistema en el que se instalará Bindplane.
Obtener el ID de cliente de Google SecOps
- Inicia sesión en la consola de Google SecOps.
- Ve a Configuración de SIEM > Perfil.
- Copia y guarda el ID de cliente de la sección Detalles de la organización.
Instalar el agente de Bindplane
Instalación de ventanas
- Abre el símbolo del sistema o PowerShell como administrador.
Ejecuta el siguiente comando:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Instalación de Linux
- Abre un terminal con privilegios de superusuario o sudo.
Ejecuta el siguiente comando:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
Recursos de instalación adicionales
Para ver más opciones de instalación, consulta la guía de instalación.
Configurar el agente de BindPlane para ingerir Syslog y enviarlo a Google SecOps
- Accede al archivo de configuración:
- Busca el archivo
config.yaml
. Normalmente, se encuentra en el directorio/etc/bindplane-agent/
en Linux o en el directorio de instalación en Windows. - Abre el archivo con un editor de texto (por ejemplo,
nano
,vi
o Bloc de notas).
- Busca el archivo
Edita el archivo
config.yaml
de la siguiente manera:receivers: udplog: # Replace the port and IP address as required listen_address: "0.0.0.0:514" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization ingestion_labels: log_type: 'COMMVAULT' raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
Sustituye el puerto y la dirección IP según sea necesario en tu infraestructura.
Sustituye
<customer_id>
por el ID de cliente real.Actualiza
/path/to/ingestion-authentication-file.json
a la ruta en la que se guardó el archivo de autenticación en la sección Obtener el archivo de autenticación de ingestión de Google SecOps.
Reinicia el agente de Bindplane para aplicar los cambios
Para reiniciar el agente de Bindplane en Linux, ejecuta el siguiente comando:
sudo systemctl restart bindplane-agent
Para reiniciar el agente de Bindplane en Windows, puedes usar la consola Servicios o introducir el siguiente comando:
net stop BindPlaneAgent && net start BindPlaneAgent
Configurar Syslog en Commvault Cloud
- Inicia sesión en la consola de gestión de Commvault.
- Ve a Gestionar > Sistema.
- Haz clic en la baldosa del conector SIEM.
- Haz clic en Añadir conector.
- En la pestaña General, introduce los siguientes detalles:
- Nombre del conector: introduce un nombre para el conector.
- Tipo de conector: selecciona Syslog.
- Datos de streaming: selecciona los datos que quieras exportar.
- Haz clic en Siguiente.
- En la pestaña Connector Definition (Definición del conector), haga clic en Add syslog server (Añadir servidor syslog).
- Proporcione los siguientes detalles de configuración:
- Servidor Syslog: introduce la dirección IP del agente de Bindplane.
- Número de puerto: introduce el número de puerto del agente de Bindplane.
- Haz clic en Enviar.
Tabla de asignación de UDM
Campo de registro | Asignación de UDM | Lógica |
---|---|---|
AgentType | event.idm.read_only_udm.observer.application | Valor tomado del campo AgentType del mensaje de registro. |
Alertid | event.idm.read_only_udm.security_result.detection_fields.value | Valor tomado del campo Alertid del mensaje de registro. Este campo se asigna a la clave alert_id . |
Alertname | event.idm.read_only_udm.security_result.detection_fields.value | Valor tomado del campo Alertname del mensaje de registro. Este campo se asigna a la clave alert_name . |
Alertseverity | event.idm.read_only_udm.security_result.severity | Este campo se usa para rellenar el campo security_result.severity en función de su valor. |
Alerttime | event.idm.read_only_udm.metadata.event_timestamp | Valor tomado del campo Alerttime del mensaje de registro y convertido en una marca de tiempo. |
BackupLevel | event.idm.read_only_udm.additional.fields.value.string_value | Valor tomado del campo BackupLevel del mensaje de registro. Este campo se asigna a la clave backup_level . |
BackupSet | event.idm.read_only_udm.additional.fields.value.string_value | Valor tomado del campo BackupSet del mensaje de registro. Este campo se asigna a la clave backup_set . |
Cliente | event.idm.read_only_udm.principal.hostname | Valor tomado del campo Client del mensaje de registro. |
CommCell | event.idm.read_only_udm.additional.fields.value.string_value | Valor tomado del campo CommCell del mensaje de registro. Este campo se asigna a la clave comcell_field . |
Ordenador | event.idm.read_only_udm.additional.fields.value.string_value | Valor tomado del campo Computer del mensaje de registro. Este campo se asigna a la clave computer_field . |
Descripción | event.idm.read_only_udm.metadata.description | Valor tomado del campo Description del mensaje de registro después de procesarlo y limpiarlo. |
DetectedCriteria | event.idm.read_only_udm.security_result.detection_fields.value | Valor tomado del campo DetectedCriteria del mensaje de registro. Este campo se asigna a la clave detected_criteria . |
DetectedTime | event.idm.read_only_udm.security_result.detection_fields.value | Valor tomado del campo DetectedTime del mensaje de registro. Este campo se asigna a la clave detected_time . |
Detalles | event.idm.read_only_udm.additional.fields.value.string_value | Valor tomado del campo Details del mensaje de registro. Este campo se asigna a la clave details_field . |
Eventid | event.idm.read_only_udm.metadata.product_log_id | Valor tomado del campo Eventid del mensaje de registro. |
Eventseverity | event.idm.read_only_udm.security_result.severity | Este campo se usa para rellenar el campo security_result.severity en función de su valor. |
Error | event.idm.read_only_udm.security_result.detection_fields.value | Valor tomado del campo Failure del mensaje de registro. Este campo se asigna a la clave failure_filed . |
Instancia | event.idm.read_only_udm.additional.fields.value.string_value | Valor tomado del campo Instance del mensaje de registro. Este campo se asigna a la clave instance_field . |
Jobid | event.idm.read_only_udm.principal.process.pid | Valor tomado del campo Jobid del mensaje de registro. |
MonitoringCriteria | event.idm.read_only_udm.additional.fields.value.string_value | Valor tomado del campo MonitoringCriteria del mensaje de registro. Este campo se asigna a la clave monitoring_criteria . |
Occurencetime | event.idm.read_only_udm.metadata.event_timestamp | Valor tomado del campo Occurencetime del mensaje de registro y convertido en una marca de tiempo. |
Opid | event.idm.read_only_udm.security_result.detection_fields.value | Valor tomado del campo Opid del mensaje de registro. Este campo se asigna a la clave op_id . |
Programa | event.idm.read_only_udm.principal.application | Valor tomado del campo Program del mensaje de registro. |
Nivel de gravedad | event.idm.read_only_udm.security_result.severity | Valor tomado del campo Severitylevel del mensaje de registro y asignado en función de una asignación predefinida. |
StoragePoliciesUsed | event.idm.read_only_udm.additional.fields.value.string_value | Valor tomado del campo StoragePoliciesUsed del mensaje de registro. Este campo se asigna a la clave storage_policies_used . |
Subclient | event.idm.read_only_udm.additional.fields.value.string_value | Valor tomado del campo Subclient del mensaje de registro. Este campo se asigna a la clave subclient_field . |
Tipo | event.idm.read_only_udm.security_result.detection_fields.value | Valor tomado del campo Type del mensaje de registro. Este campo se asigna a la clave alert_type . |
Nombre de usuario | event.idm.read_only_udm.principal.user.userid | Valor tomado del campo Username del mensaje de registro. |
anomaly_type | event.idm.read_only_udm.security_result.detection_fields.value | Valor extraído del campo Description mediante patrones grok. Este campo se asigna a la clave detected_anomaly_type . |
errores | event.idm.read_only_udm.security_result.detection_fields.value | Valor extraído del campo Description mediante patrones grok. Este campo se asigna a la clave errors_field . |
file_name | event.idm.read_only_udm.security_result.detection_fields.value | Valor extraído del campo Description mediante patrones grok. Este campo se asigna a la clave detected_malicious_file . |
media_agent | event.idm.read_only_udm.security_result.detection_fields.value | Valor extraído del campo Description mediante patrones grok. Este campo se asigna a la clave detected_media_agent . |
no_of_files_created | event.idm.read_only_udm.security_result.detection_fields.value | Valor extraído del campo Description mediante patrones grok. Este campo se asigna a la clave no_of_files_created_field . |
no_of_files_deleted | event.idm.read_only_udm.security_result.detection_fields.value | Valor extraído del campo Description mediante patrones grok. Este campo se asigna a la clave no_of_files_deleted_field . |
no_of_files_modified | event.idm.read_only_udm.security_result.detection_fields.value | Valor extraído del campo Description mediante patrones grok. Este campo se asigna a la clave no_of_files_modified_field . |
no_of_files_renamed | event.idm.read_only_udm.security_result.detection_fields.value | Valor extraído del campo Description mediante patrones grok. Este campo se asigna a la clave no_of_files_renamed_field . |
URL | event.idm.read_only_udm.network.http.referral_url | Valor extraído del campo Description mediante patrones grok. |
event.idm.read_only_udm.metadata.event_type | Este campo tiene el valor STATUS_UPDATE si el campo Client está presente; de lo contrario, tiene el valor GENERIC_EVENT . |
|
event.idm.read_only_udm.metadata.product_name | Este campo tiene el valor COMMVAULT . |
|
event.idm.read_only_udm.metadata.vendor_name | Este campo tiene el valor COMMVAULT . |
|
event.idm.read_only_udm.principal.user.user_role | Este campo tiene el valor ADMINISTRATOR si el campo User es Administrator . |
¿Necesitas más ayuda? Recibe respuestas de los miembros de la comunidad y de los profesionales de Google SecOps.