Pentest-Result: Revoke Tokens bei Logout

Issue #1184 resolved
Oliver Baadte created an issue

Bei einem Pentest unserer Masterportal-Intanz wurde empfohlen, die (Refresh) Tokens, die in den Cookies stehen, nicht nur zu löschen, sondern auch zu revoken. Man könnte dies ja z.B. hinter dem Logout-Button verstecken. So wie ich das verstehe, gibt es wohl einen Keycloak-Api-Endpoint hierfür.

Zitat Pentest:

Finding #X
Da es sich beim HTTP Protokoll um ein zustandsloses Protokoll handelt, werden Access Tokens als Identifikationsmerkmal
verwendet, um mehrere zusammengehörige Anfragen eines Benutzers zu erkennen und einer
Sitzung zuzuordnen.
Wie aus dem folgenden Screenshot entnommen werden kann, legt die Anwendung ’GeoService’ Access und
Refresh Tokens als Cookie ab […]
Wenn sich ein Benutzer vom GeoService abmeldet, werden zwar die Cookies im Browser entfernt, aber die
Tokens können noch bis zu ihrem Ablaufdatum verwendet werden. Sofern ein Angreifer die Refresh Tokens
abfangen oder auslesen kann, könnte er trotz einer Benutzerabmeldung unbegrenzt Aktionen in dessen Namen
ausführen.

Comments (4)

  1. Michel René Ptak

    Guten Tag Herr Baadte, vielen Dank für das Issue. Ich habe die gewünschten Änderungen implementiert. Nach Konfiguration des Revocation Endpoints in der config.js werden die Tokens nun nach einem Logout revoked.

    Die Änderungen werden im nächsten Release des Masterportals (Anfang Juli), sowie auch in der 3.0 Beta Version enthalten sein.

    Sollten Sie weitere Anmerkungen haben, öffnen Sie dieses Ticket gerne wieder.

  2. Log in to comment