Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
GuardDuty Testergebnisse in speziellen Konten
Verwenden Sie dieses Dokument, um ein Tester-Skript auszuführen, das GuardDuty Ergebnisse in einem generiert AWS-Konto , das Sie speziell für diesen Zweck verwenden. Sie können diese Schritte ausführen, wenn Sie bestimmte GuardDuty Arten von Ergebnissen verstehen und mehr über sie erfahren möchten. Diese Erfahrung unterscheidet sich von der GenerierungBeispielergebnisse. Weitere Informationen zu den Erfahrungen beim Testen von GuardDuty Ergebnissen finden Sie unterÜberlegungen.
Inhalt
Überlegungen
Bevor Sie fortfahren, sollten Sie die folgenden Überlegungen berücksichtigen:
-
GuardDuty empfiehlt, das Tester-Skript in einer dedizierten Nicht-Produktionsumgebung AWS-Konto oder einer isolierten Umgebung bereitzustellen. Durch die Ausführung des Tester-Skripts GuardDuty werden bestimmte AWS Ressourcen in diesem Konto bereitgestellt. Dies hilft Ihnen auch dabei, diese simulierten Ergebnisse zu identifizieren.
-
Das Tester-Skript generiert über 100 GuardDuty Ergebnisse mit unterschiedlichen AWS Ressourcenkombinationen. Derzeit beinhaltet dies nicht alle. Erkenntnistypen Eine Liste der Suchtypen, die Sie mit diesem Tester-Skript generieren können, finden Sie unter. GuardDuty Ergebnisse, die das Tester-Skript generieren kann
-
Das Tester-Skript validiert den GuardDuty Konfigurationsstatus in Ihrem speziellen Konto. Wenn dieses Konto nicht GuardDuty aktiviert ist, werden Sie beim Ausführen Schritt 3 — Tester-Skripte ausführen des Skripts aufgefordert, es zu aktivieren. Das Test-Skript bittet Sie um Ihre Zustimmung zur Aktivierung bestimmter Schutzpläne, die zur Generierung der Ergebnisse erforderlich sind.
- GuardDuty Zum ersten Mal aktivieren
-
Wenn GuardDuty es in Ihrem speziellen Konto zum ersten Mal in einer bestimmten Region aktiviert wird, wird Ihr Konto automatisch für eine kostenlose 30-Tage-Testversion registriert.
GuardDuty bietet optionale Schutzpläne. Zum Zeitpunkt der Aktivierung GuardDuty werden auch bestimmte Schutzpläne aktiviert und sind in der kostenlosen GuardDuty 30-Tage-Testversion enthalten. Weitere Informationen finden Sie unter Verwenden Sie die kostenlose GuardDuty 30-Tage-Testversion.
- GuardDuty ist in Ihrem Konto bereits aktiviert, bevor Sie das Tester-Skript ausführen
-
Wenn GuardDuty es bereits aktiviert ist, überprüft das Tester-Skript anhand der Parameter den Konfigurationsstatus bestimmter Schutzpläne und anderer Einstellungen auf Kontoebene, die zur Generierung der Ergebnisse erforderlich sind.
Durch die Ausführung dieses Testerskripts können bestimmte Schutzpläne in Ihrem speziellen Konto in einer Region zum ersten Mal aktiviert werden. Dadurch wird die kostenlose 30-Tage-Testversion für diesen Schutzplan gestartet. Informationen zur kostenlosen Testversion der einzelnen Schutzpläne finden Sie unterVerwenden Sie die kostenlose GuardDuty 30-Tage-Testversion.
-
Nach Abschluss des Testerskripts werden die ursprünglichen Schutzplankonfigurationen und -einstellungen für Ihr dediziertes Konto wiederhergestellt.
GuardDuty Ergebnisse, die das Tester-Skript generieren kann
Derzeit generiert das Tester-Skript die folgenden Findetypen, die sich auf AmazonEC2, AmazonEKS, Amazon S3 und EKS Audit-Logs beziehen: IAM
Schritt 1 — Voraussetzungen
Um Ihre Testumgebung vorzubereiten, benötigen Sie die folgenden Elemente:
-
Git — Installieren Sie das Git-Befehlszeilentool basierend auf dem von Ihnen verwendeten Betriebssystem. Dies ist erforderlich, um das
amazon-guardduty-tester
Repositoryzu klonen. -
AWS Command Line Interface— Ein Open-Source-Tool, mit dem Sie mithilfe AWS-Services von Befehlen in Ihrer Befehlszeilen-Shell interagieren können. Weitere Informationen finden Sie unter Erste Schritte mit AWS CLI im AWS Command Line Interface Benutzerhandbuch.
-
AWS Systems Manager— Um Session Manager-Sitzungen mit Ihren verwalteten Knoten zu initiieren, müssen AWS CLI Sie das Session Manager-Plug-In auf Ihrem lokalen Computer installieren. Weitere Informationen finden Sie unter Installieren des Session Manager-Plug-ins für AWS CLI im AWS Systems Manager Benutzerhandbuch.
-
Node Package Manager (NPM) — InstallierenNPM, um alle Abhängigkeiten zu installieren.
-
Docker — Sie müssen Docker installiert haben. Installationsanweisungen finden Sie auf der Docker-Website
. Um zu überprüfen, ob Docker installiert wurde, führen Sie den folgenden Befehl aus und vergewissern Sie sich, dass eine Ausgabe vorliegt, die der folgenden Ausgabe ähnelt:
$ docker --version Docker version 19.03.1
-
Abonnieren Sie das Kali Linux-Image
im. AWS Marketplace
Schritt 2 — Ressourcen bereitstellen AWS
Dieser Abschnitt enthält eine Liste der wichtigsten Konzepte und der Schritte zur Bereitstellung bestimmter AWS Ressourcen in Ihrem speziellen Konto.
Konzepte
Die folgende Liste enthält wichtige Konzepte zu den Befehlen, mit denen Sie die Ressourcen bereitstellen können:
-
AWS Cloud Development Kit (AWS CDK)— CDK ist ein Open-Source-Framework für die Softwareentwicklung, mit dem Cloud-Infrastruktur im Code definiert und bereitgestellt werden kann. AWS CloudFormation CDKunterstützt eine Reihe von Programmiersprachen, um wiederverwendbare Cloud-Komponenten, sogenannte Konstrukte, zu definieren. Sie können diese zu Stacks und Apps zusammenstellen. Anschließend können Sie Ihre CDK Anwendungen bereitstellen, AWS CloudFormation um Ihre Ressourcen bereitzustellen oder zu aktualisieren. Weitere Informationen finden Sie unter Was ist der AWS CDK? im AWS Cloud Development Kit (AWS CDK) Entwicklerhandbuch.
-
Bootstrapping — Dies ist der Prozess, bei dem Ihre AWS Umgebung für die Verwendung mit vorbereitet wird. AWS CDK Bevor Sie einen CDK Stack in einer AWS Umgebung bereitstellen, muss die Umgebung zunächst gebootet werden. Dieser Prozess der Bereitstellung bestimmter AWS Ressourcen in Ihrer Umgebung, die von verwendet werden, AWS CDK ist Teil der Schritte, die Sie im nächsten Abschnitt ausführen werden -. Schritte zur Bereitstellung von Ressourcen AWS
Weitere Informationen zur Funktionsweise von Bootstrapping finden Sie unter Bootstrapping im Entwicklerhandbuch.AWS Cloud Development Kit (AWS CDK)
Schritte zur Bereitstellung von Ressourcen AWS
Führen Sie die folgenden Schritte aus, um mit der Bereitstellung der Ressourcen zu beginnen:
-
Richten Sie Ihr AWS CLI Standardkonto und Ihre Region ein, sofern die Regionsvariablen für das Konto nicht manuell in der
bin/cdk-gd-tester.ts
Datei festgelegt wurden. Weitere Informationen finden Sie im AWS Cloud Development Kit (AWS CDK) Entwicklerhandbuch unter Umgebungen. -
Führen Sie die folgenden Befehle aus, um die Ressourcen bereitzustellen:
git clone https://github.com/awslabs/amazon-guardduty-tester && cd amazon-guardduty-tester npm install cdk bootstrap cdk deploy
Der letzte Befehl (
cdk deploy
) erstellt in Ihrem Namen einen AWS CloudFormation Stack. Der Name dieses Stacks ist GuardDutyTesterStack.GuardDuty Erstellt im Rahmen dieses Skripts neue Ressourcen, um GuardDuty Ergebnisse in Ihrem Konto zu generieren. Außerdem wird den EC2 Amazon-Instances das folgende Tag-Schlüssel:Wert-Paar hinzugefügt:
CreatedBy
:GuardDuty Test Script
Zu den EC2 Amazon-Instances gehören auch die EC2 Instances, die EKS Knoten und ECS Cluster hosten.
Instance-Typen
GuardDuty erstellt
t3.micro
für alle Ressourcen mit Ausnahme der EKS Amazon-Knotengruppe. Da mindestens 2 Kerne EKS erforderlich sind, hat der EKS Knoten dent3.medium
Instance-Typ. Weitere Informationen zu Instance-Typen finden Sie unter Verfügbare Größen im Amazon EC2 Instances Types Guide.
Schritt 3 — Tester-Skripte ausführen
Dies ist ein zweistufiger Prozess, bei dem Sie zuerst eine Sitzung mit dem Testtreiber starten und dann Skripts ausführen müssen, um GuardDuty Ergebnisse mit bestimmten Ressourcenkombinationen zu generieren.
-
Nachdem Ihre Ressourcen bereitgestellt wurden, speichern Sie den Regionalcode in einer Variablen in Ihrer aktuellen Terminalsitzung. Verwenden Sie den folgenden Befehl und ersetzen Sie
us-east-1
mit dem Regionalcode, in dem Sie die Ressourcen bereitgestellt haben:$ REGION=
us-east-1
-
Das Tester-Skript ist nur über AWS Systems Manager (SSM) verfügbar. Um eine interaktive Shell auf der Tester-Host-Instanz zu starten, fragen Sie den Host ab InstanceId.
-
Verwenden Sie den folgenden Befehl, um Ihre Sitzung für das Tester-Skript zu beginnen:
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)
Das Tester-Skript ist ein Python-basiertes Programm, das dynamisch ein Bash-Skript erstellt, um Ergebnisse auf der Grundlage Ihrer Eingabe zu generieren. Sie haben die Flexibilität, Ergebnisse auf der Grundlage eines oder mehrerer AWS Ressourcentypen, GuardDuty Schutzpläne, Bedrohungszwecke (Taktiken) oder zu generieren. Grundlegende Datenquellen GuardDuty Ergebnisse, die das Tester-Skript generieren kann
Verwenden Sie die folgenden Befehlsbeispiele als Referenz und führen Sie einen oder mehrere Befehle aus, um Ergebnisse zu generieren, die Sie untersuchen möchten:
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
'
Weitere Informationen zu gültigen Parametern erhalten Sie, wenn Sie den folgenden Hilfebefehl ausführen:
python3 guardduty_tester.py --help
Wählen Sie eine bevorzugte Methode, um die generierten Ergebnisse in Ihrem Konto anzuzeigen.
Schritt 4 — Testressourcen AWS bereinigen
Die Einstellungen auf Kontoebene und andere Aktualisierungen des Konfigurationsstatus, die während der Schritt 3 — Tester-Skripte ausführen Rückkehr zum ursprünglichen Zustand vorgenommen wurden, wenn das Tester-Skript abgeschlossen ist.
Nachdem Sie das Tester-Skript ausgeführt haben, können Sie wählen, ob Sie die AWS Testressourcen bereinigen möchten. Sie können dafür eine der folgenden Methoden verwenden:
-
Führen Sie den folgenden Befehl aus:
cdk destroy
-
Löschen Sie den AWS CloudFormation Stapel mit dem Namen GuardDutyTesterStack. Informationen zu den einzelnen Schritten finden Sie unter Löschen eines Stacks auf der AWS CloudFormation Konsole.
Behebung häufiger Probleme
GuardDuty hat häufig auftretende Probleme identifiziert und empfiehlt Schritte zur Fehlerbehebung:
-
Cloud assembly schema version mismatch
— Aktualisieren Sie AWS CDK CLI auf eine Version, die mit der erforderlichen Cloud-Assembly-Version kompatibel ist, oder auf die neueste verfügbare Version. Weitere Informationen finden Sie unter AWS CDK CLIKompatibilität. -
Docker permission denied
— Fügen Sie den Benutzer des dedizierten Kontos zu den Docker-Benutzern hinzu, damit das dedizierte Konto die Befehle ausführen kann. Weitere Informationen zu den einzelnen Schritten finden Sie unter Docker-Zugriff verweigert. -
Your requested instance type is not supported in your requested Availability Zone
— Einige Availability Zones unterstützen bestimmte Instanztypen nicht. Gehen Sie wie folgt vor, um herauszufinden, welche Availability Zones Ihren bevorzugten Instance-Typ unterstützen, und versuchen Sie erneut, AWS Ressourcen bereitzustellen:-
Wählen Sie eine bevorzugte Methode, um festzustellen, welche Availability Zones Ihren Instance-Typ unterstützen:
-
Versuchen Sie erneut, die AWS Ressourcen bereitzustellen, und geben Sie eine Availability Zone an, die Ihren bevorzugten Instance-Typ unterstützt.
Um erneut zu versuchen, Ressourcen bereitzustellen AWS
-
Richten Sie die Standardregion in der
bin/cdk-gd-tester.ts
Datei ein. -
Um die Availability Zone anzugeben, öffnen Sie die
amazon-guardduty-tester/lib/common/network/vpc.ts
Datei. -
Ersetzen Sie diese Datei durch die Stelle
maxAzs: 2,
,availabilityZones: ['
an der Sie die Availability Zones für Ihren Instance-Typ angeben müssen.us-east-1a
', 'us-east-1c
'], -
Fahren Sie mit den verbleibenden Schritten unter fortSchritte zur Bereitstellung von Ressourcen AWS.
-
-