medium5.3
CVE-2024-6844
Flask-CORS allows for inconsistent CORS matching
Impact
A vulnerability in corydolphin/flask-cors version 5.0.1 allows for inconsistent CORS matching due to the handling of the '+' character in URL paths. The request.path is passed through the unquote_plus function, which converts the '+' character to a space ' '. This behavior leads to incorrect path normalization, causing potential mismatches in CORS configuration. As a result, endpoints may not be matched correctly to their CORS settings, leading to unexpected CORS policy application. This can cause unauthorized cross-origin access or block valid requests, creating security vulnerabilities and usability issues.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| pip | flask-cors | <= 5.0.1 | 6.0.0 |
Affected products
| Vendor | Product | Affected versions |
|---|---|---|
| Flask-Cors Project | Flask-Cors | Version 4.0.1 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://huntr.com/bounties/731a6cd4-d05f-4fe6-8f5b-fe088d7b34e0
- https://lists.debian.org/debian-lts-announce/2025/05/msg00049.html
- https://github.com/advisories/GHSA-8vgw-p6qm-5gr7
- https://nvd.nist.gov/vuln/detail/CVE-2024-6844
- https://github.com/corydolphin/flask-cors/blob/main/flask_cors/extension.py#L193
- https://github.com/corydolphin/flask-cors/commit/35d875319621bd129a38b2b823abf4a2f6cda536