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.
Contenido
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-tester
repositorio. -
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:
-
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. -
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 det3.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.
-
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
-
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
-
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 --tacticsdiscovery
python3 guardduty_tester.py --ec2
--eks
--tacticsbackdoor
policy
execution
python3 guardduty_tester.py --eks
--runtime
only python3 guardduty_tester.py --ec2
--runtime
only --tacticsimpact
python3 guardduty_tester.py --log-sourcedns
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.
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:
-
Ejecute el siguiente comando:
cdk destroy
-
Elimine la AWS CloudFormation pila con el nombre GuardDutyTesterStack. Para obtener información sobre los pasos, consulte Eliminar una pila en la AWS CloudFormation consola.
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:-
Elija un método preferido para determinar qué zonas de disponibilidad son compatibles con su tipo de instancia:
-
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
-
Configure la región predeterminada en el
bin/cdk-gd-tester.ts
archivo. -
Para especificar la zona de disponibilidad, abra el
amazon-guardduty-tester/lib/common/network/vpc.ts
archivo. -
En este archivo,
maxAzs: 2,
sustitúyalo por elavailabilityZones: ['
lugar donde debe especificar las zonas de disponibilidad para su tipo de instancia.us-east-1a
', 'us-east-1c
'], -
Continúe con los pasos restantes que se indican a continuaciónAWS Pasos para implementar los recursos.
-
-