pathbreak-audit: Finden Sie die ausnutzbaren IAM-Berechtigungen in Ihrem AWS-Konto
Wichtigste Erkenntnisse
- pathbreak-audit ist ein kostenloses Open-Source-Kommandozeilentool für Verteidiger. Richten Sie es auf ein AWS-Konto, und es listet die IAM-Rollen und Benutzer auf, die missbrauchbare Berechtigungen und toxische Kombinationen besitzen, jeweils mit dem passenden Fix.
- Es arbeitet read-only und läuft lokal. Es liest IAM und sonst nichts, und Ihre Zugangsdaten und Findings verlassen niemals Ihren Rechner.
- Die Prüfungen stammen aus demselben Katalog wie die AWS Privilege Escalation Map.
- Installieren Sie es mit
pip install pathbreak-audit, oder probieren Siepathbreak-audit --demoganz ohne AWS-Konto aus. - Es ist eine zeitpunktbezogene Prüfung eines einzelnen Kontos. Welche Pfade sich bestätigen, Ihre Daten erreichen und sich nach dem Blast Radius ordnen lassen, das ergänzt Pathbreak.
Die AWS Privilege Escalation Map ist ein Nachschlagewerk: jede AWS-Berechtigung, die ein Angreifer nutzen kann, um sich in Richtung Administratorzugriff, Daten oder Persistenz zu bewegen, und die Änderung, die jeden Pfad unterbricht. Die Map zeigt, was in AWS allgemein schiefgehen kann. pathbreak-audit zeigt, welche dieser Berechtigungen gerade jetzt in Ihrem eigenen Konto liegen.
Was es tut
pathbreak-audit liest die an jede Rolle und jeden Benutzer angehängten Policies, also Managed, Inline und die von Gruppen geerbten, ermittelt die Aktionen, die jeder Principal ausführen darf, und gleicht sie mit dem Katalog gefährlicher Berechtigungen und Kombinationen ab. Für jeden Principal gibt pathbreak-audit aus, was dieser besitzt, und die Least-Privilege-Änderung, die es entfernt, samt Link zur ausführlichen Beschreibung auf der Map.
Findings gibt es in zwei Arten. Eine direkt missbrauchbare Berechtigung ist eine einzelne Aktion, mit der ein Principal eskalieren, sich festsetzen oder die Protokollierung manipulieren kann, zum Beispiel iam:CreateAccessKey für einen anderen Benutzer. Eine toxische Kombination ist eine Reihe von Berechtigungen, die nur zusammen gefährlich sind, etwa iam:PassRole mit lambda:CreateFunction, was eine Prüfung Policy für Policy oft übersieht.
Warum die Standardansicht kurz ist
Ein Tool, das jeden weit gefassten Lesezugriff und jede Berechtigung meldet, erzeugt genau die Alarmmüdigkeit, die es beheben soll. Deshalb zeigt die Standardansicht die Berechtigungen, die unabhängig vom Ziel missbrauchbar sind: Rechteausweitung, Persistenz, Manipulation der Protokollierung und Zerstörung. Weit gefasste Lesezugriffe auf Daten und Geheimnisse, Lambda-Aufrufe, die Rollenübernahme und Sitzungszugriffe sind nur dann relevant, wenn die Ressource, die sie erreichen, privilegiert ist, was eine statische Prüfung eines einzelnen Kontos nicht wissen kann, daher werden sie zurückgehalten, sofern Sie sie nicht mit --include-access anfordern. Vollständige Administratoren und AWS-Standardrollen werden standardmäßig ebenfalls ausgeklammert, damit die Liste kurz und lesenswert bleibt.
Ausprobieren
Sie können die Ausgabe ganz ohne AWS-Konto sehen:
pip install pathbreak-auditpathbreak-audit --demo
Um es gegen Ihr eigenes Konto auszuführen, verwenden Sie beliebige Zugangsdaten mit Lesezugriff auf IAM. Die AWS Managed Policies SecurityAudit oder ViewOnlyAccess decken es beide ab:
pathbreak-audit --profile my-profile
Alle Optionen, eine Beispielausgabe und der Quellcode finden sich auf GitHub.
Was es nicht tut
Es ist eine zeitpunktbezogene Prüfung eines einzelnen Kontos. Es liest, was Policies erlauben, daher kann auch eine eng gefasste Berechtigung auftauchen, und es sagt Ihnen, dass eine Berechtigung missbraucht werden könnte, nicht, dass sie sich bis zu etwas Sensiblem verkettet. Es durchläuft nicht den Graphen über Konten hinweg, es bestätigt nicht, dass sich ein Pfad gegen Ihre reale Autorisierung auflöst, und es überwacht keine Drift. Diese Grenze ziehen wir bewusst.
pathbreak-audit zeigt die Berechtigungen, die missbraucht werden könnten, Principal für Principal. Pathbreak zeigt, welche davon sich zu einem validierten Pfad verketten, der Ihre sensiblen Daten erreicht, ordnet sie über alle Konten hinweg nach dem Blast Radius und gibt Ihnen die eine Änderung an die Hand, die die meisten Pfade unterbricht, und das kontinuierlich. Wenn das Tool nützlich ist, ist das der nächste Schritt.
Häufig gestellte Fragen
Ist pathbreak-audit wirklich kostenlos?
Ja. Es ist Open Source unter der MIT-Lizenz und kostenlos nutzbar. Der Quellcode liegt auf GitHub und ist auf PyPI veröffentlicht. Es wird von Pathbreak veröffentlicht.
Benötigt es Schreibzugriff auf mein AWS-Konto?
Nein. Es führt nur Leseaufrufe an die IAM- und STS-APIs aus. Die AWS Managed Policies SecurityAudit oder ViewOnlyAccess genügen, um es auszuführen. Die vollständige Pathbreak-Plattform verbindet sich auf dieselbe Weise, über eine schreibgeschützte Rolle.
Sendet pathbreak-audit meine Daten irgendwohin?
Nein. Alles läuft lokal. Es schreibt nichts in Ihr Konto und sendet nichts nach außen. Es gibt keine Telemetrie. Pathbreak sieht die Ausgabe nie, es sei denn, Sie entscheiden sich, sie zu teilen.
Wie unterscheidet sich pathbreak-audit von Pathbreak?
pathbreak-audit ist eine statische Liste der Berechtigungen eines einzelnen Kontos, die missbraucht werden könnten. Pathbreak validiert, welche davon sich zu einem echten Pfad zu Ihren sensiblen Daten verketten, ordnet sie über alle Konten hinweg nach dem Blast Radius und gibt Ihnen die eine Änderung, die die meisten unterbricht, und das kontinuierlich.
Führen Sie pathbreak-audit auf Ihrem Konto aus und sehen Sie dann die Pfade, die sich bestätigen und Ihre Daten erreichen.
pathbreak-audit holen Demo anfragen