USN-1757-1: Django vulnerabilities

Publication date

7 March 2013

Overview

Several security issues were fixed in Django.


Packages

Details

James Kettle discovered that Django did not properly filter the Host HTTP
header when processing certain requests. An attacker could exploit this to
generate and display arbitrary URLs to users. Although this issue had been
previously addressed in USN-1632-1, this update adds additional hardening
measures to host header validation. This update also adds a new
ALLOWED_HOSTS setting that can be set to a list of acceptable values for
headers. (CVE-2012-4520)

Orange Tsai discovered that Django incorrectly performed permission checks
when displaying the history view in the admin interface. An administrator
could use this flaw to view the history of any object, regardless of
intended permissions. (CVE-2013-0305)

It was discovered that Django incorrectly handled a large number of forms
when generating formsets. An attacker could use this flaw to cause...

James Kettle discovered that Django did not properly filter the Host HTTP
header when processing certain requests. An attacker could exploit this to
generate and display arbitrary URLs to users. Although this issue had been
previously addressed in USN-1632-1, this update adds additional hardening
measures to host header validation. This update also adds a new
ALLOWED_HOSTS setting that can be set to a list of acceptable values for
headers. (CVE-2012-4520)

Orange Tsai discovered that Django incorrectly performed permission checks
when displaying the history view in the admin interface. An administrator
could use this flaw to view the history of any object, regardless of
intended permissions. (CVE-2013-0305)

It was discovered that Django incorrectly handled a large number of forms
when generating formsets. An attacker could use this flaw to cause Django
to consume memory, resulting in a denial of service. (CVE-2013-0306)

It was discovered that Django incorrectly deserialized XML. An attacker
could use this flaw to perform entity-expansion and external-entity/DTD
attacks. This updated modified Django behaviour to no longer allow DTDs,
perform entity expansion, or fetch external entities/DTDs. (CVE-2013-1664,
CVE-2013-1665)


Update instructions

In general, a standard system update will make all the necessary changes.

Learn more about how to get the fixes.

The problem can be corrected by updating your system to the following package versions:

Ubuntu Release Package Version
12.10 quantal python-django –  1.4.1-2ubuntu0.3
12.04 precise python-django –  1.3.1-4ubuntu1.6
11.10 oneiric python-django –  1.3-2ubuntu1.6
10.04 lucid python-django –  1.1.1-2ubuntu1.8

Reduce your security exposure

Ubuntu Pro provides ten-year security coverage to 25,000+ packages in Main and Universe repositories, and it is free for up to five machines.


Have additional questions?

Talk to a member of the team ›