Pruebe GuardDuty los resultados en cuentas dedicadas - 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.

Pruebe GuardDuty los resultados en cuentas dedicadas

Utilice este documento para ejecutar un script de prueba que genere GuardDuty resultados a partir de los recursos de prueba que se desplegarán en su Cuenta de AWS ordenador. Puede realizar estos pasos si desea comprender y obtener información sobre determinados tipos de GuardDuty hallazgos y cómo los detalles de la búsqueda buscan los recursos reales de su cuenta. Esta experiencia es diferente a la de generaciónHallazgos de ejemplo. Para obtener más información sobre la experiencia de probar GuardDuty los resultados, consulteConsideraciones.

Consideraciones

Antes de continuar, tenga en cuenta las siguientes consideraciones:

  • GuardDuty recomienda implementar el comprobador en un lugar dedicado que no sea Cuenta de AWS de producción. Este enfoque garantizará que pueda identificar adecuadamente los GuardDuty hallazgos generados por el evaluador. Además, el GuardDuty evaluador despliega una variedad de recursos que pueden requerir IAM permisos superiores a los permitidos en otras cuentas. El uso de una cuenta dedicada garantiza que los permisos puedan tener un alcance adecuado con un límite de cuenta claro.

  • El script del probador genera más de 100 GuardDuty resultados con diferentes combinaciones de AWS recursos. Actualmente, esto no incluye todos los. GuardDuty buscar tipos Para obtener una lista de los tipos de búsqueda que puede generar con este script de prueba, consulte. GuardDuty los resultados que puede generar un script de prueba

  • Para que el GuardDuty comprobador funcione según lo previsto, GuardDuty debe estar habilitado en la cuenta en la que se despliegan los recursos del comprobador. En función de las pruebas que se ejecuten, el evaluador evalúa si los planes de GuardDuty protección adecuados están habilitados o no. En el caso de cualquier plan de protección que no esté activado, GuardDuty solicitará permiso para activar los planes de protección necesarios durante el tiempo suficiente GuardDuty para realizar las pruebas que generen resultados. Más adelante, GuardDuty desactivará el plan de protección una vez finalizadas las pruebas.

    Habilitando GuardDuty por primera vez

    Cuando GuardDuty se active en tu cuenta dedicada por primera vez en una región específica, tu cuenta se inscribirá automáticamente en una prueba gratuita de 30 días.

    GuardDuty ofrece planes de protección opcionales. En el momento de la activación GuardDuty, algunos planes de protección también se habilitan y se incluyen en la prueba gratuita de GuardDuty 30 días. Para obtener más información, consulte Uso de una GuardDuty prueba gratuita de 30 días.

    GuardDuty ya estaba activado en su cuenta antes de ejecutar el script de prueba

    Cuando ya GuardDuty esté activado, el script del comprobador comprobará, en función de los parámetros, el estado de la configuración de determinados planes de protección y otros ajustes a nivel de cuenta necesarios para generar los resultados.

    Al ejecutar este script de prueba, es posible que algunos planes de protección se activen por primera vez en su cuenta dedicada de una región. Esto iniciará la prueba gratuita de 30 días de ese plan de protección. Para obtener información sobre la prueba gratuita asociada a cada plan de protección, consulteUso de una GuardDuty prueba gratuita de 30 días.

GuardDuty los resultados que puede generar un script de prueba

En la actualidad, el script del probador genera los siguientes tipos de búsquedas relacionados con AmazonEC2, AmazonEKS, Amazon S3 y los registros de EKS auditoría: IAM

Paso 1: Requisitos previos

Para preparar el entorno de prueba, necesitará los siguientes elementos:

  • Git: instala la herramienta de línea de comandos git en función del sistema operativo que utilices. Esto es necesario para clonar el amazon-guardduty-testerrepositorio.

  • AWS Command Line Interface— Una herramienta de código abierto que permite interactuar con ella Servicios de AWS mediante comandos de la consola de la línea de comandos. Para obtener más información, consulte Primeros pasos AWS CLI en la Guía del AWS Command Line Interface usuario.

  • AWS Systems Manager— Para iniciar sesiones de Session Manager con los nodos gestionados mediante el uso, AWS CLI debe instalar el complemento Session Manager en su máquina local. Para obtener más información, consulte Instalar el complemento Session Manager AWS CLI en la Guía del AWS Systems Manager usuario.

  • Node Package Manager (NPM): instálelo NPM para instalar todas las dependencias.

  • Docker: debe tener Docker instalado. Para obtener instrucciones de instalación, consulte el sitio web de Docker.

    Para comprobar que Docker se ha instalado, ejecuta el siguiente comando y confirma que hay un resultado similar al siguiente:

    $ docker --version Docker version 19.03.1
  • Suscríbase a la imagen de Kali Linux en. AWS Marketplace

Paso 2: Implementar recursos AWS

En esta sección se proporciona una lista de los conceptos clave y los pasos para implementar determinados AWS recursos en su cuenta dedicada.

Conceptos

La siguiente lista proporciona los conceptos clave relacionados con los comandos que le ayudan a implementar los recursos:

  • AWS Cloud Development Kit (AWS CDK)— CDK es un marco de desarrollo de software de código abierto para definir la infraestructura de nube en el código y aprovisionarla mediante ella. AWS CloudFormation CDKadmite un par de lenguajes de programación para definir los componentes de la nube reutilizables conocidos como construcciones. Puede agruparlos en pilas y aplicaciones. Luego, puede implementar sus CDK aplicaciones para AWS CloudFormation aprovisionar o actualizar sus recursos. Para obtener más información, consulte ¿Qué es AWS CDK? en la Guía para AWS Cloud Development Kit (AWS CDK) desarrolladores.

  • Bootstrapping: es el proceso de preparar el AWS entorno para su uso con. AWS CDK Antes de implementar una CDK pila en un AWS entorno, primero se debe iniciar el entorno. Este proceso de aprovisionamiento de AWS los recursos específicos de su entorno que AWS CDK utiliza forma parte de los pasos que realizará en la siguiente sección:. AWS Pasos para implementar los recursos

    Para obtener más información sobre cómo funciona el arranque, consulte el tema sobre el arranque en la Guía para desarrolladores.AWS Cloud Development Kit (AWS CDK)

AWS Pasos para implementar los recursos

Realice los siguientes pasos para empezar a implementar los recursos:

  1. Configure su cuenta y región AWS CLI predeterminadas, a menos que las variables de región de la cuenta dedicada se configuren manualmente en el bin/cdk-gd-tester.ts archivo. Para obtener más información, consulte Entornos en la Guía para AWS Cloud Development Kit (AWS CDK) desarrolladores.

  2. Ejecute los siguientes comandos para implementar los recursos:

    git clone https://github.com/awslabs/amazon-guardduty-tester && cd amazon-guardduty-tester npm install cdk bootstrap cdk deploy

    El último comando (cdk deploy) crea una AWS CloudFormation pila en tu nombre. El nombre de esta pila es GuardDutyTesterStack.

    Como parte de este script, GuardDuty crea nuevos recursos para generar GuardDuty resultados en tu cuenta. También añade el siguiente par de etiquetas clave:valor a las instancias de AmazonEC2:

    CreatedBy:GuardDuty Test Script

    Las EC2 instancias de Amazon también incluyen las EC2 instancias que alojan EKS nodos y ECS clústeres.

    Tipos de instancias

    GuardDuty crea t3.micro para todos los recursos, excepto para el grupo de EKS nodos de Amazon. Como EKS requiere al menos 2 núcleos, el EKS nodo tiene un tipo de t3.medium instancia. Para obtener más información sobre los tipos de instancias, consulta los tamaños disponibles en la Guía de tipos de EC2 instancias de Amazon.

Paso 3: Ejecuta scripts de prueba

Se trata de un proceso de dos pasos en el que primero hay que iniciar una sesión con el controlador de prueba y, a continuación, ejecutar los scripts para generar GuardDuty resultados con combinaciones de recursos específicas.

  1. Una vez desplegados los recursos, guarde el código de región en una variable de su sesión de terminal actual. Usa el siguiente comando y reemplaza us-east-1 con el código de región en el que desplegó los recursos:

    $ REGION=us-east-1
  2. El script de prueba solo está disponible a través de AWS Systems Manager (SSM). Para iniciar un shell interactivo en la instancia host del probador, consulte el host. InstanceId

  3. Use el siguiente comando para iniciar la sesión del script del probador:

    aws ssm start-session --region $REGION --document-name AWS-StartInteractiveCommand --parameters command="cd /home/ssm-user/py_tester && bash -l" --target $(aws ec2 describe-instances --region $REGION --filters "Name=tag:Name,Values=Driver-GuardDutyTester" --query "Reservations[].Instances[?State.Name=='running'].InstanceId" --output text)

El script de prueba es un programa basado en Python que crea dinámicamente un script bash para generar hallazgos basados en sus entradas. Dispone de flexibilidad para generar conclusiones en función de uno o más tipos de AWS recursos, planes de GuardDuty protección Propósitos de amenaza (tácticas) o. Orígenes de datos fundamentales GuardDuty los resultados que puede generar un script de prueba

Utilice los siguientes ejemplos de comandos como referencia y ejecute uno o más comandos para generar los resultados que desee explorar:

python3 guardduty_tester.py python3 guardduty_tester.py --all python3 guardduty_tester.py --s3 python3 guardduty_tester.py --tactics discovery python3 guardduty_tester.py --ec2 --eks --tactics backdoor policy execution python3 guardduty_tester.py --eks --runtime only python3 guardduty_tester.py --ec2 --runtime only --tactics impact python3 guardduty_tester.py --log-source dns vpc-flowlogs python3 guardduty_tester.py --finding 'CryptoCurrency:EC2/BitcoinTool.B!DNS'

Para obtener más información sobre los parámetros válidos, puede ejecutar el siguiente comando de ayuda:

python3 guardduty_tester.py --help

Elige el método que prefieras para ver las conclusiones generadas en tu cuenta.

GuardDuty console
  1. Inicie sesión en AWS Management Console y abra la GuardDuty consola en https://console.aws.amazon.com/guardduty/.

  2. En el panel de navegación, seleccione Findings (Resultados).

  3. En la tabla de hallazgos, seleccione un hallazgo del que desee ver los detalles. Se abrirá el panel de detalles de la búsqueda. Para obtener más información, consulte Comprender y generar los GuardDuty hallazgos de Amazon.

  4. Si quieres filtrar estos hallazgos, usa la clave y el valor de la etiqueta de recurso. Por ejemplo, para filtrar los resultados generados para las EC2 instancias de Amazon, usaCreatedBy: GuardDuty Test Script tag key:value pair para la clave de etiqueta de instancia y la clave de etiqueta de instancia.

API
AWS CLI
  • Ejecuta el siguiente AWS CLI comando para ver los resultados generados y reemplazarlos us-east-1 y 12abc34d567e8fa901bc2d34EXAMPLE con los valores adecuados:

    aws guardduty list-findings --region us-east-1 --detector-id 12abc34d567e8fa901bc2d34EXAMPLE

    Para encontrar el detectorId valor de su cuenta y región actual, consulte la página de configuración de la https://console.aws.amazon.com/guardduty/consola o ejecute el ListDetectors API.

    Para obtener más información sobre los parámetros que puede utilizar para filtrar los resultados, consulte list-findings en la Referencia de AWS CLI comandos.

Paso 4: Limpiar los recursos de las AWS pruebas

Los ajustes a nivel de cuenta y otras actualizaciones de estado de la configuración realizadas durante el Paso 3: Ejecuta scripts de prueba proceso vuelven al estado original cuando finaliza el script del comprobador.

Tras ejecutar el script del comprobador, puede optar por limpiar los recursos de la prueba. AWS Puede optar por hacerlo mediante uno de los métodos siguientes:

Solución de problemas comunes

GuardDuty ha identificado los problemas más comunes y recomienda medidas para solucionarlos:

  • Cloud assembly schema version mismatch— Actualice AWS CDK CLI a una versión compatible con la versión de ensamblaje en la nube requerida o a la última versión disponible. Para obtener más información, consulte AWS CDK CLIcompatibilidad.

  • Docker permission denied— Agregue el usuario de la cuenta dedicada a los usuarios de Docker para que la cuenta dedicada pueda ejecutar los comandos. Para obtener más información sobre los pasos, consulta Acceso denegado a Docker.

  • Your requested instance type is not supported in your requested Availability Zone— Algunas zonas de disponibilidad no admiten determinados tipos de instancias. Para identificar qué zonas de disponibilidad son compatibles con el tipo de instancia que prefiera y volver a intentar implementar AWS los recursos, lleve a cabo los siguientes pasos:

    1. Elija un método preferido para determinar qué zonas de disponibilidad son compatibles con su tipo de instancia:

      Console
      Para identificar las zonas de disponibilidad que admiten el tipo de instancia preferido
      1. Inicia sesión en la EC2 consola de Amazon AWS Management Console y ábrela en https://console.aws.amazon.com/ec2/.

      2. Con el selector de AWS regiones situado en la esquina superior derecha de la página, elige la región en la que quieres lanzar la instancia.

      3. En el panel de navegación, en Instancias, elija Tipos de instancias.

      4. En la tabla de tipos de instancias, elija el tipo de instancia que prefiera.

      5. En Redes, consulta las regiones que aparecen en Zonas de disponibilidad.

        En función de esta información, es posible que deba elegir una nueva región en la que pueda implementar los recursos.

      AWS CLI

      Ejecute el siguiente comando para ver una lista de zonas de disponibilidad. Asegúrese de especificar el tipo de instancia que prefiera y la región (us-east-1).

      aws ec2 describe-instance-type-offerings --location-type availability-zone --filters Name=instance-type,Values=Preferred instance type --region us-east-1 --output table

      Para obtener más información sobre este comando, consulte describe-instance-type-offeringsla Referencia de AWS CLI comandos.

      Al ejecutar este comando, si recibe un error, asegúrese de que está utilizando la última versión de AWS CLI. Para obtener más información, consulte Solución de problemas en la Guía del usuario de AWS Command Line Interface .

    2. Intente volver a implementar los AWS recursos y especifique una zona de disponibilidad que sea compatible con el tipo de instancia que prefiera.

      Para volver a intentar implementar AWS los recursos
      1. Configure la región predeterminada en el bin/cdk-gd-tester.ts archivo.

      2. Para especificar la zona de disponibilidad, abra el amazon-guardduty-tester/lib/common/network/vpc.ts archivo.

      3. En este archivo, maxAzs: 2, sustitúyalo por el availabilityZones: ['us-east-1a', 'us-east-1c'], lugar donde debe especificar las zonas de disponibilidad para su tipo de instancia.

      4. Continúe con los pasos restantes que se indican a continuaciónAWS Pasos para implementar los recursos.