django-registration is a user registration package for Django. The django-registration package provides tools for implementing user-account registration flows in the Django web framework. In django-registration prior to 3.1.2, the base user-account registration view did not properly apply filters to sensitive data, with the result that sensitive data could be included in error reports rather than removed automatically by Django. Triggering this requires: A site is using django-registration < 3.1.2, The site has detailed error reports (such as Djangos emailed error reports to site staff/developers) enabled and a server-side error (HTTP 5xx) occurs during an attempt by a user to register an account. Under these conditions, recipients of the detailed error report will see all submitted data from the account-registration attempt, which may include the users proposed credentials (such as a password).
The product generates an error message that includes sensitive information about its environment, users, or associated data.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Django-registration | Django-registration_project | * | 3.1.2 (excluding) |
Python-django-registration | Ubuntu | bionic | * |
Python-django-registration | Ubuntu | groovy | * |
Python-django-registration | Ubuntu | hirsute | * |
Python-django-registration | Ubuntu | impish | * |
Python-django-registration | Ubuntu | kinetic | * |
Python-django-registration | Ubuntu | lunar | * |
Python-django-registration | Ubuntu | mantic | * |
Python-django-registration | Ubuntu | trusty | * |
Python-django-registration | Ubuntu | xenial | * |
The sensitive information may be valuable information on its own (such as a password), or it may be useful for launching other, more serious attacks. The error message may be created in different ways:
An attacker may use the contents of error messages to help launch another, more focused attack. For example, an attempt to exploit a path traversal weakness (CWE-22) might yield the full pathname of the installed application. In turn, this could be used to select the proper number of “..” sequences to navigate to the targeted file. An attack using SQL injection (CWE-89) might not initially succeed, but an error message could reveal the malformed query, which would expose query logic and possibly even passwords or other sensitive information used within the query.