CVE-2021-21241
published 2021-01-11CVE-2021-21241: The Python "Flask-Security-Too" package is used for adding security features to your Flask application. It is an is a independently maintained version of…
PriorityP339high7.4CVSS 3.1
AVNACLPRNUIRSCCHINAN
EPSS
0.92%
55.7th percentile
The Python "Flask-Security-Too" package is used for adding security features to your Flask application. It is an is a independently maintained version of Flask-Security based on the 3.0.0 version of Flask-Security. In Flask-Security-Too from version 3.3.0 and before version 3.4.5, the /login and /change endpoints can return the authenticated user's authentication token in response to a GET request. Since GET requests aren't protected with a CSRF token, this could lead to a malicious 3rd party site acquiring the authentication token. Version 3.4.5 and version 4.0.0 are patched. As a workaround, if you aren't using authentication tokens - you can set the SECURITY_TOKEN_MAX_AGE to "0" (seconds) which should make the token unusable.
Affected
4 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| debian | flask-security | < flask-security 4.0.0-1 (bookworm) | flask-security 4.0.0-1 (bookworm) |
| flask-middleware | flask-security-too | — | — |
| flask-security-too_project | flask-security-too | >= 3.3.0 < 3.4.5 | 3.4.5 |
| flask-security-too_project | flask-security-too | >= 3.3.0 < 3.4.5 | 3.4.5 |
CVSS provenance
nvdv3.17.4HIGHCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N
nvdv2.04.3MEDIUMAV:N/AC:M/Au:N/C:P/I:N/A:N
osv7.4HIGH
vendor_debian7.4HIGH
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
OSV
CSRF can expose users authentication token
osv·2021-01-11
CVE-2021-21241 [HIGH] CSRF can expose users authentication token
CSRF can expose users authentication token
### Issue
The /login and /change endpoints can return the authenticated user's authentication token in response to a GET request. Since GET requests aren't protected with a CSRF token, this could lead to a malicious 3rd party site acquiring the authentication token.
### Patches
Version 3.4.5 and soon to be released 4.0.0 are patched.
### Workarounds
If you aren't using authentication tokens - you can set the SECURITY_TOKEN_MAX_AGE to "0" (seconds) which should make the token unusable.
### References
None
GHSA
CSRF can expose users authentication token
ghsa·2021-01-11
CVE-2021-21241 [HIGH] CWE-352 CSRF can expose users authentication token
CSRF can expose users authentication token
### Issue
The /login and /change endpoints can return the authenticated user's authentication token in response to a GET request. Since GET requests aren't protected with a CSRF token, this could lead to a malicious 3rd party site acquiring the authentication token.
### Patches
Version 3.4.5 and soon to be released 4.0.0 are patched.
### Workarounds
If you aren't using authentication tokens - you can set the SECURITY_TOKEN_MAX_AGE to "0" (seconds) which should make the token unusable.
### References
None
OSV
CVE-2021-21241: The Python "Flask-Security-Too" package is used for adding security features to your Flask application
osv·2021-01-11·CVSS 7.4
CVE-2021-21241 [HIGH] CVE-2021-21241: The Python "Flask-Security-Too" package is used for adding security features to your Flask application
The Python "Flask-Security-Too" package is used for adding security features to your Flask application. It is an is a independently maintained version of Flask-Security based on the 3.0.0 version of Flask-Security. In Flask-Security-Too from version 3.3.0 and before version 3.4.5, the /login and /change endpoints can return the authenticated user's authentication token in response to a GET request. Since GET requests aren't protected with a CSRF token, this could lead to a malicious 3rd party site acquiring the authentication token. Version 3.4.5 and version 4.0.0 are patched. As a workaround, if you aren't using authentication tokens - you can set the SECURITY_TOKEN_MAX_AGE to "0" (seconds) which should make the token unusable.
Debian
CVE-2021-21241: flask-security - The Python "Flask-Security-Too" package is used for adding security features to ...
vendor_debian·2021·CVSS 7.4
CVE-2021-21241 [HIGH] CVE-2021-21241: flask-security - The Python "Flask-Security-Too" package is used for adding security features to ...
The Python "Flask-Security-Too" package is used for adding security features to your Flask application. It is an is a independently maintained version of Flask-Security based on the 3.0.0 version of Flask-Security. In Flask-Security-Too from version 3.3.0 and before version 3.4.5, the /login and /change endpoints can return the authenticated user's authentication token in response to a GET request. Since GET requests aren't protected with a CSRF token, this could lead to a malicious 3rd party site acquiring the authentication token. Version 3.4.5 and version 4.0.0 are patched. As a workaround, if you aren't using authentication tokens - you can set the SECURITY_TOKEN_MAX_AGE to "0" (seconds) which should make the token unusable.
Scope: local
bookworm: resolved (fixed in 4.0.0-1)
bullseye:
No detection rules found.
No public exploits indexed.
No writeups or analysis indexed.
https://github.com/Flask-Middleware/flask-security/commit/61d313150b5f620d0b800896c4f2199005e84b1fhttps://github.com/Flask-Middleware/flask-security/commit/6d50ee9169acf813257c37b75babe9c28e83542ahttps://github.com/Flask-Middleware/flask-security/pull/422https://github.com/Flask-Middleware/flask-security/releases/tag/3.4.5https://github.com/Flask-Middleware/flask-security/security/advisories/GHSA-hh7m-rx4f-4vpvhttps://pypi.org/project/Flask-Security-Toohttps://github.com/Flask-Middleware/flask-security/commit/61d313150b5f620d0b800896c4f2199005e84b1fhttps://github.com/Flask-Middleware/flask-security/commit/6d50ee9169acf813257c37b75babe9c28e83542ahttps://github.com/Flask-Middleware/flask-security/pull/422https://github.com/Flask-Middleware/flask-security/releases/tag/3.4.5https://github.com/Flask-Middleware/flask-security/security/advisories/GHSA-hh7m-rx4f-4vpvhttps://pypi.org/project/Flask-Security-Too
2021-01-11
Published