Recoger registros de Kiteworks (antes Accellion)

Disponible en:

En este documento se explica cómo ingerir registros de Kiteworks (antes Accellion) en Google Security Operations mediante Bindplane. El analizador extrae el campo audit_message de los mensajes SYSLOG y gestiona tanto los mensajes con formato JSON (mediante grok para extraer el textPayload) como los mensajes de texto sin formato. A continuación, aplica un conjunto común de transformaciones definidas en auditd.include y añade asignaciones específicas para eventos de tipo SYSCALL, lo que enriquece los campos del UDM con los datos extraídos.

Antes de empezar

Asegúrate de que cumples los siguientes requisitos previos:

  • Una instancia de Google SecOps
  • Un host con Windows 2012 SP2 o versiones posteriores, o Linux con systemd
  • Si se ejecuta a través de un proxy, asegúrese de que los puertos del cortafuegos estén abiertos según los requisitos del agente Bindplane.
  • Acceso privilegiado a la consola de administración o al dispositivo de Kiteworks (antes Accellion)

Obtener el archivo de autenticación de ingestión de Google SecOps

  1. Inicia sesión en la consola de Google SecOps.
  2. Ve a Configuración de SIEM > Agentes de recogida.
  3. 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

  1. Inicia sesión en la consola de Google SecOps.
  2. Ve a Configuración de SIEM > Perfil.
  3. Copia y guarda el ID de cliente de la sección Detalles de la organización.

Instalar el agente de Bindplane

Instala el agente Bindplane en tu sistema operativo Windows o Linux siguiendo las instrucciones que se indican a continuación.

Instalación de ventanas

  1. Abre la petición de comando o PowerShell como administrador.
  2. Ejecuta el siguiente comando:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Instalación de Linux

  1. Abre un terminal con privilegios de root o sudo.
  2. 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

Configurar el agente de Bindplane para ingerir Syslog y enviarlo a Google SecOps

  1. Accede al archivo de configuración:

    1. 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.
    2. Abre el archivo con un editor de texto (por ejemplo, nano, vi o Bloc de notas).
  2. 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_file_path: '/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
        log_type: 'ACCELLION'
        raw_log_field: body
        ingestion_labels:
    
    service:
      pipelines:
        logs/source0__chronicle_w_labels-0:
          receivers:
            - udplog
          exporters:
            - chronicle/chronicle_w_labels
    

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 el reenvío de Syslog en Kiteworks (antes Accellion)

  1. Inicia sesión en la consola de gestión de Kiteworks como administrador.
  2. Ve a la página Ubicaciones con una de estas rutas:
    • Interfaz de usuario antigua: ve a Sistema > Ubicaciones.
    • Nueva interfaz de usuario: ve a Configuración del sistema > Ubicaciones.
  3. Selecciona la ubicación de destino en la lista.
  4. Ve a la sección Servicios externos.
  5. Despliega el panel Syslog Settings (Configuración de Syslog).
  6. Haga clic en Añadir para crear una configuración de servidor syslog.
  7. Proporcione los siguientes detalles de configuración:
    • Servidor Syslog: introduce la dirección IP del agente de Bindplane.
    • Protocolo: selecciona UDP o TCP, en función de la configuración del agente de Bindplane.
    • Puerto: introduce el número de puerto del agente de Bindplane (por ejemplo, 514).
    • Formato: selecciona Formato JSON (recomendado para el análisis estructurado).
    • Zona horaria: selecciona la zona horaria UTC para que haya coherencia universal en todos los sistemas.
  8. Haz clic en Guardar para aplicar la configuración.

Tabla de asignación de UDM

Campo de registro Asignación de UDM Lógica
acct principal.user.user_display_name El valor de acct del campo msg del registro sin procesar.
acct target.user.user_display_name El valor de acct del campo msg del registro sin procesar.
addr principal.ip El valor de addr del campo msg del registro sin procesar.
a0 security_result.about.labels.value El valor de a0 del campo msg del registro sin procesar, donde el key correspondiente es "a0".
a1 security_result.about.labels.value El valor de a1 del campo msg del registro sin procesar, donde el key correspondiente es "a1".
a2 security_result.about.labels.value El valor de a2 del campo msg del registro sin procesar, donde el key correspondiente es "a2".
a3 security_result.about.labels.value El valor de a3 del campo msg del registro sin procesar, donde el key correspondiente es "a3".
arch security_result.about.platform_version El valor de arch del campo msg del registro sin procesar. Solo se aplica a type_name SYSCALL.
auid about.user.userid El valor de auid del campo msg del registro sin procesar.
auid security_result.detection_fields.value El valor de auid del campo msg del registro sin procesar, donde el key correspondiente es "auid".
comm principal.application El valor de comm del campo msg del registro sin procesar.
cmd principal.process.command_line El valor de cmd del campo msg del registro sin procesar.
cwd security_result.detection_fields.value El valor de cwd del campo msg del registro sin procesar, donde el key correspondiente es "cwd".
cwd target.process.file.full_path El valor de cwd del campo msg del registro sin procesar.
exe principal.process.file.full_path El valor de exe del campo msg del registro sin procesar.
exe target.process.file.full_path El valor de exe del campo msg del registro sin procesar.
exit security_result.about.labels.value El valor de exit del campo msg del registro sin procesar, donde el key correspondiente es "Exit Code".
hostname principal.hostname El valor de hostname del campo msg del registro sin procesar. Valor codificado "zing-h2" del campo msg del registro sin procesar.
key security_result.about.registry.registry_key El valor de key del campo msg del registro sin procesar. Solo se aplica a type_name SYSCALL.
log_type metadata.log_type El valor de log_type del registro sin procesar.
msg security_result.action_details El valor que aparece después de res= en el campo msg del registro sin procesar.
msg security_result.summary Combinación de campos del campo msg del registro en bruto. Por ejemplo, "session_open success" o "setcred success". Analizado a partir de la sección audit del campo msg del registro sin procesar. Asignación basada en el campo type del registro sin procesar. Por ejemplo, "USER_START" se asigna a "USER_LOGIN", "CRED_DISP" se asigna a "USER_LOGOUT", "CRED_ACQ" se asigna a "USER_LOGIN", "USER_END" se asigna a "USER_LOGOUT", "CRED_REFR" se asigna a "USER_LOGIN", "USER_CMD" se asigna a "USER_LOGIN", "CWD" se asigna a "STATUS_UPDATE", "PROCTITLE" se asigna a "STATUS_UPDATE", "USER_ACCT" se asigna a "USER_UNCATEGORIZED" y "SYSCALL" se asigna a "USER_UNCATEGORIZED". Valor del campo type del campo msg del registro sin procesar. Se extrae de la sección audit del campo msg del registro sin procesar.
node principal.hostname El valor de node del campo msg del registro sin procesar.
pid principal.process.pid El valor de pid del campo msg del registro sin procesar.
ppid principal.process.parent_process.pid El valor de ppid del campo msg del registro sin procesar.
proctitle target.process.file.full_path Valor hexadecimal decodificado de proctitle del campo msg del registro sin procesar. Codificado como "LINUX". Se define como "ALLOW" si res=success está presente en el campo msg del registro sin procesar.
ses network.session_id El valor de ses del campo msg del registro sin procesar.
syscall security_result.about.labels.value El valor de syscall del campo msg del registro sin procesar, donde el key correspondiente es "Syscall".
success security_result.summary Se combina con otros campos para formar el resumen. En el caso de los eventos SYSCALL, la lógica es la siguiente: si success=yes, entonces "yes, The System call succeeded" (sí, la llamada al sistema se ha realizado correctamente); de lo contrario, "no, The System call failed" (no, la llamada al sistema no se ha realizado correctamente).
terminal principal.terminal El valor de terminal del campo msg del registro sin procesar.
timestamp timestamp El valor de timestamp de la entrada de registro sin procesar.
tty principal.terminal El valor de tty del campo msg del registro sin procesar.
type metadata.product_event_type El valor de type del campo msg del registro sin procesar.
uid about.user.userid El valor de uid del campo msg del registro sin procesar. Solo se aplica a type_name SYSCALL.
uid target.user.userid El valor de uid del campo msg del registro sin procesar. Se asigna el valor "SETTING" si type es "USER_ACCT".

¿Necesitas más ayuda? Recibe respuestas de los miembros de la comunidad y de los profesionales de Google SecOps.