Creación de respuestas personalizadas a GuardDuty los hallazgos con Amazon CloudWatch Events - Amazon GuardDuty

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Creación de respuestas personalizadas a GuardDuty los hallazgos con Amazon CloudWatch Events

GuardDuty crea un evento para Amazon CloudWatch Events cuando se produce algún cambio en los resultados. Al buscar cambios que crearán un CloudWatch evento, se incluyen los hallazgos recién generados o los hallazgos agregados recientemente. Los eventos se emiten en la medida de lo posible.

A cada GuardDuty hallazgo se le asigna un identificador de hallazgo. GuardDuty crea un CloudWatch evento para cada hallazgo con un identificador de hallazgo único. Todas las ocurrencias posteriores de un resultado existente se agregarán al resultado original. Para obtener más información, consulte GuardDuty encontrar agregación.

nota

Si su cuenta es un administrador GuardDuty delegado, los CloudWatch eventos se publican en su cuenta y en la cuenta del miembro en la que se generó el hallazgo.

Al usar CloudWatch eventos con GuardDuty, puedes automatizar las tareas para ayudarte a responder a los problemas de seguridad revelados por GuardDuty los hallazgos.

Para recibir notificaciones sobre GuardDuty los hallazgos basados en CloudWatch eventos, debes crear una regla de CloudWatch eventos y un objetivo para ellos GuardDuty. Esta regla permite CloudWatch enviar notificaciones de los hallazgos que se GuardDuty generen al objetivo especificado en la regla. Para obtener más información, consulte Crear una regla de CloudWatch eventos y un objetivo para GuardDuty (CLI).

CloudWatch Frecuencia de notificación de eventos para GuardDuty

Notificaciones de resultados recién generados con un identificador de resultado único

GuardDuty envía una notificación basada en el CloudWatch evento en un plazo de 5 minutos a partir del hallazgo. Este evento (y esta notificación) también contiene todos los casos posteriores de este resultado que se producen en los primeros 5 minutos desde que se generó este resultado con un ID único.

nota

La frecuencia de las notificaciones sobre resultados recién generados es de 5 minutos de manera predeterminada. Esta frecuencia no se puede actualizar.

Notificaciones de casos de resultados subsiguientes

De forma predeterminada, para cada hallazgo con un identificador de hallazgo único, GuardDuty se agregan todas las apariciones posteriores de un tipo de hallazgo concreto que se produzcan dentro de los intervalos de 6 horas en un solo evento. GuardDuty a continuación, envía una notificación sobre las siguientes incidencias en función de este evento. De forma predeterminada, cada 6 horas GuardDuty envía notificaciones basadas en CloudWatch eventos cada 6 horas para las siguientes apariciones de los hallazgos existentes.

Solo una cuenta de administrador puede personalizar la frecuencia predeterminada de las notificaciones que se envían acerca de la posterior aparición de CloudWatch eventos. Los usuarios de las cuentas de miembro no pueden personalizar esta frecuencia. El valor de frecuencia establecido por la cuenta de administrador en su propia cuenta depende de la GuardDuty funcionalidad de todas las cuentas de sus miembros. Si un usuario con una cuenta de administrador establece la frecuencia en 1 hora, todas las cuentas de miembro también adoptarán esta configuración para recibir notificaciones sobre las incidencias de resultados posteriores. Para obtener más información, consulte Múltiples cuentas en Amazon GuardDuty.

nota

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.

Supervisión de los GuardDuty hallazgos archivados con Events CloudWatch

En el caso de las conclusiones archivadas manualmente, las apariciones iniciales y todas las posteriores (generadas una vez finalizado el archivado) se envían a CloudWatch Events según la frecuencia descrita anteriormente.

En el caso de las conclusiones archivadas automáticamente, las apariciones iniciales y todas las posteriores de estas conclusiones (generadas una vez finalizado el archivado) no se envían a Eventos. CloudWatch

CloudWatch formato de evento para GuardDuty

El CloudWatch evento para GuardDuty tiene 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} }
nota

El valor de detalle devuelve los JSON detalles de un único hallazgo en forma de objeto, en lugar de devolver el valor de «hallazgos», que puede respaldar varios hallazgos dentro de una matriz.

Para ver la lista completa de todos los parámetros incluidosGUARDDUTY_FINDING_JSON_OBJECT, consulte GetFindings. El id parámetro que aparece en GUARDDUTY_FINDING_JSON_OBJECT es el identificador de búsqueda descrito anteriormente.

Crear una regla de CloudWatch eventos para notificarle los GuardDuty hallazgos (consola)

Puedes usar CloudWatch Events with GuardDuty para configurar alertas de búsqueda automatizadas enviando los eventos de GuardDuty búsqueda a un centro de mensajería para aumentar la visibilidad de GuardDuty los hallazgos. En este tema, se muestra cómo enviar alertas de hallazgos a correo electrónico, Slack o Amazon Chime. Para ello, configura SNS un tema y, a continuación, lo conecta a CloudWatch una regla de eventos.

Configurar un SNS tema y un punto de enlace de Amazon

Para empezar, antes debe configurar un tema en Amazon Simple Notification Service y agregar un punto de conexión. Para más información, consulte Introducción en la Guía para desarrolladores de Amazon Simple Notification Service.

Este procedimiento establece dónde desea enviar los datos de GuardDuty búsqueda. El SNS tema se puede agregar a una regla de CloudWatch eventos durante o después de la creación de la regla de eventos.

Email setup
Creación de un tema de SNS
  1. Inicia sesión en la SNS consola de Amazon en la versión https://console.aws.amazon.com/sns/v3/home.

  2. Seleccione Temas en el panel de navegación y después Crear un tema.

  3. En la sección Crear tema, elija Estándar. A continuación, introduzca un nombre para el tema, como GuardDuty_to_Email. Lo demás datos son opcionales.

  4. Elija Create Topic (Crear tema). Se abrirán los detalles del nuevo tema.

  5. En la sección «Suscripciones», elija Crear suscripción.

    1. En el menú Protocolo, seleccione Correo electrónico.

    2. En el campo Punto de enlace, agregue la dirección de correo electrónico en la que desea recibir las notificaciones.

      nota

      Una vez creada la suscripción, tendrá que confirmarla a través del cliente de correo electrónico.

    3. Elija Crear suscripción

  6. Busque el mensaje de suscripción en la bandeja de entrada y elija Confirmar suscripción.

Slack setup
Creación de un tema de SNS
  1. Inicia sesión en la SNS consola de Amazon en la versión https://console.aws.amazon.com/sns/v3/home.

  2. Seleccione Temas en el panel de navegación y después Crear un tema.

  3. En la sección Crear tema, elija Estándar. A continuación, introduzca un nombre para el tema, como GuardDuty_to_Slack. Lo demás datos son opcionales. Elija Crear tema para finalizar.

Configuración de un cliente AWS Chatbot
  1. Navegue hasta la AWS Chatbot consola

  2. En el panel Clientes configurados, seleccione Configurar un nuevo cliente.

  3. Elija Slack y confirme mediante “Configurar”.

    nota

    Al elegir Slack, debe confirmar los permisos de AWS Chatbot para acceder a su canal. Para ello, seleccione “Permitir”.

  4. Seleccione Configurar un nuevo canal para abrir el panel de detalles de configuración.

    1. Escriba un nombre para el canal.

    2. En Canal de Slack, elija el canal que quiera utilizar. Para usar un canal privado de Slack AWS Chatbot, selecciona Canal privado.

    3. En Slack, copie el ID de canal del canal privado. Para ello, haga clic con el botón derecho en el nombre del canal y seleccione Copiar enlace.

    4. En la AWS Chatbot ventana de la consola de AWS administración, pega el ID que copiaste de Slack en el campo ID del canal privado.

    5. En Permisos, elige crear un IAM rol mediante una plantilla, si aún no lo tienes.

    6. En plantillas de Política, elija Permisos de notificación. Esta es la plantilla IAM de política para AWS Chatbot. Proporciona los permisos de lectura y lista necesarios para CloudWatch las alarmas, los eventos y los registros, así como para los SNS temas de Amazon.

    7. Elige la región en la que creaste el SNS tema anteriormente y, a continuación, selecciona el SNS tema de Amazon que creaste para enviar las notificaciones al canal de Slack.

  5. Seleccione Configure (Configurar).

Chime setup
Creación de un tema de SNS
  1. Inicia sesión en la SNS consola de Amazon en la versión https://console.aws.amazon.com/sns/v3/home.

  2. Seleccione Temas en el panel de navegación y después Crear un tema.

  3. En la sección Crear tema, elija Estándar. A continuación, introduzca un nombre para el tema, como GuardDuty_to_Chime. Lo demás datos son opcionales. Elija Crear tema para finalizar.

Configuración de un cliente AWS Chatbot
  1. Navegue hasta la AWS Chatbot consola

  2. En el panel Clientes configurados, seleccione Configurar un nuevo cliente.

  3. Elija Chime y confirme mediante “Configurar”.

  4. En el panel Detalles de configuración, introduzca un nombre para el canal.

  5. En Chime, abra la sala de chat deseada

    1. Elija el icono de engranaje en la esquina superior derecha y elija Manage webhooks and bots (Administrar webhooks y bots).

    2. Selecciona URLCopiar para copiar el webhook URL al portapapeles.

  6. En la consola AWS de administración, en la AWS Chatbot ventana, pegue URL lo que ha copiado en el campo URLWebhook.

  7. En Permisos, elija crear un IAM rol mediante una plantilla, si aún no tiene uno.

  8. En plantillas de Política, elija Permisos de notificación. Esta es la plantilla IAM de política para AWS Chatbot. Proporciona los permisos de lectura y lista necesarios para CloudWatch las alarmas, los eventos y los registros, así como para los SNS temas de Amazon.

  9. Elige la región en la que creaste tu SNS tema anteriormente y, a continuación, selecciona el SNS tema de Amazon que creaste para enviar notificaciones a la sala Chime.

  10. Seleccione Configure (Configurar).

Organiza un CloudWatch evento para obtener información GuardDuty

  1. Abre la CloudWatch consola en https://console.aws.amazon.com/cloudwatch/.

  2. Seleccione Reglas en el panel de navegación y después Crear una regla.

  3. En el menú Nombre del servicio, elija GuardDuty.

  4. En el menú Tipo de evento, seleccione GuardDutyBuscar.

  5. En Vista previa del patrón de eventos, elija Editar.

  6. Pegue el siguiente JSON código en Event Pattern Preview y seleccione Guardar

    { "source": [ "aws.guardduty" ], "detail-type": [ "GuardDuty Finding" ], "detail": { "severity": [ 4, 4.0, 4.1, 4.2, 4.3, 4.4, 4.5, 4.6, 4.7, 4.8, 4.9, 5, 5.0, 5.1, 5.2, 5.3, 5.4, 5.5, 5.6, 5.7, 5.8, 5.9, 6, 6.0, 6.1, 6.2, 6.3, 6.4, 6.5, 6.6, 6.7, 6.8, 6.9, 7, 7.0, 7.1, 7.2, 7.3, 7.4, 7.5, 7.6, 7.7, 7.8, 7.9, 8, 8.0, 8.1, 8.2, 8.3, 8.4, 8.5, 8.6, 8.7, 8.8, 8.9, 9.0 ] } }
    nota

    El código anterior alertará sobre cualquier hallazgo de nivel medio a crítico. Para obtener información sobre los rangos de valores de gravedad, consulteNiveles de gravedad de los resultados.

  7. En la sección Destinos, haga clic en Agregar destino.

  8. En el menú Seleccionar objetivos, elija SNSTema.

  9. En Seleccionar tema, seleccione el nombre del SNS tema que creó en el paso 1.

  10. Configure la entrada para el evento.

    • Si está configurando las notificaciones para Chime o Slack, vaya al paso 11, el tipo de entrada predeterminado es Evento coincidente.

    • Si vas a configurar las notificaciones por correo electrónico, SNS sigue los pasos que se indican a continuación para personalizar el mensaje que se envía a tu bandeja de entrada siguiendo estos pasos:

    1. Expanda Configurar entrada y elija Transformador de entrada.

    2. Copie el código siguiente y péguelo en el campo Ruta de entrada .

      { "severity": "$.detail.severity", "Account_ID": "$.detail.accountId", "Finding_ID": "$.detail.id", "Finding_Type": "$.detail.type", "region": "$.region", "Finding_description": "$.detail.description" }
    3. Copie el código siguiente y péguelo en el campo Plantilla de entrada para dar formato al correo electrónico.

      "AWS <Account_ID> has a severity <severity> GuardDuty finding type <Finding_Type> in the <region> region." "Finding Description:" "<Finding_description>. " "For more details open the GuardDuty console at https://console.aws.amazon.com/guardduty/home?region=<region>#/findings?search=id%3D<Finding_ID>"
  11. Haga clic en Configurar los detalles.

  12. En la página Configurar los detalles de la regla, escriba los valores que correspondan en los campos Nombre y Descripción de la regla y elija Crear una regla.

Crear una regla de CloudWatch eventos y un objetivo para GuardDuty (CLI)

El siguiente procedimiento muestra cómo utilizar los AWS CLI comandos para crear una regla de CloudWatch eventos y un destino para GuardDuty. En concreto, el procedimiento muestra cómo crear una regla que permita CloudWatch enviar eventos para todos los hallazgos que GuardDuty genere y añadir una AWS Lambda función como destino de la regla.

nota

Además de las funciones de Lambda, GuardDuty son CloudWatch compatibles con los siguientes tipos de objetivos: EC2 instancias de Amazon, transmisiones de Amazon Kinesis, tareas de ECS Amazon AWS Step Functions , máquinas de estado, run comandos y objetivos integrados.

También puede crear una regla de CloudWatch eventos y un objetivo para ellos GuardDuty a través de la consola de CloudWatch eventos. Para obtener más información y pasos detallados, consulte Crear una regla de CloudWatch eventos que se active en un evento. En la sección Event Source (Origen de evento), seleccione GuardDuty para Service name (Nombre de servicio) y GuardDuty Finding para Event Type (Tipo de evento).

Creación de una regla y un destino
  1. Para crear una regla que permita CloudWatch enviar eventos para todos los hallazgos que se GuardDuty generen, ejecute el siguiente CloudWatch CLI comando.

    AWS events put-rule --name Test --event-pattern "{\"source\":[\"aws.guardduty\"]}"

    importante

    Puede personalizar aún más la regla para que indique que solo se CloudWatch envíen eventos para un subconjunto de los hallazgos GuardDuty generados. Este subconjunto se basa en los atributos de resultado o atributos especificados en la regla. Por ejemplo, usa el siguiente CLI comando para crear una regla que permita CloudWatch enviar solo eventos para los GuardDuty hallazgos con una gravedad de 5 u 8:

    AWS events put-rule --name Test --event-pattern "{\"source\":[\"aws.guardduty\"],\"detail-type\":[\"GuardDuty Finding\"],\"detail\":{\"severity\":[5,8]}}"

    Para ello, puede utilizar cualquiera de los valores de propiedad disponibles en el campo de JSON los GuardDuty resultados.

  2. Para adjuntar una función Lambda como destino para la regla que creó en el paso 1, ejecute el siguiente CloudWatch CLI comando.

    AWS events put-targets --rule Test --targets Id=1,Arn=arn:aws:lambda:us-east-1:111122223333:function:<your_function>

    nota

    Asegúrese de reemplazar <your_function>el comando anterior por su función Lambda real para los GuardDuty eventos.

  3. Para añadir los permisos necesarios para invocar el destino, ejecute el siguiente comando de CLI Lambda.

    AWS lambda add-permission --function-name <your_function> --statement-id 1 --action 'lambda:InvokeFunction' --principal events.amazonaws.com

    nota

    Asegúrese de reemplazar <your_function>el comando anterior por su función Lambda real para los GuardDuty eventos.

    nota

    En el procedimiento anterior, utilizamos una función Lambda como objetivo de la regla que activa CloudWatch los eventos. También puede configurar otros AWS recursos como objetivos para activar CloudWatch eventos. Para obtener más información, consulte PutTargets.

CloudWatch Eventos para entornos GuardDuty con varias cuentas

Como GuardDuty administrador, las reglas de CloudWatch eventos de su cuenta se activarán en función de las conclusiones aplicables de sus cuentas de miembros. Esto significa que si configuras una notificación de localización a través de CloudWatch Eventos en tu cuenta de administrador, tal y como se detalla en la sección anterior, se te notificarán los hallazgos de gravedad alta y media generados por tus cuentas de miembro, además de por las tuyas propias.

Puede identificar la cuenta de miembro en la que se originó el GuardDuty hallazgo con el accountId campo de JSON detalles del hallazgo.

Para empezar a escribir una regla de evento personalizada para una cuenta de miembro específica de su entorno en la consola, cree una nueva regla y pegue la siguiente plantilla en la vista previa del patrón de eventos mediante la agregación del ID de cuenta de la cuenta de miembro que desee que desencadene el evento.

{ "source": [ "aws.guardduty" ], "detail-type": [ "GuardDuty Finding" ], "detail": { "accountId": [ "123456789012" ] } }
nota

Este ejemplo desencadenará cualquier resultado correspondiente al ID de cuenta que aparece en la lista. Se IDs pueden añadir varios, separados por una coma siguiendo la JSON sintaxis.