Improper Authentication in django-mfa3
Impact
django-mfa3 is a library that implements multi factor authentication for the django web framework. It achieves this by modifying the regular login view. Django however has a second login view for its admin area. This second login view was not modified, so the multi factor authentication can be bypassed.
You are affected if you have activated both django-mfa3 (< 0.5.0) and django.contrib.admin and have not taken any other measures to prevent users from accessing the admin login view.
Patches
The issue has been fixed in django-mfa3 0.5.0.
Workarounds
It is possible to work around the issue by overwriting the admin login route, e.g. by adding the following URL definition before the admin routes:
url('admin/login/', lambda request: redirect(settings.LOGIN_URL)
References
Affected software
Click a technology to see all vulnerabilities affecting it.
| Platform | Package | Vulnerable versions | Fixed in |
|---|---|---|---|
| Python (PyPI) | django-mfa3 | < 0.5.0 | 0.5.0 |
References
- https://github.com/xi/django-mfa3/blob/main/CHANGES.md#050-2022-04-15
- https://github.com/xi/django-mfa3/commit/32f656e22df120b84bdf010e014bb19bd97971de
- https://github.com/xi/django-mfa3/security/advisories/GHSA-3r7g-wrpr-j5g4
- https://nvd.nist.gov/vuln/detail/CVE-2022-24857
- https://github.com/pypa/advisory-database/tree/main/vulns/django-mfa3/PYSEC-2022-192.yaml
- https://github.com/xi/django-mfa3
- https://security.netapp.com/advisory/ntap-20220609-0003
- CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N- Weakness (CWE)
CWE-287- Platform
- Python (PyPI)
- Package
django-mfa3- Disclosed
- 15.04.2022
- Updated
- 11.10.2026 11:20
Sources and licenses
OSV / GitHub Advisory Database - PYSEC-2022-192 - PyPA Advisory Database; CC BY 4.0
OSV / GitHub Advisory Database - GHSA-3r7g-wrpr-j5g4 - CC BY 4.0
Vulnerability history: django-mfa3
All published vulnerabilities of this package (Python (PyPI)), newest first. Shows whether this is a one-off slip or a package that needs watching.
This is the only known vulnerability of this package.
Know which vulnerabilities affect your application
With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.