Django 1.4.6 release notes#
August 13, 2013
Django 1.4.6 fixes one security issue present in previous Django releases in the 1.4 series, as well as one other bug.
This is the sixth bugfix/security release in the Django 1.4 series.
Mitigated possible XSS attack via user-supplied redirect URLs#
Django relies on user input in some cases (e.g.
django.contrib.auth.views.login(), django.contrib.comments, and
i18n) to redirect the user to an “on success” URL.
The security checks for these redirects (namely
django.utils.http.is_safe_url()) didn’t check if the scheme is http(s)
and as such allowed javascript:... URLs to be entered. If a developer
relied on is_safe_url() to provide safe redirect targets and put such a
URL into a link, they could suffer from a XSS attack. This bug doesn’t affect
Django currently, since we only put this URL into the Location response
header and browsers seem to ignore JavaScript there.
Bugfixes#
Fixed an obscure bug with the
override_settings()decorator. If you hit anAttributeError: 'Settings' object has no attribute '_original_allowed_hosts'exception, it’s probably fixed (#20636).