FreeBSD : django -- multiple vulnerabilities (21c59f5e-7cc5-11e2-9c11-080027a5ec9a)
Medium Nessus Plugin ID 64873
SynopsisThe remote FreeBSD host is missing one or more security-related updates.
DescriptionThe Django Project reports :
These security releases fix four issues: one potential phishing vector, one denial-of-service vector, an information leakage issue, and a range of XML vulnerabilities.
- Host header poisoning
an attacker could cause Django to generate and display URLs that link to arbitrary domains. This could be used as part of a phishing attack.
These releases fix this problem by introducing a new setting, ALLOWED_HOSTS, which specifies a whitelist of domains your site is known to respond to.
Important: by default Django 1.3.6 and 1.4.4 set ALLOWED_HOSTS to allow all hosts. This means that to actually fix the security vulnerability you should define this setting yourself immediately after upgrading.
- Formset denial-of-service
an attacker can abuse Django's tracking of the number of forms in a formset to cause a denial-of-service attack. This has been fixed by adding a default maximum number of forms of 1,000. You can still manually specify a bigger max_num, if you wish, but 1,000 should be enough for anyone.
- XML attacks
Django's serialization framework was vulnerable to attacks via XML entity expansion and external references; this is now fixed. However, if you're parsing arbitrary XML in other parts of your application, we recommend you look into the defusedxml Python packages which remedy this anywhere you parse XML, not just via Django's serialization framework.
- Data leakage via admin history log
Django's admin interface could expose supposedly-hidden information via its history log. This has been fixed.
SolutionUpdate the affected packages.