CVE-2023-30861
Flask anfällig für mögliche Offenlegung des permanenten Session-Cookies aufgrund des fehlenden Vary: Cookie-Headers
- Veröffentlicht
- 02.05.2023
- Aktualisiert
- 13.02.2025
- CNA zuweisen
- GitHub_M
- Beweise beobachtet
- 08.08.2026
Primäres CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:NNiedrig · nächste 30 Tage
- Perzentil
- 67,8 %
- Modelldatum
- 21.09.2026
EPSS ist eine statistische Schätzung, keine Gewissheit oder ein Maß für die Auswirkung. Kombinieren Sie es mit CVSS, KEV-Status, Belichtung und Ihrer Umgebung.
Zusammenfassung
Flask ist ein leichtgewichtiges WSGI-Webanwendungs-Framework. Wenn alle folgenden Bedingungen erfüllt sind, kann eine Antwort, die Daten für einen bestimmten Client enthält, zwischengespeichert und anschließend vom Proxy an andere Clients gesendet werden. Wenn der Proxy auch `Set-Cookie`-Header zwischenspeichert, kann er ein `session`-Cookie eines Clients an andere Clients senden. Der Schweregrad hängt von der Verwendung der Session durch die Anwendung und dem Verhalten des Proxys in Bezug auf Cookies ab. Das Risiko hängt davon ab, dass alle diese Bedingungen erfüllt sind. 1. Die Anwendung muss hinter einem Caching-Proxy gehostet werden, der Cookies nicht entfernt oder Antworten mit Cookies ignoriert. 2. Die Anwendung setzt `session.permanent = True` 3. Die Anwendung greift während einer Anfrage an keiner Stelle auf die Session zu oder ändert sie. 4. `SESSION_REFRESH_EACH_REQUEST` ist aktiviert (Standard). 5. Die Anwendung setzt keinen `Cache-Control`-Header, um anzugeben, dass eine Seite privat ist oder nicht zwischengespeichert werden soll. Dies geschieht, weil anfällige Versionen von Flask den `Vary: Cookie`-Header nur setzen, wenn auf die Session zugegriffen wird oder sie geändert wird, nicht wenn sie aktualisiert (erneut gesendet, um den Ablauf zu verlängern) wird, ohne dass auf sie zugegriffen wird oder sie geändert wird. Dieses Problem wurde in den Versionen 2.3.2 und 2.2.5 behoben.
Quellen
1Docker-basiertes PoC für Flask CVE-2023-30861, das die Sitzungsverwaltungs-Schwachstelle zwischen Flask und Reverse-Proxy-Cache-Servern für Sicherheitsforschung und -tests demonstriert.
Verantwortungsvoller Umgang
Verwenden Sie Schwachstelleninformationen nur auf Systemen, die Sie besitzen oder zu deren Testen Sie berechtigt sind. Kitploit verlinkt auf öffentliche Forschungsmetadaten und speichert keinen Exploit-Code oder bösartige Payloads.