Requisitos previos para la compatibilidad con AWS Fargate (solo con Amazon ECS) - Amazon GuardDuty

Requisitos previos para la compatibilidad con AWS Fargate (solo con Amazon ECS)

En esta sección se incluyen los requisitos previos para supervisar el comportamiento en tiempo de ejecución de los recursos de ECS de Fargate-Amazon. Una vez cumplidos estos requisitos previos, consulte Habilitar la Supervisión en tiempo de ejecución de GuardDuty.

Validación de los requisitos de arquitectura

La plataforma que utilice puede afectar a la forma en que el agente de seguridad de GuardDuty ayuda a GuardDuty a la hora de recibir los eventos en tiempo de ejecución de los clústeres de Amazon ECS. Debe validar que esté utilizando una de las plataformas verificadas.

Consideraciones iniciales:

La plataforma AWS Fargate para los clústeres de Amazon ECS debe ser Linux. La versión de plataforma correspondiente debe ser como mínimo 1.4.0, o LATEST. Para obtener más información sobre las versiones de plataforma, consulte Versiones de plataforma Linux en la Guía para desarrolladores de Amazon Elastic Container Service.

Aún no se admiten las versiones de la plataforma Windows.

Plataformas verificadas

La distribución del sistema operativo y la arquitectura de la CPU repercuten en la compatibilidad proporcionada por el agente de seguridad de GuardDuty. En la siguiente tabla aparece la configuración verificada para implementar el agente de seguridad de GuardDuty y configurar la Supervisión en tiempo de ejecución.

Distribución del sistema operativo1 Compatibilidad del kernel Arquitectura de CPU x64 (AMD64) Arquitectura de CPU Graviton (ARM64)
Linux eBPF, Tracepoints, Kprobe Soportado Compatible

1Compatibilidad con varios sistemas operativos: GuardDuty ha verificado que Runtime Monitoring es compatible con los sistemas operativos que aparecen en la tabla anterior. Si bien el agente de seguridad de GuardDuty puede funcionar en sistemas operativos que no figuran en la tabla anterior, el equipo de GuardDuty no puede garantizar el valor de seguridad esperado.

Requisitos previos para el acceso a imágenes de contenedores

Los siguientes requisitos previos ayudan a acceder a la imagen del contenedor de sidecar de GuardDuty desde el repositorio de Amazon ECR.

Requisitos de los permisos

El rol de ejecución de tareas requiere determinados permisos de Amazon Elastic Container Registry (Amazon ECR) para descargar la imagen del contenedor del agente de seguridad de GuardDuty:

... "ecr:GetAuthorizationToken", "ecr:BatchCheckLayerAvailability", "ecr:GetDownloadUrlForLayer", "ecr:BatchGetImage", ...

Para restringir aún más los permisos de Amazon ECR, puede agregar el URI del repositorio de Amazon ECR que aloja el agente de seguridad de GuardDuty para AWS Fargate (solo Amazon ECS). Para obtener más información, consulte Repositorio de Amazon ECR que aloja el agente de GuardDuty.

Puede utilizar la política administrada AmazonECSTaskExecutionRolePolicy o agregar los permisos anteriores a la política de TaskExecutionRole.

Configuración de definición de tareas

Al crear o actualizar los servicios de Amazon ECS, debe proporcionar información de subred en la definición de la tarea:

La ejecución de las API CreateService y UpdateService en la referencia de la API de Amazon Elastic Container Service requiere que se transmita la información de la subred. Para obtener más información, consulte las definiciones de tareas de Amazon ECS en la Guía para desarrolladores de Amazon Elastic Container Service.

Requisitos de conectividad de red

Debe garantizar la conectividad de red para descargar la imagen del contenedor de GuardDuty desde Amazon ECR. Este requisito es específico de GuardDuty porque utiliza Amazon ECR para alojar su agente de seguridad. En función de la configuración de red, tendrá que implementar una de las siguientes opciones:

Opción 1: usar el acceso a la red pública (si está disponible)

Si sus tareas de Fargate se ejecutan en subredes con acceso a Internet saliente, no es necesaria ninguna configuración de red adicional.

Opción 2: Uso de puntos de conexión de Amazon VPC (para subredes privadas)

Si las tareas de Fargate se ejecutan en subredes privadas sin acceso a Internet, debe configurar puntos de conexión de VPC para ECR a fin de garantizar que se puede acceder a través de la red al URI del repositorio de ECR que aloja el agente de seguridad de GuardDuty. Sin estos puntos de conexión, las tareas de las subredes privadas no pueden descargar la imagen del contenedor de GuardDuty.

Para obtener instrucciones sobre la configuración del punto de conexión de VPC, consulte Crear los puntos de conexión de VPC para Amazon ECR en la Guía del usuario de Amazon Elastic Container Registry.

Para obtener información sobre cómo habilitar Fargate para descargar el contenedor de GuardDuty, consulte Utilizar imágenes de Amazon ECR con Amazon ECS en la Guía del usuario de Amazon Elastic Container Registry.

Configuración del grupo de seguridad

Las imágenes del contenedor GuardDuty están en Amazon ECR y requieren acceso a Amazon S3. Este requisito es específico para descargar imágenes de contenedores de Amazon ECR. En el caso de las tareas con acceso restringido a la red, debe configurar sus grupos de seguridad para permitir el acceso a S3.

Agregue una regla de salida a su grupo de seguridad que permita el tráfico a la lista de prefijos administrados de S3 (pl-xxxxxxxx) en el puerto 443. Para agregar una regla de salida, consulte Configurar las reglas de un grupo de seguridad en la Guía del usuario de Amazon VPC.

Para ver las listas de prefijos administradas por AWS en la consola o describirlas mediante AWS Command Line Interface (AWS CLI), consulte las listas de prefijos administradas por AWS la Guía del usuario de Amazon VPC.

Validación de la política de control de servicios de la organización en un entorno de varias cuentas

En esta sección, se explica cómo validar la configuración de la política de control de servicios (SCP) para garantizar que Runtime Monitoring funcione según lo esperado en toda la organización.

Si ha configurado una o más políticas de control de servicio para administrar los permisos en la organización, debe validar que no niegue la acción guardduty:SendSecurityTelemetry. Para obtener información sobre cómo funcionan las SCP, consulte la evaluación de los SCP en la Guía del usuario de AWS Organizations.

Si es una cuenta de miembro, contacte al administrador delegado asociado. Para obtener información sobre cómo administrar las SCP para la organización, consulte Políticas de control de servicios (SCP) en la Guía del usuario de AWS Organizations.

Realice los siguientes pasos para todas las SCP que haya configurado en su entorno de cuentas múltiples:

La validación de guardduty:SendSecurityTelemetry no se deniega en SCP
  1. Abra la consola de Organizations en https://console.aws.amazon.com/organizations/. Debe iniciar sesión como rol de IAM o iniciar sesión como usuario raíz (no se recomienda) en la cuenta de administración de la organización.

  2. En el panel de navegación izquierdo, seleccione Policies (Políticas). A continuación, en Tipos de políticas compatibles, seleccione Políticas de control de servicios.

  3. En la página Políticas de control de servicios, elija el nombre de la política que desea adjuntar.

  4. En la página de detalles de la política, consulte el contenido de esta política. Asegúrese de que no deniegue la acción guardduty:SendSecurityTelemetry.

    La siguiente política de SCP es un ejemplo para no denegar la acción guardduty:SendSecurityTelemetry:

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "guardduty:SendSecurityTelemetry" ], "Resource": "*" } ] }

    Si su política deniega esta acción, debe actualizarla. Para obtener más información, consulte Actualización de una política de control de servicio (SCP) en la Guía del usuario de AWS Organizations.

Validación de permisos de roles y límites de permisos de políticas

Siga los siguientes pasos para validar que los límites de permisos asociados al rol y a su política no impliquen la acción guardduty:SendSecurityTelemetry de restricción.

Para ver los límites de permisos de los roles y su política
  1. Inicie sesión en la Consola de administración de AWS y abra la consola de IAM en https://console.aws.amazon.com/iam/.

  2. En el panel de navegación, en Administración del acceso, elija Roles.

  3. En la página Roles, seleccione el rol TaskExecutionRole que acaba de crear.

  4. En la página del rol seleccionado, en la pestaña Permisos, amplía el nombre de la política asociada a este rol. A continuación, verifique que esta política no restrinja guardduty:SendSecurityTelemetry.

  5. Si el límite de permisos está establecido, amplíe esta sección. A continuación, amplíe cada política para comprobar que no restrinja la acción guardduty:SendSecurityTelemetry. El aspecto de la respuesta debe ser parecido a Example SCP policy.

    Si es necesario, lleve a cabo una de las siguientes acciones:

    • Para modificar la política, seleccione Editar. En la página Modificar los permisos de esta política, actualice la política en el editor de políticas. Asegúrese de que el esquema JSON siga siendo válido. A continuación, elija Siguiente. A continuación, puede revisar y guardar los cambios.

    • Para cambiar este límite de permisos y elegir otro límite, elija Cambiar límite.

    • Para eliminar este límite de permisos, seleccione Eliminar límite.

    Para obtener más información sobre las políticas de IAM, consulte Políticas y permisos en AWS Identity and Access Management en la Guía del usuario de IAM.

Límites de CPU y memoria

En la definición de la tarea de Fargate, debe especificar el valor de CPU y memoria a nivel de tarea. En la siguiente tabla se indican las combinaciones válidas de valores de CPU y memoria a nivel de tarea, y el correspondiente límite máximo de memoria del agente de seguridad de GuardDuty para el contenedor de GuardDuty.

Valor de CPU Valor de memoria Límite máximo de memoria del agente de GuardDuty

256 (0,25 vCPU)

512 MiB, 1 GB, 2 GB

128 MB

512 (0,5 vCPU)

1 GB, 2 GB, 3 GB, 4 GB

1024 (1 vCPU)

2 GB, 3 GB, 4 GB

5 GB, 6 GB, 7 GB, 8 GB

2048 (2 vCPU)

Entre 4 GB y 16 GB en incrementos de 1 GB

4096 (4 vCPU)

Entre 8 GB y 20 GB en incrementos de 1 GB

8192 (8 vCPU)

Entre 16 GB y 28 GB en incrementos de 4 GB

256 MB

Entre 32 GB y 60 GB en incrementos de 4 GB

512 MB

16384 (16 vCPU)

Entre 32 GB y 120 GB en incrementos de 8 GB

1 GB

Después de habilitar la Supervisión en tiempo de ejecución y evaluar que la cobertura del clúster esté en buen estado, podrá configurar y ver las métricas de Información de contenedores. Para obtener más información, Configurar la supervisión en el clúster de Amazon ECS.

El siguiente paso consiste en configurar la Supervisión en tiempo de ejecución, así como el agente de seguridad.