Skip to content

Open redirect vulnerability in Flask-Security-Too

Moderate severity GitHub Reviewed Published Dec 27, 2023 to the GitHub Advisory Database • Updated Jan 19, 2024

Package

pip Flask-Security-Too (pip)

Affected versions

< 5.3.3

Patched versions

5.3.3
pip flask-security-too (pip)
>= 0, < 5.3.3
5.3.3

Description

An open redirect vulnerability in the python package Flask-Security-Too <=5.3.2 allows attackers to redirect unsuspecting users to malicious sites via a crafted URL by abusing the ?next parameter on the /login and /register routes.

Flask-Security-Too contains logic to validate that the URL specified within the next parameter is either relative or has the same network location as the requesting URL in an attempt to prevent open redirections. Previously known examples that bypassed the validation logic such as https://example/login?next=\\\\\\github.com were patched in version 4.1.0

However, examples such as https://example/login?next=/\\github.com and https://example/login?next=\\/github.com were discovered due to how web browsers normalize slashes in URLs, which makes the package vulnerable through version <=5.3.2

Additionally, with Werkzeug >=2.1.0 the autocorrect_location_header configuration was changed to False - which means that location headers in redirects are relative by default. Thus, this issue may impact applications that were previously not impacted, if they are using Werkzeug >=2.1.0 as the WSGI layer.

References

Published by the National Vulnerability Database Dec 26, 2023
Published to the GitHub Advisory Database Dec 27, 2023
Reviewed Jan 8, 2024
Last updated Jan 19, 2024

Severity

Moderate
6.1
/ 10

CVSS base metrics

Attack vector
Network
Attack complexity
Low
Privileges required
None
User interaction
Required
Scope
Changed
Confidentiality
Low
Integrity
Low
Availability
None
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N

Weaknesses

CVE ID

CVE-2023-49438

GHSA ID

GHSA-672h-6x89-76m5

Source code

No known source code

Credits

Checking history
See something to contribute? Suggest improvements for this vulnerability.