Recopila registros de firewall de Azion
Descripción general
Este analizador extrae campos de los registros JSON del firewall de Azion, realiza conversiones y enriquecimiento de tipos de datos (por ejemplo, el análisis del agente de usuario) y asigna los campos extraídos al UDM. Genera eventos NETWORK_HTTP, SCAN_UNCATEGORIZED o GENERIC_EVENT según la presencia de máquinas principales y de destino. También controla los campos y las acciones relacionados con el WAF, y los asigna a los campos de resultados de seguridad del UDM.
Antes de comenzar
Asegúrate de cumplir con los siguientes requisitos previos:
- Instancia de Google SecOps.
- Acceso con privilegios a AWS IAM y S3
- Acceso privilegiado a una cuenta de Azion activa
Configura el bucket de Amazon S3
- Crea un bucket de Amazon S3 siguiendo esta guía del usuario: Crea un bucket.
- Guarda el Nombre y la Región del bucket para futuras referencias.
- Crea un usuario siguiendo esta guía del usuario: Cómo crear un usuario de IAM.
- Selecciona el usuario creado.
- Selecciona la pestaña Credenciales de seguridad.
- Haz clic en Crear clave de acceso en la sección Claves de acceso.
- Selecciona Servicio de terceros como Caso de uso.
- Haz clic en Siguiente.
- Opcional: Agrega una etiqueta de descripción.
- Haz clic en Crear clave de acceso.
- Haz clic en Descargar archivo .csv. (Guarda la clave de acceso y la clave de acceso secreta para consultarlas en el futuro).
- Haz clic en Listo.
- Selecciona la pestaña Permisos.
- Haz clic en Agregar permisos en la sección Políticas de permisos.
- Selecciona Agregar permisos.
- Selecciona Adjuntar políticas directamente.
- Busca la política AmazonS3FullAccess.
- Selecciona la política.
- Haz clic en Siguiente.
- Haz clic en Agregar permisos.
Configura Azion para la entrega continua de registros a Amazon S3
- En la consola de Azion, ve a la sección DataStream.
- Haz clic en + Stream.
- Especifica valores para los siguientes parámetros:
- Nombre: Proporciona un nombre único y descriptivo para identificar el flujo de datos.
- Fuente: Selecciona la fuente de la que se recopilarán los datos.
- Plantilla: Es un conjunto predeterminado de variables para fuentes específicas o una plantilla abierta para elegir variables. Tienes la opción de filtrar dominios.
- En la sección Destino, haz clic en Conector > Simple Storage Service (S3).
- URL: Es el URI del bucket.
s3:/BUCKET_NAME. Reemplaza lo siguiente:BUCKET_NAME: el nombre del bucket.
- Nombre del bucket: Nombre del bucket al que se enviará el objeto.
- Región: Es la región en la que se encuentra tu bucket.
- Clave de acceso: Clave de acceso del usuario con acceso al bucket de S3.
- Clave secreta: Clave secreta del usuario con acceso al bucket de S3.
- Content Type: Selecciona plain/text.
- URL: Es el URI del bucket.
- Haz clic en Guardar.
Para obtener más información, consulta Cómo usar Amazon S3 para recibir datos de Data Stream.
Configura feeds
Para configurar un feed, sigue estos pasos:
- Ve a Configuración del SIEM > Feeds.
- Haz clic en Agregar feed nuevo.
- En la siguiente página, haz clic en Configurar un solo feed.
- En el campo Nombre del feed, ingresa un nombre para el feed (por ejemplo, Registros de Azion).
- Selecciona Amazon S3 V2 como el Tipo de fuente.
- Selecciona Azion como el Tipo de registro.
- Haz clic en Siguiente.
Especifica valores para los siguientes parámetros de entrada:
URI de S3: Es el URI del bucket.
s3:/BUCKET_NAME. Reemplaza lo siguiente:BUCKET_NAME: el nombre del bucket.
Opciones de borrado de la fuente: Selecciona la opción de borrado según tu preferencia.
Antigüedad máxima del archivo: Incluye los archivos modificados en la cantidad de días especificada. El valor predeterminado es de 180 días. Nota: Si seleccionas la opción Borrar archivos transferidos o Borrar archivos transferidos y directorios vacíos, asegúrate de haber otorgado los permisos adecuados a la cuenta de servicio.
ID de clave de acceso: Es la clave de acceso del usuario con acceso al bucket de S3.
Clave de acceso secreta: Es la clave secreta del usuario con acceso al bucket de S3.
Espacio de nombres del recurso: Es el espacio de nombres del recurso.
Etiquetas de transmisión: Es la etiqueta que se aplicará a los eventos de este feed.
Haz clic en Siguiente.
Revisa la nueva configuración del feed en la pantalla Finalizar y, luego, haz clic en Enviar.
Tabla de asignación de UDM
| Campo de registro | Asignación de UDM | Lógica |
|---|---|---|
asn |
read_only_udm.network.asn |
Se asigna directamente desde el campo asn. |
bytes_sent |
read_only_udm.network.sent_bytes |
Se asigna directamente desde el campo bytes_sent y se convierte en un número entero sin signo. |
country |
read_only_udm.principal.location.country_or_region |
Se asigna directamente desde el campo country. |
host |
read_only_udm.principal.hostname |
Se asigna directamente desde el campo host. |
http_referer |
read_only_udm.network.http.referral_url |
Se asigna directamente desde el campo http_referer. |
http_user_agent |
read_only_udm.network.http.user_agent |
Se asigna directamente desde el campo http_user_agent. |
http_user_agent |
read_only_udm.network.http.parsed_user_agent |
Se analizó a partir del campo http_user_agent con el filtro parseduseragent. |
read_only_udm.event_type |
El analizador lo determina según la presencia de información de principal y target. Puede ser NETWORK_HTTP, SCAN_UNCATEGORIZED o GENERIC_EVENT. |
|
read_only_udm.metadata.product_name |
Se codificó como "AZION". | |
read_only_udm.metadata.vendor_name |
Se codificó como "AZION". | |
read_only_udm.metadata.product_version |
Se codificó como "AZION". | |
remote_addr |
read_only_udm.principal.ip |
Se asigna directamente desde el campo remote_addr. |
remote_port |
read_only_udm.principal.port |
Se asigna directamente desde el campo remote_port y se convierte en un número entero. |
requestPath |
read_only_udm.target.url |
Se asigna directamente desde el campo requestPath si no está presente request_uri. |
request_method |
read_only_udm.network.http.method |
Se asigna directamente desde el campo request_method y se convierte a mayúsculas. |
request_time |
read_only_udm.additional.fields |
Se agrega como un par clave-valor al array additional.fields, con la clave "request_time" y el valor del campo request_time. |
request_uri |
read_only_udm.target.url |
Se asigna directamente desde el campo request_uri si está presente. |
server_addr |
read_only_udm.target.ip |
Se asigna directamente desde el campo server_addr. |
server_port |
read_only_udm.target.port |
Se asigna directamente desde el campo server_port y se convierte en un número entero. |
ssl_cipher |
read_only_udm.network.tls.cipher |
Se asigna directamente desde el campo ssl_cipher. |
ssl_protocol |
read_only_udm.network.tls.version_protocol |
Se asigna directamente desde el campo ssl_protocol. |
ssl_server_name |
read_only_udm.network.tls.client.server_name |
Se asigna directamente desde el campo ssl_server_name. |
state |
read_only_udm.principal.location.state |
Se asigna directamente desde el campo state. |
status |
read_only_udm.network.http.response_code |
Se asigna directamente desde el campo status y se convierte en un número entero. |
time |
read_only_udm.metadata.event_timestamp |
Se analiza a partir del campo time con el filtro de fecha y varios formatos de fecha. |
upstream_addr |
read_only_udm.intermediary.ip, read_only_udm.intermediary.port |
Se extrae del campo upstream_addr con grok y se divide en IP y puerto. |
upstream_status |
read_only_udm.additional.fields |
Se agrega como un par clave-valor al array additional.fields, con la clave "upstream_status" y el valor del campo upstream_status. |
waf_args |
read_only_udm.security_result.detection_fields |
Se agrega como un par clave-valor al array security_result.detection_fields. |
waf_attack_action |
read_only_udm.security_result.detection_fields |
Se agrega como un par clave-valor al array security_result.detection_fields. |
waf_attack_family |
read_only_udm.security_result.detection_fields |
Se agrega como un par clave-valor al array security_result.detection_fields. |
waf_headers |
read_only_udm.security_result.detection_fields |
Se agrega como un par clave-valor al array security_result.detection_fields. |
waf_learning |
read_only_udm.security_result.detection_fields |
Se agrega como un par clave-valor al array security_result.detection_fields. |
waf_match |
read_only_udm.security_result.detection_fields |
Se agrega como un par clave-valor al array security_result.detection_fields. |
waf_score |
read_only_udm.security_result.detection_fields |
Se agrega como un par clave-valor al array security_result.detection_fields. |
waf_server |
read_only_udm.security_result.detection_fields |
Se agrega como un par clave-valor al array security_result.detection_fields. |
waf_total_blocked |
read_only_udm.security_result.detection_fields |
Se agrega como un par clave-valor al array security_result.detection_fields. |
waf_total_processed |
read_only_udm.security_result.detection_fields |
Se agrega como un par clave-valor al array security_result.detection_fields. |
waf_uri |
read_only_udm.security_result.detection_fields |
Se agrega como un par clave-valor al array security_result.detection_fields. |
read_only_udm.security_result.action |
El analizador lo determina según los campos waf_block o blocked. Se establece en ALLOW o BLOCK. |
¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.