Recopila registros de FireEye NX
En este documento, se explica cómo transferir registros de Trellix Network Security (anteriormente FireEye NX) a Google Security Operations con Bindplane.
Antes de comenzar
Asegúrate de cumplir con los siguientes requisitos previos:
- Una instancia de Google SecOps
- Un host de Windows 2016 o versiones posteriores, o de Linux con
systemd - Si se ejecuta detrás de un proxy, asegúrate de que los puertos del firewall estén abiertos según los requisitos del agente de Bindplane.
- Acceso con privilegios a la consola de administración de Trellix Network Security (NX)
Obtén el archivo de autenticación de transferencia de Google SecOps
- Accede a la consola de Google SecOps.
- Ve a Configuración de SIEM > Agentes de recopilación.
- Descarga el archivo de autenticación de transferencia. Guarda el archivo de forma segura en el sistema en el que se instalará Bindplane.
Obtén el ID de cliente de Google SecOps
- Accede a 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.
Instala el agente de Bindplane
Instala el agente de Bindplane en tu sistema operativo Windows o Linux según las siguientes instrucciones.
Instalación de Windows
- 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 una terminal con privilegios de administrador o raíz.
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 obtener opciones de instalación adicionales, consulta la guía de instalación.
Configura el agente de Bindplane para transferir Syslog y enviarlo a Google SecOps
- Accede al archivo de configuración:
- Ubica el archivo
config.yaml. Por lo general, se encuentra en el/etc/bindplane-agent/directorio en Linux o en el directorio de instalación en Windows. - Abre el archivo con un editor de texto (por ejemplo,
nano,vio el Bloc de notas).
- Ubica el archivo
Edita el archivo
config.yamlde la siguiente manera:receivers: udplog: # Replace the port and IP address as required listen_address: "0.0.0.0:514" exporters: chronicle/fireeye_nx: compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds_file_path: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: <CUSTOMER_ID> # Replace with your regional endpoint endpoint: <ENDPOINT> log_type: 'FIREEYE_NX' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/fireeye_nx- Reemplaza el puerto y la dirección IP según sea necesario en tu infraestructura.
- Reemplaza
<CUSTOMER_ID>por el ID de cliente real. - Reemplaza el valor
<ENDPOINT>por tu extremo regional:- Estados Unidos:
malachiteingestion-pa.googleapis.com - Europa (Frankfurt):
europe-west3-malachiteingestion-pa.googleapis.com - Europa (Londres):
europe-west2-malachiteingestion-pa.googleapis.com - Europa (Zúrich):
europe-west6-malachiteingestion-pa.googleapis.com - Europa (Turín):
europe-west12-malachiteingestion-pa.googleapis.com - Asia (Tokio):
asia-northeast1-malachiteingestion-pa.googleapis.com - Medio Oriente (Tel Aviv):
me-west1-malachiteingestion-pa.googleapis.com - Australia (Sídney):
australia-southeast1-malachiteingestion-pa.googleapis.com
- Estados Unidos:
- Actualiza
/path/to/ingestion-authentication-file.jsona la ruta de acceso en la que se guardó el archivo de autenticación en la sección Obtén el archivo de autenticación de transferencia 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-agentPara reiniciar el agente de Bindplane en Windows, puedes usar la consola de Servicios o ingresar el siguiente comando:
net stop BindPlaneAgent && net start BindPlaneAgent
Configura el reenvío de Syslog en Trellix Network Security
- Accede a la consola de Trellix Network Security con una cuenta de administrador.
- Ve a Configuración > Notificaciones.
- Haz clic en la pestaña rsyslog.
- Selecciona la casilla de verificación Tipo de evento para habilitar las notificaciones de rsyslog.
- En el panel Configuración, proporciona los siguientes detalles de configuración:
- Formato predeterminado: Selecciona CEF.
- En la sección Lista de servidores de Rsyslog:
- Escribe un nombre descriptivo para la entrada nueva (por ejemplo,
Google SecOps BindPlane). - Haz clic en el botón Agregar servidor de Rsyslog.
- Escribe un nombre descriptivo para la entrada nueva (por ejemplo,
- Para el servidor recién agregado, proporciona los siguientes detalles de configuración:
- Habilitado: Marca la casilla de verificación para habilitar el servidor.
- Dirección IP: Ingresa la dirección IP del agente de Bindplane.
- Puerto: Ingresa el número de puerto del agente de Bindplane (por ejemplo,
514). - Protocolo: Selecciona UDP o TCP, según la configuración del agente de Bindplane.
- Tipos de eventos: Selecciona los tipos de eventos para reenviar (o selecciona todos para un registro integral).
- Haz clic en el botón Actualizar para guardar la configuración.
Tabla de asignación de UDM
| Campo de registro | Asignación de UDM | Lógica |
|---|---|---|
| alert.dst.ip | target.ip, target.asset.ip | Asignación directa desde el campo alert.dst.ip |
| alert.dst.mac | target.mac, target.asset.mac | Asignación directa desde el campo alert.dst.mac |
| alert.dst.port | target.port | Asignación directa desde el campo alert.dst.port |
| alert.explanation.cnc-services.cnc-service.address | target.ip, target.asset.ip | Asignación directa desde el campo alert.explanation.cnc-services.cnc-service.address |
| alert.explanation.cnc-services.cnc-service.port | target.port | Asignación directa desde el campo alert.explanation.cnc-services.cnc-service.port |
| alert.explanation.cnc-services.cnc-service.url | target.url | Asignación directa desde el campo alert.explanation.cnc-services.cnc-service.url |
| alert.explanation.malware-detected.malware.0.name | security_result.threat_name | Asignación directa desde el campo alert.explanation.malware-detected.malware.0.name en caso de detección de software malicioso múltiple en el array |
| alert.explanation.malware-detected.malware.md5sum | target.file.md5 | Asignación directa desde el campo alert.explanation.malware-detected.malware.md5sum |
| alert.explanation.malware-detected.malware.name | security_result.threat_name | Asignación directa desde el campo alert.explanation.malware-detected.malware.name |
| alert.explanation.malware-detected.malware.sha1 | target.file.sha1 | Asignación directa desde el campo alert.explanation.malware-detected.malware.sha1 |
| alert.explanation.malware-detected.malware.sha256 | target.file.sha256 | Asignación directa desde el campo alert.explanation.malware-detected.malware.sha256 |
| alert.explanation.malware-detected.malware.url | target.url | Asignación directa desde el campo alert.explanation.malware-detected.malware.url |
| alert.name | read_only_udm.metadata.product_event_type | Asignación directa desde el campo alert.name |
| alert.occurred | read_only_udm.metadata.event_timestamp | Asignación directa desde el campo alert.occurred |
| alert.src.domain | principal.hostname | Asignación directa desde el campo alert.src.domain |
| alert.src.host | principal.hostname | Asignación directa desde el campo alert.src.host |
| alert.src.ip | principal.ip, principal.asset.ip | Asignación directa desde el campo alert.src.ip |
| alert.src.mac | principal.mac, principal.asset.mac | Asignación directa desde el campo alert.src.mac |
| alert.src.port | principal.port | Asignación directa desde el campo alert.src.port |
| alert.src.smtp-mail-from | network.email.from | Asignación directa desde el campo alert.src.smtp-mail-from |
| alert.smtp-message.id | network.email.mail_id | Asignación directa desde el campo alert.smtp-message.id |
| alert.smtp-message.subject | network.email.subject | Asignación directa desde el campo alert.smtp-message.subject |
| client_ip | principal.ip | Asignación directa desde el campo client_ip |
| client_src_port | principal.port | Asignación directa desde el campo client_src_port |
| compression | additional.fields.value.string_value | Asignación directa desde el campo compression |
| etag | additional.fields.value.string_value | Asignación directa desde el campo etag |
| host | principal.hostname | Asignación directa desde el campo host |
| log_id | read_only_udm.metadata.product_log_id | Asignación directa desde el campo log_id |
| method | network.http.method | Asignación directa desde el campo method |
| persistent_session_id | network.session_id | Asignación directa desde el campo persistent_session_id |
| pool | additional.fields.value.string_value | Asignación directa desde el campo pool |
| pool_name | additional.fields.value.string_value | Asignación directa desde el campo pool_name |
| request_id | additional.fields.value.string_value | Asignación directa desde el campo request_id |
| request_state | additional.fields.value.string_value | Asignación directa desde el campo request_state |
| response_code | network.http.response_code | Asignación directa desde el campo response_code |
| rewritten_uri_query | additional.fields.value.string_value | Asignación directa desde el campo rewritten_uri_query |
| server_ip | target.ip | Asignación directa desde el campo server_ip |
| server_name | target.hostname | Asignación directa desde el campo server_name |
| server_src_port | target.port | Asignación directa desde el campo server_src_port |
| service_engine | additional.fields.value.string_value | Asignación directa desde el campo service_engine |
| ssl_cipher | network.tls.cipher | Asignación directa desde el campo ssl_cipher |
| ssl_version | network.tls.version_protocol | Asignación directa desde el campo ssl_version |
| uri_path | network.http.referral_url | Asignación directa desde el campo uri_path |
| uri_query | additional.fields.value.string_value | Asignación directa desde el campo uri_query |
| user_id | principal.user.userid | Asignación directa desde el campo user_id |
| virtualservice | additional.fields.value.string_value | Asignación directa desde el campo virtualservice |
| vs_name | additional.fields.value.string_value | Asignación directa desde el campo vs_name |
| read_only_udm.metadata.event_type | Se establece en SCAN_UNCATEGORIZED si están presentes las direcciones IP principal y de destino, STATUS_UPDATE si está presente la IP o el nombre de host principal, USER_UNCATEGORIZED si está presente el ID de usuario principal, EMAIL_TRANSACTION si están presentes alert.src.smtp-mail-from y alert.dst.smtp-to, y GENERIC_EVENT en caso contrario. |
|
| read_only_udm.metadata.ingested_timestamp | Se establece en la marca de tiempo actual si alert.attack-time no está presente. |
|
| read_only_udm.metadata.log_type | Se establece en FIREEYE_NX. |
|
| read_only_udm.metadata.vendor_name | Se establece en FireEye. |
|
| read_only_udm.network.application_protocol | Se establece en HTTP si el mensaje contiene "http" (no distingue mayúsculas de minúsculas). |
|
| read_only_udm.security_result.action | Se establece en ALLOW si _source.action es "notified" (no distingue mayúsculas de minúsculas), BLOCK si _source.action es "blocked" (no distingue mayúsculas de minúsculas) y UNKNOWN_ACTION en caso contrario. |
|
| read_only_udm.security_result.category | Se establece en NETWORK_SUSPICIOUS si sec_category contiene "DOMAIN.MATCH" (no distingue mayúsculas de minúsculas), NETWORK_MALICIOUS si sec_category contiene "INFECTION.MATCH" o "WEB.INFECTION" (no distingue mayúsculas de minúsculas), SOFTWARE_MALICIOUS si sec_category contiene "MALWARE.OBJECT" (no distingue mayúsculas de minúsculas), NETWORK_COMMAND_AND_CONTROL si sec_category contiene "MALWARE.CALLBACK" (no distingue mayúsculas de minúsculas) y UNKNOWN_CATEGORY en caso contrario. |
|
| read_only_udm.security_result.severity | Se establece en MEDIUM si _source.severity o temp_severity es "majr" (no distingue mayúsculas de minúsculas), LOW si _source.severity o temp_severity es "minr" (no distingue mayúsculas de minúsculas) y no se establece en caso contrario. |
|
| read_only_udm.security_result.summary | Se establece en el valor de security_result.threat_name. |
|
| is_alert | Se establece en true. |
|
| is_significant | Se establece en true. |
¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.