Procesamiento de resultados de GuardDuty con Amazon EventBridge
GuardDuty publica (envía) de manera automática los resultados como eventos en Amazon EventBridge (anteriormente Eventos de Amazon CloudWatch), un servicio de bus de eventos sin servidor. EventBridge ofrece una transmisión de datos en tiempo casi real desde aplicaciones y servicios a destinos como temas de Amazon Simple Notification Service (Amazon SNS), funciones AWS Lambda y transmisiones de Amazon Kinesis. Para obtener más información, consulte la Guía del usuario de Amazon EventBridge.
EventBridge permite la supervisión y el procesamiento automatizados de los resultados de GuardDuty mediante la recepción de eventos. EventBridge recibe eventos tanto para los resultados recién generados como para los resultados agregados, donde las apariciones posteriores de un resultado existente se combinan con el original. A cada resultado de GuardDuty se le asigna un ID de resultado. GuardDuty crea un evento de EventBrige para cada resultado con un ID de resultado único. Para obtener información sobre cómo funciona la agregación en GuardDuty, consulte Agregación de resultados de GuardDuty.
Además de la supervisión y el procesamiento automatizados, el uso de EventBridge permite conservar los datos de sus resultados a más largo plazo. GuardDuty guarda los resultados durante 90 días. Con EventBridge, puede enviar los datos de los resultados a su plataforma de almacenamiento preferida y almacenar los datos durante el tiempo que desee. Para retener los resultados durante más tiempo, GuardDuty apoya Exportar los resultados generados a Amazon S3.
Temas
Entender la frecuencia de notificación de EventBridge en GuardDuty
En esta sección se explica con qué frecuencia se reciben notificaciones de resultados a través de EventBridge y cómo actualizar la frecuencia para que se produzcan resultados posteriores.
- Notificaciones de resultados recién generados con un identificador de resultado único
-
GuardDuty envía estas notificaciones casi en tiempo real cuando genera un resultado con un ID de resultado único. La notificación incluye todas las apariciones posteriores de este identificador de resultados durante el proceso de generación de la notificación.
La frecuencia de notificación de los resultados recién generados es casi en tiempo real. De forma predeterminada, no se puede modificar esta frecuencia.
- Notificaciones de casos de resultados subsiguientes
-
GuardDuty le agrega todos los casos subsiguientes de un resultado concreto que se produzcan en intervalos de 6 horas de un solo evento. Solo una cuenta de administrador puede actualizar la frecuencia de notificaciones de EventBridge para que se produzcan resultados posteriores. Una cuenta de miembro no puede actualizar esta frecuencia para su propia cuenta. Por ejemplo, si la cuenta de administrador delegado de GuardDuty actualiza la frecuencia a una hora, todas las cuentas de miembro también adoptarán esta configuración para notificar las incidencias de resultados posteriores que se envíen a EventBridge. Para obtener más información, consulte Múltiples cuentas en Amazon GuardDuty.
Como cuenta de administrador, puede personalizar la frecuencia predeterminada de las notificaciones sobre las incidencias de resultados posteriores. Los valores posibles son 15 minutos, una hora o seis horas, que es el valor predeterminado. Para obtener información acerca de la configuración de la frecuencia de estas notificaciones, consulte Paso 5: Establecer la frecuencia de exportación de los resultados activos actualizados.
Para obtener más información sobre la cuenta de administrador que recibe notificaciones de EventBridge para las cuentas de miembros, consulte Regla de EventBridge para entornos de varias cuentas.
Configuración de un tema y un punto de conexión de Amazon SNS (correo electrónico, Slack y Amazon Chime)
Amazon Simple Notification Service (Amazon SNS) es un servicio totalmente administrado que proporciona la entrega de mensajes de los publicadores a los suscriptores. Los publicadores se comunican de forma asíncrona con los suscriptores mediante el envío mensajes a un tema. Un tema es un punto de acceso lógico y un canal de comunicación que le permite agrupar varios puntos de conexión, como AWS Lambda, como Amazon Simple Queue Service (Amazon SQS), HTTP/S y una dirección de correo electrónico.
nota
Se puede agregar un tema de Amazon SNS a una regla de eventos de EventBridge durante la creación de la regla o después de dicha creación.
- Crear un tema de Amazon SNS
-
Para empezar, antes se debe configurar un tema en Amazon SNS y agregar un punto de conexión. Para crear un tema, siga los pasos indicados en Paso 1: Crear un tema en la Guía para desarrolladores de Amazon Simple Notification Service. Después de crear el tema, copie el ARN del tema en el portapeles. Utilizará este ARN del tema para continuar con una de las configuraciones preferidas.
Elija un método preferido para establecer la ubicación donde desea enviar los datos de los resultados de GuardDuty.
Uso de Amazon EventBridge para los resultados de GuardDuty
Con EventBridge, puede crear reglas para especificar los tipos de eventos que desee monitorear. Estas reglas también especifican los servicios y aplicaciones de destino que pueden realizar acciones automatizadas si se producen estos eventos. Un destino es un recurso o punto de conexión al que EventBridge envía un evento cuando el evento coincide con el patrón de eventos definido para una regla. Cada evento es un objeto JSON que se adapta al esquema de EventBridge para los eventos de AWS y contiene una representación de JSON de un resultado. Puede personalizar la regla para que envíe solo los eventos que cumplan determinados criterios. Para obtener más información, consulte [tema sobre el esquema de JSON]. Como los datos de los resultados están estructurados como eventos de EventBridge, puede monitorear, procesar y actuar en función de los resultados mediante el uso de otros servicios y herramientas.
Para recibir notificaciones acerca de resultados de GuardDuty basados en eventos, debe crear una regla de EventBridge y un destino para GuardDuty. Esta regla permite a EventBridge enviar notificaciones de resultados generados por GuardDuty al destino especificado en la regla.
nota
EventBridge y CloudWatch Events son el mismo servicio subyacente y la misma API. Sin embargo, EventBridge incluye características adicionales que le ayudan a recibir eventos de aplicaciones de software como servicio (SaaS) y de sus propias aplicaciones. Como el servicio y la API subyacentes son los mismos, el esquema de eventos de los resultados de GuardDuty también es el mismo.
Cómo funcionan los resultados archivados y no archivados en GuardDuty con EventBridge
En el caso de los resultados que se archivan de manera manual, la ocurrencia inicial y todas las posteriores de estos resultados (generados una vez que el archivado haya terminado) se envían a EventBridge en función de una frecuencia de notificación específica. Para obtener más información, consulte Entender la frecuencia de notificación de EventBridge en GuardDuty.
En el caso de los resultados que se archivan de manera automática con Reglas de supresión, la ocurrencia inicial y todas las posteriores de estos resultados (generados una vez que el archivado haya terminado) no se envían a EventBridge. Puede ver los resultados archivados de manera automática en la consola de GuardDuty.
Esquema de evento
Un patrón de eventos define los datos que EventBridge utiliza para determinar si se debe enviar el evento al destino. El evento de EventBridge para GuardDuty presenta el siguiente formato:
{ "version": "0", "id": "cd2d702e-ab31-411b-9344-793ce56b1bc7", "detail-type": "GuardDuty Finding", "source": "aws.guardduty", "account": "111122223333", "time": "1970-01-01T00:00:00Z", "region": "us-east-1", "resources": [], "detail": {GUARDDUTY_FINDING_JSON_OBJECT} }
El valor de detail devuelve los detalles en formato JSON de un solo resultado como objeto, en lugar de devolver toda la sintaxis de la respuesta resultados, que puede respaldar varios resultados dentro de una matriz.
Para obtener una lista completa de todos los parámetros incluidos en GUARDDUTY_FINDING_JSON_OBJECT, consulte GetFindings. El parámetro id que aparece en la GUARDDUTY_FINDING_JSON_OBJECT es el ID de resultado descrito anteriormente.
Creación de una regla de EventBridge para los resultados de GuardDuty
En los siguientes procedimientos se explica cómo utilizar la consola de Amazon EventBridge y AWS Command Line Interface(AWS CLI) para crear una regla de EventBridge para los resultados de GuardDuty. La regla detecta eventos de EventBridge que utilizan el esquema y el patrón de eventos para los resultados de GuardDuty y, a continuación, envía esos eventos a una función de AWS Lambda para su procesamiento.
AWS Lambda es un servicio informático que permite ejecutar código sin aprovisionar ni administrar servidores. El código se empaqueta y se carga en AWS Lambda como una función de Lambda. AWS Lambda ejecuta a continuación la función cuando esta se invoca. Una función se puede invocar manualmente, automáticamente en respuesta a eventos o en respuesta a solicitudes de aplicaciones o servicios. Para obtener más información acerca de cómo crear e invocar funciones de Lambda, consulte la Guía para desarrolladores de AWS Lambda.
Elija el método que prefiera para crear una regla de EventBridge que envíe el resultado de GuardDuty a un destino.
Regla de EventBridge para entornos de varias cuentas de GuardDuty
Cuando utilice una cuenta de administrador delegado de GuardDuty, puede ver los eventos generados en las cuentas de miembro y tomar medidas con otras aplicaciones y servicios. Las reglas de EventBridge de su cuenta de administradror se desencadenarán en función de los resultados aplicables de sus cuentas de miembro. Si configura la función de resultados a través de EventBridge en la cuenta de administrador, recibirá notificaciones sobre los resultados tanto de la cuenta como de las cuentas de miembro. Por ejemplo, se puede usar EventBridge para enviar automáticamente tipos específicos de nuevos resultados a una función de Lambda que, a su vez, procesa y envía los datos a su sistema de gestión de incidentes y eventos de seguridad (SIEM).
Puede identificar la cuenta de miembro donde se originó el resultado de GuardDuty con el campo accountId de los detalles JSON del resultado. Para crear una regla de eventos personalizada para cuentas de miembros específicas, cree una nueva regla y use la siguiente plantilla en Patrón de eventos. Sustituya 123456789012 por el accountId de la cuenta de miembro para la que desee activar el evento.
{ "source": [ "aws.guardduty" ], "detail-type": [ "GuardDuty Finding" ], "detail": { "accountId": [ "123456789012" ] } }
nota
En este ejemplo, se crea una regla que coincide con todos los resultados del identificador de cuenta especificado. Se pueden incluir varios ID de cuenta separándolos con comas, siguiendo la sintaxis JSON.