PyPI: django-mfa3
CVE-2022-24857
Safety vulnerability ID: SFTY-20220415-37162
Safety legacy ID: pyup.io-48171
Django-mfa3 0.5.0 includes a fix for CVE-2022-24857: 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. Users are affected if they 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. 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). https://github.com/xi/django-mfa3/security/advisories/GHSA-3r7g-wrpr-j5g4
Overview
Improper Authentication in django-mfa3
Advisory
Django-mfa3 0.5.0 includes a fix for CVE-2022-24857: 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. Users are affected if they 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. 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). https://github.com/xi/django-mfa3/security/advisories/GHSA-3r7g-wrpr-j5g4
How to Fix
Mitigation and Workarounds
---
Vulnerable Functions
Functions linked to known vulnerabilities.
References
- https://getsafety.com/vulnerabilities/SFTY-20220415-37162/CVE-2022-24857
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-24857
- 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://security.netapp.com/advisory/ntap-20220609-0003/
- https://github.com/xi/django-mfa3/security/advisories/GHSA-3r7g-wrpr-j5g4
- https://nvd.nist.gov/vuln/detail/CVE-2022-24857
- https://github.com/xi/django-mfa3/commit/32f656e22df120b84bdf010e014bb19bd97971de
- https://github.com/xi/django-mfa3/blob/main/CHANGES.md#050-2022-04-15
- https://github.com/pypa/advisory-database/tree/main/vulns/django-mfa3/PYSEC-2022-192.yaml
- https://security.netapp.com/advisory/ntap-20220609-0003
- https://github.com/advisories/GHSA-3r7g-wrpr-j5g4
Verified by Safety
Our Cybersecurity Intelligence Team reviewed this vulnerability. We combine public data with our own research to find issues not yet reported to public sources.
Learn more
