Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
GuardDuty Résultats des tests dans des comptes dédiés
Utilisez ce document pour exécuter un script de test qui génère des GuardDuty résultats dans un script Compte AWS que vous utilisez spécifiquement à cette fin. Vous pouvez effectuer ces étapes lorsque vous souhaitez comprendre certains types de GuardDuty recherche et en savoir plus sur ceux-ci. Cette expérience est différente de la générationExemples de résultats. Pour plus d'informations sur l'expérience des GuardDuty résultats des tests, consultezConsidérations.
Table des matières
Considérations
Avant de poursuivre, tenez compte des considérations suivantes :
-
GuardDuty recommande de déployer le script du testeur dans un environnement de non-production dédié Compte AWS ou isolé. En exécutant le script du testeur, certaines AWS ressources GuardDuty seront déployées dans ce compte. Cela vous aidera également à identifier ces résultats simulés.
-
Le script du testeur génère plus de 100 GuardDuty résultats avec différentes combinaisons de AWS ressources. Actuellement, cela n'inclut pas tous lesTypes de résultats. Pour obtenir la liste des types de recherche que vous pouvez générer avec ce script de test, consultezGuardDuty résultats que le script de testeur peut générer.
-
Le script du testeur valide l'état GuardDuty de la configuration dans votre compte dédié. Si ce compte n' GuardDuty est pas activé, le script vous demandera de l'activer lors de votre performanceÉtape 3 - Exécuter des scripts de test. Le script du testeur vous demandera l'autorisation d'activer certains plans de protection nécessaires pour générer les résultats.
- Activation GuardDuty pour la première fois
-
Lorsqu' GuardDuty il est activé sur votre compte dédié pour la première fois dans une région spécifique, votre compte sera automatiquement inscrit à un essai gratuit de 30 jours.
GuardDuty propose des plans de protection optionnels. Au moment de l'activation GuardDuty, certains plans de protection sont également activés et sont inclus dans l'essai gratuit de GuardDuty 30 jours. Pour plus d’informations, consultez Utilisation de l' GuardDuty essai gratuit de 30 jours.
- GuardDuty est déjà activé dans votre compte avant d'exécuter le script du testeur
-
Lorsque cette option GuardDuty est déjà activée, le script du testeur vérifie l'état de configuration de certains plans de protection et d'autres paramètres au niveau du compte requis pour générer les résultats en fonction des paramètres.
En exécutant ce script de test, certains plans de protection peuvent être activés pour la première fois sur votre compte dédié dans une région. Cela lancera l'essai gratuit de 30 jours pour ce plan de protection. Pour plus d'informations sur l'essai gratuit associé à chaque plan de protection, consultezUtilisation de l' GuardDuty essai gratuit de 30 jours.
-
Une fois le script de test terminé, la configuration et les paramètres du plan de protection d'origine de votre compte dédié seront restaurés.
GuardDuty résultats que le script de testeur peut générer
Actuellement, le script du testeur génère les types de résultats suivants liés aux journaux d'audit Amazon EC2, Amazon EKS, Amazon S3, IAM et EKS :
Étape 1 - Prérequis
Pour préparer votre environnement de test, vous aurez besoin des éléments suivants :
-
Git — Installez l'outil de ligne de commande git en fonction du système d'exploitation que vous utilisez. Cela est nécessaire pour cloner le
amazon-guardduty-tester
dépôt. -
AWS Command Line Interface— Un outil open source avec lequel vous pouvez interagir à l'aide Services AWS de commandes dans votre interface de ligne de commande. Pour plus d'informations, voir Commencer AWS CLI dans le guide de AWS Command Line Interface l'utilisateur.
-
AWS Systems Manager— Pour lancer des sessions de gestionnaire de session avec vos nœuds gérés en utilisant, AWS CLI vous devez installer le plug-in Session Manager sur votre machine locale. Pour plus d'informations, consultez la section Installer le plug-in Session Manager AWS CLI dans le guide de AWS Systems Manager l'utilisateur.
-
Node Package Manager (NPM) — Installez NPM pour installer toutes les dépendances.
-
Docker — Docker doit être installé. Pour obtenir les instructions d'installation, consultez le site web Docker
. Pour vérifier que Docker a été installé, exécutez la commande suivante et vérifiez qu'il existe un résultat similaire au résultat suivant :
$ docker --version Docker version 19.03.1
-
Abonnez-vous à l'image Kali Linux
dans le AWS Marketplace.
Étape 2 - Déployer AWS les ressources
Cette section fournit une liste des concepts clés et les étapes à suivre pour déployer certaines AWS ressources dans votre compte dédié.
Concepts
La liste suivante fournit les concepts clés liés aux commandes qui vous aident à déployer les ressources :
-
AWS Cloud Development Kit (AWS CDK)— CDK est un framework de développement de logiciels open source permettant de définir l'infrastructure cloud dans le code et de la provisionner via celui-ci. AWS CloudFormation CDK prend en charge plusieurs langages de programmation pour définir des composants cloud réutilisables appelés constructions. Vous pouvez les composer ensemble en piles et en applications. Vous pouvez ensuite déployer vos applications CDK pour approvisionner ou mettre AWS CloudFormation à jour vos ressources. Pour plus d'informations, voir Qu'est-ce que le AWS CDK ? dans le Guide AWS Cloud Development Kit (AWS CDK) du développeur.
-
Bootstrapping — Il s'agit du processus de préparation de votre AWS environnement pour une utilisation avec. AWS CDK Avant de déployer une pile CDK dans un AWS environnement, celui-ci doit d'abord être amorcé. Ce processus de mise en service de AWS ressources spécifiques dans votre environnement qui sont utilisées par AWS CDK fait partie des étapes que vous allez effectuer dans la section suivante -Étapes de déploiement AWS des ressources.
Pour plus d'informations sur le fonctionnement du bootstrapping, voir Bootstrapping dans le manuel du développeur.AWS Cloud Development Kit (AWS CDK)
Étapes de déploiement AWS des ressources
Procédez comme suit pour commencer à déployer les ressources :
-
Configurez votre compte et votre région AWS CLI par défaut, sauf si les variables de région du compte dédié sont définies manuellement dans le
bin/cdk-gd-tester.ts
fichier. Pour plus d'informations, consultez la section Environnements du guide du AWS Cloud Development Kit (AWS CDK) développeur. -
Exécutez les commandes suivantes pour déployer les ressources :
git clone https://github.com/awslabs/amazon-guardduty-tester && cd amazon-guardduty-tester npm install cdk bootstrap cdk deploy
La dernière commande (
cdk deploy
) crée une AWS CloudFormation pile en votre nom. Le nom de cette pile est GuardDutyTesterStack.Dans le cadre de ce script, GuardDuty crée de nouvelles ressources pour générer des GuardDuty résultats dans votre compte. Il ajoute également la paire de balises clé:valeur suivante aux instances Amazon EC2 :
CreatedBy
:GuardDuty Test Script
Les instances Amazon EC2 incluent également les instances EC2 qui hébergent des nœuds EKS et des clusters ECS.
Types d’instances
GuardDuty crée
t3.micro
pour toutes les ressources à l'exception du groupe de nœuds Amazon EKS. EKS nécessitant au moins 2 cœurs, le nœud EKS possède un type d't3.medium
instance. Pour plus d'informations sur les types d'instances, consultez la section Tailles disponibles dans le guide des types d'instances Amazon EC2.
Étape 3 - Exécuter des scripts de test
Il s'agit d'un processus en deux étapes dans lequel vous devez d'abord démarrer une session avec le pilote de test, puis exécuter des scripts pour générer des GuardDuty résultats avec des combinaisons de ressources spécifiques.
-
Une fois vos ressources déployées, enregistrez le code de région dans une variable dans votre session de terminal en cours. Utilisez la commande suivante et remplacez
us-east-1
par le code de région dans lequel vous avez déployé les ressources :$ REGION=
us-east-1
-
Le script du testeur n'est disponible que via AWS Systems Manager (SSM). Pour démarrer un shell interactif sur l'instance hôte du testeur, interrogez l'hôte InstanceId.
-
Utilisez la commande suivante pour démarrer votre session pour le script du testeur :
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)
Le script testeur est un programme basé sur Python qui crée dynamiquement un script bash pour générer des résultats en fonction de vos entrées. Vous disposez de la flexibilité nécessaire pour générer des résultats basés sur un ou plusieurs types de AWS ressources, plans de GuardDuty protectionSource de données de base, Buts de la menace (tactiques) ouGuardDuty résultats que le script de testeur peut générer.
Utilisez les exemples de commandes suivants comme référence et exécutez une ou plusieurs commandes pour générer les résultats que vous souhaitez explorer :
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
'
Pour plus d'informations sur les paramètres valides, vous pouvez exécuter la commande d'aide suivante :
python3 guardduty_tester.py --help
Choisissez une méthode préférée pour afficher les résultats générés dans votre compte.
Étape 4 - Nettoyer les ressources AWS de test
Les paramètres au niveau du compte et les autres mises à jour de l'état de configuration effectuées lors du Étape 3 - Exécuter des scripts de test retour à l'état d'origine à la fin du script du testeur.
Après avoir exécuté le script du testeur, vous pouvez choisir de nettoyer les ressources de AWS test. Vous pouvez choisir de le faire en utilisant l'une des méthodes suivantes :
-
Exécutez la commande suivante :
cdk destroy
-
Supprimez la AWS CloudFormation pile portant le nom GuardDutyTesterStack. Pour plus d'informations sur les étapes, voir Supprimer une pile sur la AWS CloudFormation console.
Résolution des problèmes courants
GuardDuty a identifié les problèmes courants et recommande les étapes de résolution des problèmes :
-
Cloud assembly schema version mismatch
— Mettez à jour la AWS CDK CLI vers une version compatible avec la version d'assemblage cloud requise ou vers la dernière version disponible. Pour plus d'informations, consultez la section Compatibilité avec les AWS CDK CLI. -
Docker permission denied
— Ajoutez l'utilisateur du compte dédié aux docker-users afin que le compte dédié puisse exécuter les commandes. Pour plus d'informations sur les étapes à suivre, consultez la section Accès Docker refusé. -
Your requested instance type is not supported in your requested Availability Zone
— Certaines zones de disponibilité ne prennent pas en charge certains types d'instances. Pour identifier les zones de disponibilité compatibles avec votre type d'instance préféré et réessayer de déployer AWS des ressources, effectuez les opérations suivantes :-
Choisissez une méthode préférée pour déterminer les zones de disponibilité compatibles avec votre type d'instance :
-
Réessayez de déployer les AWS ressources et spécifiez une zone de disponibilité qui prend en charge votre type d'instance préféré.
Pour réessayer de déployer des ressources AWS
-
Configurez la région par défaut dans le
bin/cdk-gd-tester.ts
fichier. -
Pour définir la zone de disponibilité, ouvrez le
amazon-guardduty-tester/lib/common/network/vpc.ts
fichier. -
Dans ce fichier, remplacez
maxAzs: 2,
par l'availabilityZones: ['
endroit où vous devez spécifier les zones de disponibilité pour votre type d'instance.us-east-1a
', 'us-east-1c
'], -
Continuez avec les étapes restantes ci-dessousÉtapes de déploiement AWS des ressources.
-
-