Sie befinden sich hier:
Sicherheit: Proof Key for Code Exchange (PKCE) erforderlich
Diese Sicherheitseinstellung schreibt einen kryptografischen Handshake für alle kompatiblen OAuth 2 vor.
Steuerelementname
Externe Client-Anwendungen: Sicherheit: Proof Key for Code Exchange (PKCE) erforderlich
Empfohlene Konfiguration
Erweiterung "Proof Key for Code Exchange (PKCE)" für unterstützte Autorisierungs-Flows erforderlich.
Steuerelementübersicht
Diese Sicherheitseinstellung schreibt einen kryptografischen Handshake für alle kompatiblen OAuth 2.0-Gewährungstypen vor, bei dem der Client während der ersten Anforderung eine Abfrage mit gehashtem Code und während des Token-Austauschs eine Nur-Text-Code-Überprüfung sendet, um die Anforderung an die jeweilige Client-Instanz zu binden.
Sicherheitsrisiko, wenn nicht konfiguriert
Ohne die Erzwingung von PKCE über alle unterstützten Flows hinweg kann ein abgefangener Autorisierungscode oder eine Zwischenanmeldeinformation erfolgreich durch einen bösartigen Akteur gegen ein Zugriffstoken ausgetauscht werden, da der Autorisierungsserver keinen technischen Mechanismus zum Überprüfen der Identität des ursprünglichen Aufrufers aufweist.
Bedrohungsszenarien
Ein Angreifer erfasst einen gültigen Autorisierungscode oder abhörbare Anmeldeinformationen aus einer erfolgreichen Anmeldung – über Browserverlauf, Systemprotokolle oder benutzerdefiniertes Abfangen von URI-Schemas – und ruft programmgesteuert ein gültiges Sitzungstoken ab, bevor der legitime Client den Handshake abschließen kann.
Geschätzter CVSS-Bewertungsbereich
Hoch (7,0–8,9).
Überlegungen zu Risikoauswirkungen
Wenn PKCE nicht in allen anwendbaren Flows erzwungen wird, kann dies zu einem weit verbreiteten Sitzungs-Hijacking und nicht autorisiertem Datenzugriff führen, insbesondere bei Integrationen, bei denen ein statisches Client-Geheimnis nicht verwendet oder kompromittiert wurde.
Höheres Risiko, wenn
Das Risiko ist für öffentliche Clients wie native mobile Anwendungen und Einzelseiten-Webanwendungen höher, da diese Plattformen ein Client-Geheimnis nicht sicher speichern können und häufig in Umgebungen arbeiten, in denen eine Datenverkehrsumleitung beobachtet werden kann.
Geringes Risiko, wenn
Das Risiko ist geringer, wenn die Organisation ausschließlich vertrauliche Clients auf sicheren Backend-Servern verwendet, die bereits ein obligatorisches Client-Geheimnis erzwingen und in einem streng isolierten Netzwerkbereich arbeiten.
Überlegungen zu Unternehmen und Integration
Zum Aktivieren dieser Anforderung für alle unterstützten Flows müssen alle integrierten Client-Anwendungen die S256-Transformationsmethode unterstützen und eindeutige Zeichenfolgen mit hoher Entropie für jede Transaktion verwalten.
Empfohlene Sanierung
Wechseln Sie zu den OAuth-Einstellungen der externen Client-Anwendung und aktivieren Sie das Kontrollkästchen Proof Key for Code Exchange (PKCE) für alle unterstützten Autorisierungs-Flows erforderlich.
Anleitung zur Sicherheitsintegritätsprüfung
Die Sicherheitsintegritätsprüfung identifiziert PKCE als obligatorischen Architekturstandard für alle modernen Identitäts- und Autorisierungs-Flows, sodass jeder Token-Austausch kryptographisch an die spezifische Client-Instanz gebunden ist, um das Einschleusen und Abfangen von Anmeldeinformationen zu verhindern.

