#VU50814 Input validation error in Django


Published: 2021-02-19

Vulnerability identifier: #VU50814

Vulnerability risk: Medium

CVSSv3.1: 4.6 [CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N/E:U/RL:O/RC:C]

CVE-ID: CVE-2021-23336

CWE-ID: CWE-20

Exploitation vector: Network

Exploit availability: No

Vulnerable software:
Django
Web applications / CMS

Vendor: Django Software Foundation

Description

The vulnerability allows a remote attacker to perform web cache spoofing attack.

The vulnerability exists due to insufficient validation of user-supplied input in django.utils.http.limited_parse_qsl() when parsing strings with a semicolon (";"). A remote attacker can pass specially crafted data to the application and perform a spoofing attack.

Mitigation
Install updates from vendor's website.

Vulnerable software versions

Django: 3.0 - 3.1.6, 2.2 - 2.2.18


External links
http://github.com/python/cpython/pull/24297
http://snyk.io/blog/cache-poisoning-in-popular-open-source-packages/
http://snyk.io/vuln/SNYK-UPSTREAM-PYTHONCPYTHON-1074933
http://www.djangoproject.com/weblog/2021/feb/19/security-releases/


Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.


Latest bulletins with this vulnerability