Django 4.0.1 release notes#
January 4, 2022
Django 4.0.1 fixes one security issue with severity “medium”, two security issues with severity “low”, and several bugs in 4.0.
CVE-2021-45115: Denial-of-service possibility in UserAttributeSimilarityValidator#
UserAttributeSimilarityValidator incurred significant overhead
evaluating submitted password that were artificially large in relative to the
comparison values. On the assumption that access to user registration was
unrestricted this provided a potential vector for a denial-of-service attack.
In order to mitigate this issue, relatively long values are now ignored by
UserAttributeSimilarityValidator.
This issue has severity “medium” according to the Django security policy.
CVE-2021-45116: Potential information disclosure in dictsort template filter#
Due to leveraging the Django Template Language’s variable resolution logic, the
dictsort template filter was potentially vulnerable to information
disclosure or unintended method calls, if passed a suitably crafted key.
In order to avoid this possibility, dictsort now works with a restricted
resolution logic, that will not call methods, nor allow indexing on
dictionaries.
As a reminder, all untrusted user input should be validated before use.
This issue has severity “low” according to the Django security policy.
CVE-2021-45452: Potential directory-traversal via Storage.save()#
Storage.save() allowed directory-traversal if directly passed suitably
crafted file names.
This issue has severity “low” according to the Django security policy.
Bugfixes#
Fixed a regression in Django 4.0 that caused a crash of
assertFormsetError()on a formset namedform(#33346).Fixed a bug in Django 4.0 that caused a crash on booleans with the
RedisCachebackend (#33361).Relaxed the check added in Django 4.0 to reallow use of a duck-typed
HttpRequestindjango.views.decorators.cache.cache_control()andnever_cache()decorators (#33350).Fixed a regression in Django 4.0 that caused creating bogus migrations for models that reference swappable models such as
auth.User(#33366).Fixed a long standing bug in Geometry Collections and
Polygonthat caused a crash on some platforms (reported on macOS based on theARM64architecture) (#32600).