Recopila registros de APM de BIG-IP de F5
En este documento, se describe cómo puedes recopilar registros de F5 BIG-IP Access Policy Manager (APM) con un reenvío de Google Security Operations.
Para obtener más información, consulta Transferencia de datos a Google Security Operations.
Una etiqueta de transferencia identifica el analizador que normaliza los datos de registro sin procesar en formato UDM estructurado. La información de este documento se aplica al analizador con la etiqueta de transferencia F5_BIGIP_APM
.
Configura APM de F5 BIG-IP
- Accede al portal de la utilidad de configuración de BIG-IP con credenciales de administrador.
- Selecciona Main > System > Logs > Configuration > Remote logging.
En la sección Propiedades, haz lo siguiente:
- En el campo IP remota, ingresa la dirección IP del reenviador de Operaciones de seguridad de Google.
- En el campo Puerto remoto, ingresa un número de puerto alto.
Haz clic en Agregar.
Haz clic en Actualizar.
En el caso de los registros de APM, solo se admite el formato syslog de Berkeley Software Distribution (BSD).
Según las firmas del APM, el recopilador solo procesa los registros del APM. El recopilador de eventos de APM de F5 BIG-IP también admite registros de subprocesos múltiples de dispositivos LTM 11.6 a 12.1.1.
Si usas iRule, usa el formato recomendado de iRule. Google Security Operations solo admite el siguiente formato de iRule:
# log_header_requests ################################################################################### ################################################# # Purpose: logs header information to Local Traffic log # # # # Update-Log Date By Description # Created 02/07/2020 E01961 Initial implementation # # ################################################################################### ################################################ when HTTP_REQUEST { set LogString "Client [IP::client_addr]:[TCP::client_port] -> [HTTP::host] [HTTP::uri]" log local5. "=================" log local5. "$LogString (request)" foreach aHeader [HTTP::header names] { log local5. "$aHeader: [HTTP::header value $aHeader]" } # set UserID [URI::query "?[HTTP::payload]" "UserID"] # log local0. "User $UserID attempted login from [IP::client_addr] and referer: [HTTP::header "Referer"]" # log local0. "=============================================" } when HTTP_RESPONSE { log local5. "==================" log local5. "$LogString (response) - status: [HTTP::status]" foreach aHeader [HTTP::header names] { log local5. "$aHeader: [HTTP::header value $aHeader]" } # log local0. "============================================="
Configura el DNS de BIG-IP de F5
Para configurar el DNS de F5 BIG-IP, realiza las siguientes tareas:
- Crea un grupo de servidores de registro remotos.
- Crea un destino de registro remoto de alta velocidad.
- Crea un destino de registro remoto de alta velocidad con formato.
- Crea un publicador.
- Crea un perfil de registro de DNS personalizado.
- Agrega un perfil de registro de DNS al objeto de escucha.
Crea un grupo de servidores de registro remotos
- En la pestaña Principal, selecciona DNS > Entrega > Balanceo de cargas > Grupos o tráfico local > Grupos.
- En la ventana Lista de grupos que aparece, haz clic en Crear.
- En la ventana Grupo nuevo que aparece, en el campo Nombre, proporciona un nombre único para el grupo.
- En la sección Miembros nuevos, agrega la dirección IP de cada servidor de registro remoto que quieras incluir en el grupo:
- En el campo Dirección, ingresa la dirección IP del reenvío de Google Security Operations o selecciona una dirección de nodo de la lista de nodos.
- En el campo Puerto de servicio, escribe un número de servicio o selecciona un nombre de servicio de la lista. Asegúrate de haber configurado el puerto de registro remoto correcto.
- Haz clic en Agregar y, luego, en Listo.
Crea un destino de registro remoto de alta velocidad
- En la pestaña Principal, selecciona Sistema > Registros > Configuración > Destinos de registro.
- En la ventana Log destinations que aparece, haz clic en Create.
- En el campo Nombre, proporciona un nombre único y fácil de identificar para este destino.
- En la lista Tipo, selecciona Registro remoto de alta velocidad.
- En la lista Nombre del grupo, selecciona el grupo de servidores de registro remotos al que deseas que el sistema BIG-IP envíe mensajes de registro.
- En la lista Protocolo, selecciona el protocolo que usan los miembros del grupo de registro de alta velocidad.
- Haz clic en Finalizado.
Crea un destino de registro remoto de alta velocidad con formato
- En la pestaña Principal, selecciona Sistema > Registros > Configuración > Destinos de registro.
- En la ventana Log destinations que aparece, haz clic en Create.
- En el campo Nombre, proporciona un nombre único y fácil de identificar para este destino.
- En la lista Tipo, selecciona un destino de registro con formato como Syslog remoto. El sistema BIG-IP ahora está configurado para enviar una cadena de texto con formato a los servidores de registro.
- En la lista Tipo, selecciona un formato para los registros.
- En la pestaña Forward To, selecciona la lista High-speed log destination y, luego, selecciona el destino que apunta a un grupo de servidores syslog remotos a los que deseas que el sistema BIG-IP envíe mensajes de registro.
- Haz clic en Finalizado.
Crea un publicador
- En la pestaña Principal, selecciona Sistema > Registros > Configuración > Publicadores de registros.
- En la ventana Publicadores de registros que aparece, haz clic en Crear.
- En el campo Nombre, proporciona un nombre único y fácil de identificar para el publicador.
- En la lista Publicador de registros, selecciona el destino creado anteriormente de la lista disponible.
- Para mover el destino a la lista seleccionada, haz clic en << Mover.
- Si usas un destino con formato, selecciona el destino recién creado que coincida con tus servidores de registro, como Syslog remoto, Splunk o ArcSight.
- Haz clic en Finalizado.
Crea un perfil de registro de DNS personalizado
- En la pestaña Principal, selecciona DNS > Entrega > Perfiles > Otro Registro de DNS o Tráfico local > Perfiles > Otros > Registro de DNS.
- En la ventana Lista de perfiles de registro de DNS que aparece, haz clic en Crear.
- En el campo Nombre, proporciona un nombre único para el perfil.
- En la lista Publicador de registros, selecciona un destino al que el sistema BIG-IP envía las entradas de registro de DNS.
- Si quieres que el sistema BIG-IP haga lo siguiente:
- Para registrar todas las consultas de DNS, en el parámetro de configuración Registrar consultas, asegúrate de que esté seleccionada la casilla de verificación habilitada.
- Para registrar todas las respuestas de DNS, en el parámetro de configuración Registrar respuestas, selecciona la casilla de verificación habilitada.
- Para incluir el ID de la búsqueda que envía el cliente en los mensajes de registro, selecciona la casilla de verificación habilitada en el parámetro de configuración Incluir ID de búsqueda.
- Haz clic en Finalizado.
Agrega un perfil de registro de DNS al objeto de escucha
- En la pestaña Principal, selecciona DNS > Entrega > Procesadores de escucha > Procesador de escucha de DNS.
- En la sección Servicio, en la lista Perfil de DNS, selecciona el perfil de DNS que configuraste anteriormente.
- Haz clic en Actualizar.
Configura el reenvío de Google Security Operations para transferir los registros de APM de F5 BIG-IP
- Ve a Configuración del SIEM > Reenviadores.
- Haz clic en Agregar un nuevo reenvío.
- En el campo Nombre del reenviador, ingresa un nombre único para el reenviador.
- Haz clic en Enviar. Se agregará el reenvío y aparecerá la ventana Add collector configuration.
- En el campo Nombre del recopilador, escribe un nombre.
- Selecciona F5 BIGIP Access Policy Manager como el Tipo de registro.
- Selecciona Syslog como el Tipo de recopilador.
- Configura los siguientes parámetros de entrada obligatorios:
- Protocolo: Especifica el protocolo.
- Dirección: Especifica la dirección IP o el nombre de host de destino en el que reside el recopilador y al que se dirigen los datos de syslog.
- Puerto: Especifica el puerto de destino en el que reside el recopilador y escucha los datos de syslog.
- Haz clic en Enviar.
Para obtener más información sobre los reenvíadores de Google Security Operations, consulta Administra la configuración de los reenvíadores a través de la IU de Google Security Operations.
Si tienes problemas para crear reenvíos, comunícate con el equipo de asistencia de Operaciones de seguridad de Google.
Referencia de la asignación de campos
Este analizador de APM de F5 BIG-IP extrae campos de los mensajes de syslog y los clasifica según la fuente de la aplicación (tmsh, tmm, apmd, httpd o alguna otra). Luego, asigna estos campos extraídos al UDM, controla varios formatos de registro y enriquece los datos con metadatos como la gravedad, la ubicación y la información del usuario.
Tabla de asignación de UDM
Campo de registro | Asignación de UDM | Lógica |
---|---|---|
aplicación | principal.application | El valor se toma del campo application que extrae el filtro grok. |
bytes_in | network.received_bytes | El valor se toma del campo bytes_in que extrae el filtro grok y se convierte en un número entero sin signo. |
bytes_out | network.sent_bytes | El valor se toma del campo bytes_out que extrae el filtro grok y se convierte en un número entero sin signo. |
cmd_data | principal.process.command_line | El valor se toma del campo cmd_data que extrae el filtro de KV. |
destination_ip | target.ip | El valor se toma del campo destination_ip que extrae el filtro grok. |
destination_port | target.port | El valor se toma del campo destination_port que extrae el filtro grok y se convierte en un número entero. |
carpeta | principal.process.file.full_path | El valor se toma del campo folder que extrae el filtro de KV. |
geoCountry | principal.location.country_or_region | El valor se toma del campo geoCountry que extrae el filtro grok. |
geoState | principal.location.state | El valor se toma del campo geoState que extrae el filtro grok. |
inner_msg | security_result.description | El valor se toma del campo inner_msg que extrae el filtro grok cuando no hay otra descripción específica disponible. |
ip_protocol | network.ip_protocol | El valor se toma del campo ip_protocol que extrae el filtro grok. |
principal_hostname | principal.hostname | El valor se toma del campo principal_hostname que extrae el filtro grok. |
principal_ip | principal.ip | El valor se toma del campo principal_ip que extrae el filtro grok. |
process_id | principal.process.pid | El valor se toma del campo process_id que extrae el filtro grok. |
rol | user_role.name | El valor se toma del campo role que extrae el filtro grok. Si el campo role contiene "admin" (sin distinción entre mayúsculas y minúsculas), el valor se establece en "ADMINISTRATOR". |
gravedad, | security_result.severity_details | Aquí se almacena el valor original del mensaje de syslog. El valor se deriva del campo severity con lógica condicional: CRITICAL -> CRITICAL ERR -> ERROR ALERT, EMERGENCY -> HIGH INFO, NOTICE -> INFORMATIONAL DEBUG -> LOW WARN -> MEDIUM |
source_ip | principal.ip | El valor se toma del campo source_ip que extrae el filtro grok. |
source_port | principal.port | El valor se toma del campo source_port que extrae el filtro grok y se convierte en un número entero. |
estado | security_result.summary | El valor se toma del campo status que extrae el filtro de KV. |
timestamp | metadata.event_timestamp, marca de tiempo | El valor se toma del campo timestamp que extrae el filtro grok y se analiza en un objeto de marca de tiempo. El campo timestamp en el objeto event de nivel superior también obtiene este valor. |
usuario | principal.user.userid | El valor se toma del campo user que extrae el filtro grok, después de quitar los prefijos "id\" o "ID\". El valor se deriva en función de la presencia de otros campos: Si existe user : USER_UNCATEGORIZED Si existen source_ip y destination_ip : NETWORK_CONNECTION Si existen principal_ip o principal_hostname : STATUS_UPDATE De lo contrario: GENERIC_EVENT Se codifica como "BIGIP_APM". Está codificado como "F5". Si el campo result es "failed", el valor se establece en "BLOCK". |
¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.