6 große AWS-IAM-Schwachstellen – und wie Sie sie vermeiden
5. November 2021
0 Min. LesezeitAnmerkung der Redaktion
Dieser Blogbeitrag erschien ursprünglich auf fugue.co. Fugue wurde 2022 Teil von Snyk und ist ein wichtiger Bestandteil von Snyk IaC.
Was ist eine Cloud-Schwachstelle? Ganz einfach ausgedrückt: eine ausnutzbare Schwachstelle in einer Cloud-Umgebung. Häufig entstehen Schwachstellen durch Fehlkonfigurationen von Cloud-Ressourcen und können zu Sicherheitsverletzungen und Sicherheitsvorfällen führen – insbesondere, wenn sie Identity and Access Management (IAM) betreffen.
IAM ist bekanntermaßen komplex, und die Folgen von Fehlern können schwerwiegend sein. Laut unserem State of Cloud Security 2021 report ist IAM die am häufigsten genannte Fehlkonfiguration in der Cloud (41 % der Befragten nannten sie). Und Verizon’s 2021 Data Breach Investigations Report zufolge waren Zugangsdaten an 61 % der untersuchten Sicherheitsverletzungen beteiligt.
In diesem Blogbeitrag stellen wir einige Schwachstellen im Zusammenhang mit AWS IAM und Tipps vor, wie Sie sie verhindern können.
Schwachstellen im Zusammenhang mit AWS-Zugangsdaten
Zugriffsschlüssel nicht rotieren
Die Schwachstelle: Nicht rotierte IAM-Zugriffsschlüssel
Warum das gefährlich ist: Zugriffsschlüssel sind langfristige Zugangsdaten, mit denen IAM-Benutzer programmgesteuert auf die CLI oder API zugreifen. Zugriffsschlüssel bestehen aus einer Zugriffsschlüssel-ID und einem geheimen Zugriffsschlüssel. Je länger Zugriffsschlüssel aktiv sind, desto mehr Gelegenheiten gibt es für Angreifer, sie zu kompromittieren. Kompromittierte Zugriffsschlüssel sind genauso gefährlich wie ein kompromittierter Benutzername und ein kompromittiertes Passwort.
So beheben Sie das Problem: CIS AWS Foundations Benchmark v1.4.0 empfiehlt, Zugriffsschlüssel alle 90 Tage oder häufiger zu rotieren. Dies ist über die AWS Management Console, CLI oder API möglich. Die allgemeinen Schritte sind:
Erstellen Sie einen neuen Zugriffsschlüssel
Aktualisieren Sie Anwendungen, damit sie den neuen Schlüssel verwenden
Deaktivieren Sie den alten Schlüssel
Löschen Sie den alten Schlüssel, nachdem Sie sichergestellt haben, dass die Anwendungen funktionieren
Hier finden Sie Schritte zur Behebung.
Passwörter wiederverwenden
Die Schwachstelle: Wiederverwendung eines bereits verwendeten Passworts
Warum das gefährlich ist: Wie bei Zugriffsschlüsseln gilt: Je länger ein Passwort aktiv ist, desto mehr Gelegenheiten gibt es, es zu kompromittieren – und die wiederholte Verwendung desselben Passworts ist keine Hilfe. Außerdem besteht die Gefahr von Credential-Stuffing-Angriffen. Dabei versucht ein Angreifer, sich mit vielen gestohlenen Benutzernamen und Passwörtern Zugang zu einem Konto zu verschaffen.
So beheben Sie das Problem: CIS AWS Foundations Benchmark v1.4.0 empfiehlt, eine Passwortrichtlinie festzulegen, in der „Passwortwiederverwendung verhindern“ aktiviert und „Anzahl der zu merkenden Passwörter“ auf 24 gesetzt ist. Hier finden Sie Schritte zur Behebung.
MFA nicht verwenden
Die Schwachstelle: MFA nicht verwenden
Warum das gefährlich ist: Multi-Faktor-Authentifizierung (MFA) bietet IAM-Benutzern eine zusätzliche Schutzebene. Ohne MFA sind für die Anmeldung bei AWS nur ein Benutzername und ein Passwort erforderlich. Ein Angreifer mit kompromittierten Zugangsdaten hat damit also alle Schlüssel in der Hand. Ist MFA für ein Konto aktiviert, muss ein Benutzer zur Anmeldung jedoch eine zusätzliche Information angeben, zum Beispiel einen Einmalcode von einem virtuellen oder physischen MFA-Gerät. Ohne diese Information ist keine Anmeldung möglich, und der Angreifer wird aufgehalten.
So beheben Sie das Problem: CIS AWS Foundations Benchmark v1.4.0 empfiehlt, MFA für alle IAM-Benutzer mit Konsolenzugriff zu aktivieren. Hier finden Sie Schritte zur Behebung.
Schwachstellen im Zusammenhang mit IAM-Richtlinien
Umfassende List-Aktionen für S3-Buckets zulassen
Die Schwachstelle: IAM-Rollenrichtlinien lassen umfassende List-Aktionen für S3-Buckets zu
Warum das gefährlich ist: Wenn eine IAM-Rolle über eine Richtlinie verfügt, die umfassende List-Aktionen für S3-Buckets zulässt, und ein Angreifer Zugriff auf die Rolle erhält, kann er alle Ihre Buckets auflisten, um herauszufinden, wo Sie Ihre Daten speichern. Da s3 sync ebenfalls List-Berechtigungen erfordert, kann der Angreifer möglicherweise sensible Daten aus Ihren Buckets stehlen. Die Aktionen s3:ListAllMyBuckets, s3:List* und s3:* sollten Sie aus IAM-Richtlinien ausschließen, sofern sie nicht unbedingt erforderlich sind. Diese Schwachstelle könnte zum Capital-One-Datendiebstahl von 2019 beigetragen haben. Weitere Informationen finden Sie unter A Technical Analysis of the Capital One Cloud Misconfiguration Breach.
So beheben Sie das Problem: Entfernen Sie die zu weit gefassten List-Berechtigungen aus der IAM-Richtlinie. Hier finden Sie Schritte zur Behebung.
Allen Principals erlauben, eine Rolle zu übernehmen
Die Schwachstelle: IAM-Rollen-Vertrauensrichtlinien erlauben allen Principals, die Rolle zu übernehmen
Warum das gefährlich ist: Wenn beliebige IAM-Benutzer aus beliebigen AWS-Konten eine Rolle in Ihrem Konto übernehmen können, erhalten sie effektiv Zugriff auf alle Berechtigungen dieser IAM-Rolle. Das kann katastrophale Folgen haben und zur Rechteausweitung, zum Abfluss von Daten und mehr führen. Stellen Sie sicher, dass Rollen-Vertrauensrichtlinien nicht alle der folgenden Elemente enthalten:
Effect: „Allow“
Principal: „*“
Action: „sts:AssumeRole“
So beheben Sie das Problem: Ersetzen Sie den Platzhalter durch einen bestimmten Principal. Hier finden Sie Schritte zur Behebung.
Uneingeschränkte Administratorrechte zulassen
Die Schwachstelle: IAM-Richtlinien gewähren uneingeschränkte Administratorrechte mit "*:*"
Warum das gefährlich ist: Eine IAM-Richtlinie, die alle möglichen Berechtigungen für alle möglichen Services zulässt, verstößt direkt gegen das Sicherheitsprinzip des Least-Privilege-Prinzips. Erlangt ein Angreifer Zugriff auf einen Benutzer oder eine Rolle mit einer solchen Richtlinie, hat er uneingeschränkten Zugriff auf alles in Ihrem AWS-Konto – dann ist alles verloren. Besser ist es, nur die erforderlichen Berechtigungen zuzuweisen und keine weiteren.
So beheben Sie das Problem: Entfernen Sie die Platzhalter aus Allow-Richtlinien, in denen Action und Resource beide auf * gesetzt sind. Hier finden Sie Schritte zur Behebung.
IAM-Tipps und Best Practices
Hier sind einige Best Practices für den Umgang mit IAM:
Befolgen Sie das Sicherheitsprinzip der geringsten Berechtigung. Gewähren Sie nur die Berechtigungen, die zur Erledigung einer Aufgabe erforderlich sind. Beginnen Sie besser mit einer Rolle mit möglichst wenigen Berechtigungen und fügen Sie bei Bedarf weitere hinzu, statt mit Administratorzugriff zu starten und Berechtigungen anschließend zu entfernen.
Achten Sie auf eine gute Passwortsicherheit. Sie können für Benutzer eine Passwortrichtlinie erstellen, die Anforderungen an neue Passwörter festlegt, etwa eine Mindestlänge (CIS empfiehlt mindestens 14 Zeichen), eine Kombination aus Buchstaben, Zahlen und Symbolen sowie das Verbot, bereits verwendete Passwörter erneut zu nutzen. Sie können auch ein Ablaufdatum festlegen, damit Benutzer ihre Passwörter regelmäßig aktualisieren müssen – beispielsweise alle 90 Tage.
Bewahren Sie Zugangsdaten sicher auf. Speichern Sie Zugriffsschlüssel oder Passwörter nicht in Code-Repositories, auch nicht in privaten – genau so wurde Uber 2016 gehackt. Geben Sie Zugangsdaten auch nicht an andere Benutzer weiter.
Überwachen Sie Ihre IAM-Konfiguration, damit Sie mitbekommen, wenn eine Richtlinie geändert oder ein Zugriffsschlüssel aktiviert oder deaktiviert wird. Schreiben Sie außerdem benutzerdefinierte Regeln, um unternehmensspezifische Anforderungen durchzusetzen. Müssen Benutzer in Ihrem Unternehmen ihr AWS-Passwort alle 45 Tage ändern? Sorgen Sie dafür, dass eine Lösung jedes AWS-Konto auf eine Passwortrichtlinie überprüft, die diese Anforderung durchsetzt.
Möchten Sie mehr erfahren? Lesen Sie unsere Reihe über die 5 häufigsten AWS-Fehlkonfigurationen.



