
AWSGoat : Eine bewusst verwundbare AWS-Infrastruktur

Die Cloud-Infrastruktur einer Organisation zu kompromittieren, ist für Angreifer wie auf einer Goldgrube zu sitzen. Und manchmal ist eine einfache Fehlkonfiguration oder eine Schwachstelle in Webanwendungen alles, was ein Angreifer braucht, um die gesamte Infrastruktur zu kompromittieren. Da die Cloud relativ neu ist, sind sich viele Entwickler der Bedrohungslage nicht vollständig bewusst und stellen am Ende eine verwundbare Cloud-Infrastruktur bereit.
AWSGoat ist eine absichtlich verwundbare Infrastruktur auf AWS, die die zuletzt veröffentlichten OWASP Top 10 Webanwendungssicherheitsrisiken (2021) und weitere Fehlkonfigurationen basierend auf Diensten wie IAM, S3, API Gateway, Lambda, EC2 und ECS enthält. AWSGoat bildet reale Infrastruktur nach, jedoch mit zusätzlichen Schwachstellen. Es bietet mehrere Eskalationspfade und konzentriert sich auf einen Black-Box-Ansatz.
AWSGoat verwendet IaC (Terraform), um die verwundbare Cloud-Infrastruktur im AWS-Konto des Benutzers bereitzustellen. Dies gibt dem Benutzer die vollständige Kontrolle über Code, Infrastruktur und Umgebung. Mit AWSGoat kann der Benutzer lernen/üben:
Das Projekt wird in Module unterteilt, wobei jedes Modul eine separate Webanwendung ist, die von verschiedenen Tech-Stacks und Entwicklungspraktiken angetrieben wird. Es wird IaC über Terraform und GitHub Actions nutzen, um den Bereitstellungsprozess zu erleichtern.
Präsentiert bei
Das Projekt soll alle wesentlichen Schwachstellen abdecken, einschließlich der OWASP TOP 10 2021 und gängiger Cloud-Fehlkonfigurationen. Derzeit enthält das Projekt die folgenden Schwachstellen/Fehlkonfigurationen.
Um den Bereitstellungsprozess zu erleichtern, muss der Benutzer lediglich dieses Repository forken, seine AWS-Konto-Anmeldedaten zu den GitHub-Secrets hinzufügen und die Terraform-Apply-Action ausführen. Dieser Workflow stellt die gesamte Infrastruktur bereit und gibt die URL der gehosteten Anwendung aus.
Hier sind die zu befolgenden Schritte:
Schritt 1. Forken Sie das Repository
Schritt 2. Legen Sie die GitHub-Action-Secrets fest:
AWS_ACCESS_KEY
AWS_SECRET_ACCESS_KEY
Schritt 3. Wähle im Actions-Tab des Repositorys das Modul aus, das bereitgestellt werden soll, und führe den Terraform Apply-Workflow aus.
Schritt 4. Finde die Anwendungs-URL im Terraform-Ausgabebereich.
Die manuelle Installation von AWSGoat erfordert, dass du die folgenden Schritte befolgst:
(Hinweis: Dies erfordert eine Linux-Maschine mit verfügbarer /bin/bash-Shell)
Schritt 1. Klone das Repository
git clone https://github.com/ine-labs/AWSGoat
Schritt 2. AWS-Benutzerkonto-Anmeldeinformationen konfigurieren
aws configure
Schritt 3. Wechseln Sie in das Verzeichnis des jeweiligen Moduls und verwenden Sie terraform, um AWSGoat bereitzustellen
cd modules/module-<Number>
terraform init
terraform apply --auto-approve
Das erste Modul umfasst eine serverlose Blog-Anwendung, die AWS Lambda, S3, API Gateway und DynamoDB nutzt. Es besteht aus verschiedenen Schwachstellen in Webanwendungen und ermöglicht die Ausnutzung falsch konfigurierter AWS-Ressourcen.
Eskalationspfad:
Das zweite Modul umfasst eine interne HR-Payroll-Anwendung, die die AWS-ECS-Infrastruktur nutzt. Es besteht aus verschiedenen Schwachstellen in Webanwendungen und ermöglicht die Ausnutzung falsch konfigurierter AWS-Ressourcen.
Eskalationspfad:
Empfohlener Browser: Google Chrome
Die durch die Bereitstellung von AWSGoat erstellten Ressourcen verursachen keine Kosten, wenn das AWS-Konto sich im Free-Tier/Testzeitraum befindet. Nach Ausschöpfung bzw. Wegfall des Free-Tiers/Testzeitraums fallen jedoch folgende Kosten für die Region US-East an:
Modul 1: $0.0125/Stunde
Modul 2: $0.0505/Stunde
Jeswin Mathai, Chief Architect, Lab Platform, INE [email protected]
Nishant Sharma, Director, Lab Platform, INE [email protected]
Sanjeev Mahunta, Software Engineer (Cloud), INE [email protected]
Shantanu Kale, Cloud Developer, INE [email protected]
Govind Krishna Lal Balaji, Cloud Developer, INE [email protected]
Litesh Ghute, Senior Engineer, INE [email protected], LinkedIn
Die Offensiv-Handbücher sind im Verzeichnis attack-manuals verfügbar, und die Defensiv-Handbücher sind im Verzeichnis defence-manuals verfügbar.
Modul 1 Exploitation-Videos: https://www.youtube.com/playlist?list=PLcIpBb4raSZEMosUmY8KpxPWtjKRMSmNx
Weitere Details finden Sie in der PDF-Datei „AWSGoat.pdf“. Diese Datei enthält die für Präsentationen verwendete Foliensammlung.
Modul 1: