Alertas: Anotaciones de ESA

Document created by RSA Information Design and Development on Apr 23, 2018
Version 1Show Document
  • View in full screen mode
 

En este tema se describen las anotaciones que NetWitness Suite proporciona para el uso en reglas de EPL avanzado.

Anotación @RSAAlert

La anotación @RSAAlert se utiliza para marcar qué declaraciones de EPL están vinculadas con la generación de notificaciones de alertas. Está diseñada para actuar en conjunto con la función de supresión de notificaciones de alerta en la interfaz del usuario del generador de reglas.

La anotación @RSAAlert puede ser útil cuando se trabaja con notificaciones de alerta, especialmente si desea filtrar las notificaciones, como el envío de una notificación para cada usuario que activa una alerta.

Por ejemplo, suponga que desea generar notificaciones de alerta para los errores al iniciar sesión. Puede agregar la siguiente declaración:

@RSAAlert select * from event(msg_id=“login_fail")

 

                                                  
Número de eventoID de mensajeusernamesrc_IPHora
1login_failalice1.2.3.410:00
2login_failalice1.2.3.410:01
3login_failalice6.7.8.910:01
4login_failbob1.2.3.410:01
5login_failalice1.2.3.410:03

 

Para la declaración anterior, se generan cinco notificaciones de alerta.

Sin embargo, suponga que desea modificar la declaración de modo que se genere una alerta para cada nombre de usuario por separado. Puede usar el atributo identifier. Por ejemplo, la declaración @RSAAlert(identifier={”username”}) SELECT* FROM Event(msg_id=”login_fail”) genera una notificación de la primera alerta para “bob” y otra para “alice”. No se hace caso de las alertas subsiguientes para “bob” y “alice”.

Puede distinguir a los usuarios si agrega detalles a través de la variable identifier. Por ejemplo, puede distinguirlos por usuario y dirección IP mediante la siguiente declaración: @RSAAlert(identifier={”username”, "src_ip"}) SELECT* FROM Event(msg_id=”login_fail”). A continuación, se generarían notificaciones por nombre de usuario y dirección IP (una alerta para “alice” en 1.2.3.4, otra para “alice” en 6.7.8.9 y una alerta para “bob” en 1.2.3.4).

Para usar identificadores con la supresión de notificaciones de alerta:

La anotación @RSAAlert está diseñada para actuar en conjunto con la función de supresión de notificaciones de alerta en la interfaz del usuario del generador de reglas. Para ello, realice lo siguiente:

  1. Cree una regla en la interfaz del usuario del generador de reglas y seleccione la función de supresión de alertas cuando configure notificaciones.

Supresión de notificaciones

  1. Copie el código de la regla del generador de reglas en una regla avanzada nueva.

  2. Configure la regla avanzada para que incluya identificadores (como se describió anteriormente) y guarde la regla avanzada.

  3. Elimine la regla original del generador de reglas.

Anotación @RSAPersist

La anotación @RSAPersist se utiliza para marcar una ventana con nombre como una ventana administrada de ESA con fines de persistencia. Al marcar la ventana con nombre como una ventana administrada de ESA, ESA escribe periódicamente el contenido de la ventana en el disco y lo restaura si la ventana ya no está implementada y se vuelve a implementar. Los sistemas crean una instantánea justo antes de que se anule la implementación del módulo y se quite la ventana. Por el contrario, restaura el contenido de la ventana desde la instantánea justo después de que el módulo se vuelve a implementar. Esto garantiza que el contenido de la ventana no se pierda si el estado del módulo se altera o si el servicio de ESA queda inactivo.

Por ejemplo, considere una ventana con nombre, DHCPTracker que cuenta con un mapeo desde direcciones IP a cada nombre de host asignado. Puede anotar la declaración con la anotación @RSAPersist como:

@RSAPersist
create window DHCPTracker.std:unique(ip_src) as (ip_src string, alias_host string);
insert into DHCPTracker select IP as ip_src, HostName as alias_host from DHCPAssignment(ID=32);

Nota: Ninguna de las definiciones de ventanas es adecuada para persistencia. La anotación @RSAPersist  se debe utilizar con cuidado. Si la ventana tiene registros con tiempo o si depende de restricciones basadas en tiempo, es muy probable que los snapshots revertidos no la restauren en el estado correcto. Además, cualquier cambio en la definición de la ventana invalidará los snapshots y restablecerá la ventana a un estado en blanco. El sistema no realiza ningún análisis semántico para determinar si los cambios a la definición de la ventana tendrán conflictos o no. Tenga en cuenta que otras partes de un módulo (por ejemplo, aparte de la llamada CREAR VENTANA específica que define la ventana) pueden cambiar, sin invalidar las instantáneas.

@UsesEnrichment (10.6.1.1 y superior)

@UsesEnrichment se puede usar en reglas de EPL avanzado para hacer referencia a enriquecimientos. A fin de sincronizar los enriquecimientos con ESA, se debe hacer referencia a todas las dependencias de enriquecimientos en las reglas de EPL con la anotación @UsesEnrichment.

La anotación @UsesEnrichment utiliza el siguiente formato:

@UsesEnrichment(name= '<enrichment_name>')

Por ejemplo, el siguiente EPL hace referencia a un enriquecimiento de lista blanca:

@UsesEnrichment(name = 'Whitelist')

@RSAAlert

SELECT * FROM Event(ip_src NOT IN (SELECT ip_address FROM Whitelist))

@Name

@Name es el nombre de la declaración definido en las reglas avanzadas de ESA. Se utiliza para la generación dinámica de nombres de declaración en las alertas de ESA. Se muestra el nombre de la declaración de solo una declaración de activación de alerta. Las claves de metadatos de esta anotación están entre llaves.

La anotación @Name utiliza el siguiente formato:

@Name("<static_part_of_statement_name> {meta_key1} {meta_key2}…")

Por ejemplo, el siguiente EPL hace referencia a las claves de metadatos ip_src y user_name cuyos valores se generarán de manera dinámica.

@Name(“Login Event to {ip_src} by {user_name}”)

Nota: Puede especificar una cantidad indeterminada de claves de metadatos en la declaración para la generación dinámica de nombres de declaración.
El límite de la longitud de cada clave de metadatos es 64 y, después de esto, el valor se trunca y se le agrega “…”.
El límite de la longitud de la generación dinámica de nombre de declaración es 128 y, después de esto, el valor se trunca a 128 y se le agrega “…”. Todos los valores restantes después del truncamiento se tratan como valores estáticos.

You are here
Table of Contents > Agregar reglas a la Biblioteca de reglas > Agregar una regla de EPL avanzado > Anotaciones de ESA

Attachments

    Outcomes