Usar O en la sección de condición
En este documento, se explica cómo usar el operador or para escribir una lógica de detección flexible y concisa dentro de la sección condition de tu consulta.
Usar or entre variables de eventos o marcadores de posición te permite combinar varias condiciones, lo que reduce la complejidad general de la sintaxis de tu consulta:
- Verifica la presencia de cualquiera de las variables especificadas. Por ejemplo,
$e1 or $e2requiere al menos una instancia de$e1o una instancia de$e2.
Sintaxis de or en la sección de condiciones
Usa la palabra clave or directamente entre las variables. El siguiente ejemplo es equivalente a COUNT($e1)>0 or COUNT($e2)>0:
condition:
$e1 or $e2 // True if $e1 exists or $e2 exists
Ejemplo de regla: Ejecución de IP riesgosa o hash incorrecto
La siguiente regla de ejemplo detecta una amenaza si se detecta el inicio de un proceso desde una dirección IP riesgosa o si se ejecuta un hash incorrecto conocido:
rule MultiEventOr {
meta:
author = "google-secops"
events:
$e1.principal.ip = "1.1.1.1"
$e1.metadata.event_type = "PROCESS_LAUNCH"
$e2.target.file.sha256 = "badhash..."
$user = $e1.principal.user.userid
$user = $e2.principal.user.userid
match:
$user over 5m
condition:
$e1 or $e2
}
Ejemplo de búsqueda: Ejecución de IP riesgosa o hash incorrecto
En el siguiente ejemplo, se muestra cómo podrías reformatear la regla de ejemplo como una búsqueda.
$e1.principal.ip = "1.1.1.1"
$e1.metadata.event_type = "PROCESS_LAUNCH"
$e2.target.file.sha256 = "badhash..."
$user = $e1.principal.user.userid
$user = $e2.principal.user.userid
match:
$user over 5m
condition:
$e1 or $e2
Limitaciones conocidas
Consumo de recursos: Cuando usas
orentre variables de eventos, se consumen más recursos que cuando usasand, lo que puede generar tiempos de ejecución de consultas más largos.Límite de variables de eventos: Para la Búsqueda y los paneles, puedes usar un máximo de 3 eventos en la sintaxis de
orde varios eventos. En el caso de las reglas, puedes usar un máximo de 2 eventos en la sintaxis deorde varios eventos.Existencia de eventos obligatoria: Las expresiones que usan
orno pueden ser no acotadas. La existencia del evento debe ser un requisito para que la cláusula sea verdadera (por ejemplo,$e1o#e1 > 0).Combinación de tipos de variables: No puedes combinar variables que no son del UDM con variables de eventos del UDM en la misma lista de
or.Restricción de ventana: No puedes usar ventanas deslizantes con la sintaxis
or.
Próximos pasos
¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.