KMS-Decrypt per Schlüsselrichtlinie selbst gewähren
Kann die Richtlinie eines KMS-Schlüssels umschreiben, um sich selbst Decrypt zu gewähren, und dann damit entschlüsseln.
Ermöglicht Eskalation für sich allein.
kms:PutKeyPolicyFür sich allein kann kms:PutKeyPolicy die Richtlinie eines KMS-Schlüssels umschreiben, um sich selbst Decrypt zu gewähren, und dann damit entschlüsseln. Bei einem weiten Ressourcenbereich erreicht dies allein Zugriff für einen externen oder öffentlichen Principal.
Warum es gefährlich ist
Ein Principal kann kms:PutKeyPolicy auf dem Schlüssel aufrufen, um eine Schlüsselrichtlinien-Anweisung anzuhängen, die sich selbst kms:Decrypt gewährt, und dann den Chiffretext entschlüsseln, den der Schlüssel schützt. Der Schlüssel ist ein Gatekeeper: Decrypt-Zugriff entsperrt jedes Secret, Volume, jeden Snapshot und jedes Objekt, das der Schlüssel absichert, sodass das Umschreiben der schlüsseleigenen Richtlinie sich zur Kontrolle über alle Daten verstärkt, die er schützt.
In MITRE ATT&CK entspricht dies T1098, Account Manipulation, unter der Taktik Privilege Escalation. AWS protokolliert dies in CloudTrail als PutKeyPolicy, CreateGrant. Der Aufruf erscheint in CloudTrail, geht aber in der normalen Administration unter, daher braucht es eine Regel, damit er auffällt.
Erkennung
PutKeyPolicyCreateGrantVoraussetzungen
kms:PutKeyPolicy für den kundenverwalteten Schlüssel (oder kms:CreateGrant). Der Missbrauch setzt voraus, dass kein SCP-/Boundary-/PrincipalOrgID-Schutzmechanismus die Übergewährung blockiert; Besitz von (oder Zugriff auf) den Chiffretext ist nötig, um die freigeschaltete Entschlüsselung zu nutzen.
MITRE ATT&CK
T1098 · Account ManipulationTaktik
Privilege Escalation
Eine Maßnahme, die ihn beseitigen würde: kms:PutKeyPolicy und kms:CreateGrant auf Schlüssel-Admins beschränken; den Selbstverwaltungsschutz der Standard-Schlüsselrichtlinie beibehalten; Schreibzugriffe auf die Schlüsselrichtlinie per SCP verweigern.
Ob sie angewendet werden sollte, hängt davon ab, wie die Berechtigung in Ihrer Umgebung verwendet wird, daher ist es eine geschäftliche Entscheidung und keine automatische Behebung. Dieselbe Berechtigung kann in einem Konto tragend und in einem anderen reines Risiko sein.
Pathbreak bestätigt, ob dieser Pfad in Ihrem Konto auflösbar ist, stuft ihn gegenüber den anderen danach ein, wie viel er eröffnet, und nutzt Ihr Bedrohungsmodell und Ihren Geschäftskontext, um zu zeigen, welche Pfade es wert sind, unterbrochen zu werden.
Fragen
Was erlaubt kms:PutKeyPolicy?
Kann die Richtlinie eines KMS-Schlüssels umschreiben, um sich selbst Decrypt zu gewähren, und dann damit entschlüsseln.
Kann kms:PutKeyPolicy allein Privilegien eskalieren?
Ja. Auf einer ausreichend breiten Ressource gehalten, erreicht sie ohne weitere Berechtigung Zugriff für einen externen oder öffentlichen Principal.
Wie wird das Selbst-Gewähren von KMS-Decrypt über eine Schlüsselrichtlinie erkannt?
Achten Sie in CloudTrail auf PutKeyPolicy, CreateGrant. Der Aufruf erscheint in CloudTrail, geht aber in der normalen Administration unter, daher braucht es eine Regel, damit er auffällt.
Wie unterbricht man diesen Pfad?
Eine Maßnahme, die ihn beseitigen würde, ist: Beschränken Sie kms:PutKeyPolicy und kms:CreateGrant auf Schlüssel-Administratoren; behalten Sie den Selbstverwaltungsschutz der Standard-Schlüsselrichtlinie bei; verweigern Sie Schreibzugriffe auf die Schlüsselrichtlinie via SCP. Ob sie angewendet werden sollte, hängt davon ab, wie die Berechtigung in Ihrem Konto verwendet wird, es ist also eine geschäftliche Entscheidung und keine automatische Behebung.
Welche MITRE ATT&CK Technik ist das?
T1098, Account Manipulation, unter der Taktik Privilege Escalation.
Verwandte Pfade
Referenzen
Finden Sie dies in Ihrem eigenen Konto
Wir führen einen schreibgeschützten Scan eines AWS-Kontos durch und zeigen Ihnen, welche dieser Pfade existieren, nach Blast-Radius priorisiert, mit der Änderung, die jeden einzelnen unterbricht. Erste validierte Pfade innerhalb der Stunde.