Recopila registros de Juniper Junos
En este documento, se describe cómo recopilar registros de Juniper Junos con un retransmisor 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 JUNIPER_JUNOS
.
Configura el registro estructurado para un dispositivo SRX de Juniper Networks
El formato de registro estructurado extrae información de los mensajes de registro. El formato del registro cumple con el protocolo Syslog.
- Accede a la CLI de Juniper SRX a través de SSH con su dirección IP de administración.
- Escribe
CLI
en el indicador de shell y presiona Intro. - Escribe
configure
y presiona Intro para ingresar al modo de configuración del dispositivo. - Ingresa los detalles de contacto o el punto de referencia del cliente.
Para asignar los campos a la cuenta de usuario, ejecuta los siguientes comandos:
set system syslog host FORWARDER_IP_ADDRESS any info set system syslog host FORWARDER_IP_ADDRESS structured-data
Reemplaza
FORWARDER_IP_ADDRESS
por la dirección IP del reenviador de Google Security Operations.Para habilitar el registro estructurado de los registros de seguridad, usa los siguientes comandos:
set security log mode stream set security log source-address SRC_IP_ADDRESS set security log stream SYSLOG_STREAM_NAME host FORWARDER_IP_ADDRESS set security log stream SYSLOG_STREAM_NAME format sd-syslog
Reemplaza lo siguiente:
SRC_IP_ADDRESS
: Es la dirección IP del dispositivo Juniper SRX.SYSLOG_STREAM_NAME
: Es el nombre que se asigna al servidor syslog.FORWARDER_IP_ADDRESS
: Es la dirección IP del reenviador de Operaciones de seguridad de Google.
Asegúrate de que el registro esté habilitado en todas las políticas de seguridad. Para habilitar el registro, ejecuta los siguientes comandos:
set security policies from-zone <zone-name1> to-zone <zone-name2> policy <policy-name> then log session-close set security policies from-zone <zone-name1> to-zone <zone-name2> policy <policy-name> then log session-init
Configura el nombre de host en el dispositivo con el siguiente comando:
set system host-name HOSTNAME
Reemplaza
HOSTNAME
por el dispositivo Juniper Networks SRX asignado.Ingresa
commit
para guardar los comandos ejecutados en la configuración.
Configura el retransmisor y el syslog de Google Security Operations para transferir registros de Juniper Junos
- Selecciona SIEM Settings > Forwarders.
- Haz clic en Agregar un nuevo reenvío.
- Ingresa un nombre único en el campo Nombre del reenvío.
- Haz clic en Enviar y, luego, en Confirmar. Se agregará el reenvío y aparecerá la ventana Add collector configuration.
- En el campo Nombre del recopilador, ingresa un nombre único para el recopilador.
- Selecciona Juniper Junos como el Tipo de registro.
- Selecciona Syslog como el Tipo de recopilador.
- Configura los siguientes parámetros de entrada:
- Protocol: Especifica el protocolo como UDP.
- Dirección: Especifica la dirección IP o el nombre de host de destino en el que reside el recopilador y escucha 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 retransmisores de Google Security Operations, consulta la documentación de los retransmisores de Google Security Operations. Para obtener información sobre los requisitos de cada tipo de reenvío, consulta Configuración del reenvío por tipo. 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 extrae campos de los mensajes de syslog de Juniper JUNOS y controla los formatos de clave-valor y los que no son de clave-valor. Utiliza patrones de Grok para hacer coincidir varias estructuras de mensajes, incluidos los registros de firewall, la actividad de SSH y las ejecuciones de comandos, y, luego, asigna los campos extraídos al UDM. El analizador también controla los registros con formato CEF a través de un archivo de inclusión y realiza acciones específicas según el contenido del mensaje, como combinar direcciones IP y nombres de usuario en los campos correspondientes del UDM.
Tabla de asignación de UDM
Campo de registro | Asignación de UDM | Lógica |
---|---|---|
DPT |
target.port |
Es el puerto de destino de la conexión de red, convertido en un número entero. |
DST |
target.ip |
Es la dirección IP de destino de la conexión de red. |
FLAG |
additional.fields{}.key : "FLAG", additional.fields{}.value.string_value : Valor de FLAG |
Es la marca de TCP asociada a la conexión de red. |
ID |
additional.fields{}.key : "ID", additional.fields{}.value.string_value : Valor de ID |
Es el campo de identificación de IP. |
IN |
additional.fields{}.key : "IN", additional.fields{}.value.string_value : Valor de IN |
Es la interfaz de red entrante. |
LEN |
additional.fields{}.key : "LEN", additional.fields{}.value.string_value : Valor de LEN |
Es la longitud del paquete IP. |
MAC |
principal.mac |
Es la dirección MAC extraída del campo MAC . |
OUT |
additional.fields{}.key : "OUT", additional.fields{}.value.string_value : Valor de OUT |
Es la interfaz de red saliente. |
PREC |
additional.fields{}.key : "PREC", additional.fields{}.value.string_value : Valor de PREC |
Es el campo de precedencia en el encabezado IP. |
PROTO |
network.ip_protocol |
Es el protocolo IP que se usa en la conexión de red. |
RES |
additional.fields{}.key : "RES", additional.fields{}.value.string_value : Valor de RES |
Es un campo reservado en el encabezado de TCP. |
SPT |
principal.port |
Puerto de origen de la conexión de red, convertido en un número entero. |
SRC |
principal.ip |
Es la dirección IP de origen de la conexión de red. |
TOS |
additional.fields{}.key : "TOS", additional.fields{}.value.string_value : Valor de TOS |
Es el campo Type of Service en el encabezado IP. |
TTL |
network.dns.additional.ttl |
Es el valor de Time To Live, convertido en un número entero sin signo. |
URGP |
additional.fields{}.key : "URGP", additional.fields{}.value.string_value : Valor de URGP |
Campo de puntero de urgencia en el encabezado de TCP. |
WINDOW |
additional.fields{}.key : "WINDOW_SIZE", additional.fields{}.value.string_value : Valor de WINDOW |
Es el tamaño de la ventana de TCP. |
action |
security_result.action |
Es la acción que realiza el firewall, extraída del mensaje de CEF. |
agt |
observer.ip |
Es la dirección IP del agente. |
amac |
target.mac |
Dirección MAC del objetivo, convertida en minúsculas y con guiones reemplazados por dos puntos. |
app |
target.application |
Es la aplicación involucrada en el evento. |
artz |
observer.zone |
Es la zona horaria del observador. |
atz |
target.location.country_or_region |
Zona horaria objetivo. |
categoryBehavior |
additional.fields{}.key : "Category Behavior", additional.fields{}.value.string_value : Valor de categoryBehavior sin barras |
Es el comportamiento de la categoría. |
categoryDeviceGroup |
additional.fields{}.key : "Category Device Group", additional.fields{}.value.string_value : Valor de categoryDeviceGroup sin barras |
Es el grupo de dispositivos de la categoría. |
categoryObject |
additional.fields{}.key : "Objeto de categoría", additional.fields{}.value.string_value : Valor de categoryObject sin barras |
Es el objeto de categoría. |
categoryOutcome |
additional.fields{}.key : "Category Outcome", additional.fields{}.value.string_value : Valor de categoryOutcome sin barras |
Es el resultado de la categoría. |
categorySignificance |
additional.fields{}.key : "Significancia de la categoría", additional.fields{}.value.string_value : Valor de categorySignificance |
Es la importancia de la categoría. |
command |
target.process.command_line |
Comando ejecutado. |
cs1Label |
additional.fields{}.key : cs1Label , additional.fields{}.value.string_value : Valor del campo CEF correspondiente |
Etiqueta y valor del campo de cadena personalizado 1 del mensaje de CEF. |
cs2Label |
additional.fields{}.key : cs2Label , additional.fields{}.value.string_value : Valor del campo CEF correspondiente |
Etiqueta y valor del campo de cadena personalizado 2 del mensaje CEF. |
cs3Label |
additional.fields{}.key : cs3Label , additional.fields{}.value.string_value : Valor del campo CEF correspondiente |
Etiqueta y valor del campo personalizado de cadena 3 del mensaje de CEF. |
cs4Label |
additional.fields{}.key : cs4Label , additional.fields{}.value.string_value : Valor del campo CEF correspondiente |
Etiqueta y valor del campo personalizado de cadena 4 del mensaje de CEF. |
cs5Label |
additional.fields{}.key : cs5Label , additional.fields{}.value.string_value : Valor del campo CEF correspondiente |
Etiqueta y valor del campo de cadena personalizado 5 del mensaje CEF. |
cs6Label |
additional.fields{}.key : cs6Label , additional.fields{}.value.string_value : Valor del campo CEF correspondiente |
Etiqueta y valor del campo personalizado de cadena 6 del mensaje CEF. |
dhost |
target.hostname |
Es el nombre de host de destino. |
deviceCustomString1 |
additional.fields{}.key : cs1Label , additional.fields{}.value.string_value : Valor de deviceCustomString1 |
Es la cadena personalizada 1 del dispositivo. |
deviceCustomString2 |
additional.fields{}.key : cs2Label , additional.fields{}.value.string_value : Valor de deviceCustomString2 |
Es la cadena personalizada del dispositivo 2. |
deviceCustomString3 |
additional.fields{}.key : cs3Label , additional.fields{}.value.string_value : Valor de deviceCustomString3 |
Es la cadena personalizada del dispositivo 3. |
deviceCustomString4 |
additional.fields{}.key : cs4Label , additional.fields{}.value.string_value : Valor de deviceCustomString4 |
Es la cadena personalizada del dispositivo 4. |
deviceCustomString5 |
additional.fields{}.key : cs5Label , additional.fields{}.value.string_value : Valor de deviceCustomString5 |
Es la cadena personalizada del dispositivo 5. |
deviceCustomString6 |
additional.fields{}.key : cs6Label , additional.fields{}.value.string_value : Valor de deviceCustomString6 |
Es la cadena personalizada del dispositivo 6. |
deviceDirection |
network.direction |
Es la dirección del tráfico de red. |
deviceEventClassId |
additional.fields{}.key : "eventId", additional.fields{}.value.string_value : Valor de deviceEventClassId |
Es el ID de la clase de evento del dispositivo. |
deviceFacility |
observer.product.subproduct |
Es la instalación del dispositivo. |
deviceProcessName |
about.process.command_line |
Es el nombre del proceso del dispositivo. |
deviceSeverity |
security_result.severity |
Es la gravedad del dispositivo. |
deviceTimeZone |
observer.zone |
Zona horaria del dispositivo. |
deviceVendor |
metadata.vendor_name |
Es el proveedor del dispositivo. |
deviceVersion |
metadata.product_version |
Versión del dispositivo. |
dpt |
target.port |
Es el puerto de destino. |
dst |
target.ip |
Es la dirección IP de destino. |
duser |
target.user.user_display_name |
Es el usuario de destino. |
eventId |
additional.fields{}.key : "eventId", additional.fields{}.value.string_value : Valor de eventId |
ID del evento. |
event_time |
metadata.event_timestamp |
Es la fecha y hora en que ocurrió el evento, analizada a partir del mensaje. |
firewall_action |
security_result.action_details |
Es la acción del firewall que se llevó a cabo. |
host |
principal.hostname , intermediary.hostname |
Es el nombre de host del dispositivo que genera el registro. Se usa tanto para el principal como para el intermediario en diferentes casos. |
msg |
security_result.summary |
Es el mensaje asociado al evento, que se usa como resumen del resultado de seguridad. |
name |
metadata.product_event_type |
Nombre del evento. |
process_name |
additional.fields{}.key : "process_name", additional.fields{}.value.string_value : Valor de process_name |
Es el nombre del proceso. |
p_id |
target.process.pid |
Es el ID del proceso, convertido en una cadena. |
sha256 |
principal.process.file.sha256 |
Es el hash SHA256 de un archivo, extraído de la información de la clave SSH2. |
shost |
principal.hostname |
Es el nombre de host de origen. |
source_address |
principal.ip |
Es la dirección IP de origen. |
source_port |
principal.port |
Es el puerto de origen, convertido en un número entero. |
src |
principal.ip |
Es la dirección IP de origen. |
src_ip |
principal.ip |
Es la dirección IP de origen. |
src_port |
principal.port |
Es el puerto de origen, convertido en un número entero. |
ssh2 |
security_result.detection_fields{}.key : "ssh2", security_result.detection_fields{}.value : Valor de ssh2 |
Es la información de la clave SSH2. |
subtype |
metadata.product_event_type |
Es el subtipo del evento. |
task_summary |
security_result.description |
Es el resumen de la tarea, que se usa como descripción del resultado de seguridad. |
timestamp |
metadata.event_timestamp |
Es la marca de tiempo del evento. |
user |
target.user.userid |
Es el usuario asociado al evento. |
username |
principal.user.userid |
Es el nombre de usuario asociado con el evento. |
user_name |
principal.user.userid |
Es el nombre de usuario. |
metadata.vendor_name |
Está codificado como "Juniper Firewall". Está codificado como "Juniper Firewall". Está codificado como "JUNIPER_JUNOS". Se determina según la lógica del analizador basada en el contenido del registro. El valor predeterminado es "STATUS_UPDATE" si no es un mensaje de CEF y no se identifica ningún otro tipo de evento específico. Se establece en "NETWORK_HTTP" para los mensajes de CEF. Si no hay ningún campo desc , este campo se completa con el message_description extraído del mensaje de registro sin procesar. |
¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.