Web Cache Poisoning

Summary

CVECVE-2021-23336
StatePUBLISHED
Assignersnyk
Source PriorityCVE Program / NVD first with legacy fallback
Published2021-02-15 13:15:12 UTC
Updated2026-10-14 12:17:09 UTC
DescriptionThe package python/cpython from 0 and before 3.6.13, from 3.7.0 and before 3.7.10, from 3.8.0 and before 3.8.8, from 3.9.0 and before 3.9.2 are vulnerable to Web Cache Poisoning via urllib.parse.parse_qsl and urllib.parse.parse_qs by using a vector called parameter cloaking. When the attacker can separate query parameters using a semicolon (;), they can cause a difference in the interpretation of the request between the proxy (running with default configuration) and the server. This can result in malicious requests being cached as completely safe ones, as the proxy would usually not see the semicolon as a separator, and therefore would not include it in a cache key of an unkeyed parameter.

Risk And Classification

Primary CVSS: v3.1 5.9 MEDIUM from [email protected]

CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:H

Problem Types: CWE-444 | Web Cache Poisoning | CWE-444 CWE-444 Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling')


VersionSourceTypeScoreSeverityVector
3.1[email protected]Primary5.9MEDIUMCVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:H
3.1[email protected]Secondary5.9MEDIUMCVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:H
3.1CNADECLARED5.9MEDIUMCVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:H/E:P/RL:U/RC:C
2.0[email protected]Primary4AV:N/AC:H/Au:N/C:N/I:P/A:P

CVSS v3.1 Breakdown

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
None
Integrity
Low
Availability
High

CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:H

CVSS v2.0 Breakdown

Access Vector
Network
Access Complexity
High
Authentication
None
Confidentiality
None
Integrity
Partial
Availability
Partial

AV:N/AC:H/Au:N/C:N/I:P/A:P

NVD Known Affected Configurations (CPE 2.3)

TypeVendorProductVersionUpdateEditionLanguage
Application Python Python All All All All

Vendor Declared Affected Products

SourceVendorProductVersionPlatforms
CNA Na Python/cpython affected unspecified custom Not specified
CNA Na Python/cpython affected unspecified 3.6.13 custom Not specified
CNA Na Python/cpython affected 3.7.0 unspecified custom Not specified
CNA Na Python/cpython affected unspecified 3.7.10 custom Not specified
CNA Na Python/cpython affected 3.8.0 unspecified custom Not specified
CNA Na Python/cpython affected unspecified 3.8.8 custom Not specified
CNA Na Python/cpython affected 3.9.0 unspecified custom Not specified
CNA Na Python/cpython affected unspecified 3.9.2 custom Not specified
ADP Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP affected V3.1.0 V3.1.5 custom Not specified
ADP Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP affected V3.1.0 V3.1.5 custom Not specified
ADP Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP affected V3.1.0 V3.1.5 custom Not specified
ADP Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP affected V3.1.0 V3.1.5 custom Not specified
ADP Siemens SIPLUS S7-1500 CPU 1518-4 PN/DP MFP affected V3.1.0 V3.1.5 custom Not specified

References

ReferenceSourceLinkTags
[SECURITY] Fedora 32 Update: python-django-3.0.13-1.fc32 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
cert-portal.siemens.com/productcert/html/ssa-398330.html 0b142b55-0307-4c5a-b3c9-f314f3fb7c5e cert-portal.siemens.com
CVE-2021-23336 Python Vulnerability in NetApp Products | NetApp Product Security af854a3a-2127-422b-91ae-364da2661108 security.netapp.com Third Party Advisory
lists.apache.org/thread.html/ra8ce70088ba291f358e077cafdb14d174b7a1ce9a9d86d1b... af854a3a-2127-422b-91ae-364da2661108 lists.apache.org
Cache poisoning in popular open source packages | Snyk Blog af854a3a-2127-422b-91ae-364da2661108 snyk.io Technical Description, Third Party Advisory
Oracle Critical Patch Update Advisory - October 2021 af854a3a-2127-422b-91ae-364da2661108 www.oracle.com Patch, Third Party Advisory
[SECURITY] Fedora 34 Update: mingw-python3-3.9.2-2.fc34 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
[SECURITY] Fedora 33 Update: python3.7-3.7.10-1.fc33 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
[SECURITY] Fedora 32 Update: mingw-python3-3.8.8-1.fc32 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
Oracle Critical Patch Update Advisory - July 2021 af854a3a-2127-422b-91ae-364da2661108 www.oracle.com Patch, Third Party Advisory
[SECURITY] Fedora 32 Update: python36-3.6.13-1.fc32 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
oss-security - Django security releases: CVE-2021-23336: Web cache poisoning via ``django.utils.http.limited_parse_qsl()`` af854a3a-2127-422b-91ae-364da2661108 www.openwall.com Mailing List, Patch, Third Party Advisory
[SECURITY] Fedora 33 Update: python-django-3.0.13-1.fc33 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
[SECURITY] Fedora 33 Update: python3.9-3.9.2-1.fc33 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
bpo-42967: only use '&' as a query string separator by AdamGold · Pull Request #24297 · python/cpython · GitHub af854a3a-2127-422b-91ae-364da2661108 github.com Patch, Third Party Advisory
[SECURITY] Fedora 34 Update: python3.10-3.10.0~a6-1.fc34 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
oss-security - CVE-2021-28359: Apache Airflow Reflected XSS via Origin Query Argument in URL af854a3a-2127-422b-91ae-364da2661108 www.openwall.com Mailing List, Third Party Advisory
[SECURITY] [DLA 2569-1] python-django security update af854a3a-2127-422b-91ae-364da2661108 lists.debian.org Mailing List, Third Party Advisory
[SECURITY] Fedora 34 Update: python-django-3.1.7-1.fc34 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
[SECURITY] Fedora 33 Update: python3.6-3.6.13-1.fc33 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
[SECURITY] Fedora 33 Update: python3.10-3.10.0~a6-1.fc33 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
[SECURITY] Fedora 32 Update: python3-3.8.9-1.fc32 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
Oracle Critical Patch Update Advisory - January 2022 af854a3a-2127-422b-91ae-364da2661108 www.oracle.com Patch, Third Party Advisory
[SECURITY] Fedora 34 Update: python2.7-2.7.18-11.fc34 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
Oracle Critical Patch Update Advisory - April 2021 af854a3a-2127-422b-91ae-364da2661108 www.oracle.com Patch, Third Party Advisory
lists.apache.org/thread.html/rc005f4de9d9b0ba943ceb8ff5a21a5c6ff8a9df526324766... af854a3a-2127-422b-91ae-364da2661108 lists.apache.org
[SECURITY] Fedora 32 Update: python37-3.7.10-1.fc32 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
[SECURITY] Fedora 33 Update: python3.8-3.8.8-1.fc33 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
lists.apache.org/thread.html/rf9fa47ab66495c78bb4120b0754dd9531ca2ff0430f6685a... af854a3a-2127-422b-91ae-364da2661108 lists.apache.org
Web Cache Poisoning in python/cpython | Snyk af854a3a-2127-422b-91ae-364da2661108 snyk.io Exploit, Third Party Advisory
[SECURITY] Fedora 32 Update: python39-3.9.2-1.fc32 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
[SECURITY] Fedora 33 Update: mingw-python3-3.9.2-1.fc33 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
[SECURITY] Fedora 33 Update: python2.7-2.7.18-11.fc33 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
[SECURITY] [DLA 2628-1] python2.7 security update af854a3a-2127-422b-91ae-364da2661108 lists.debian.org Mailing List, Third Party Advisory
Python: Multiple vulnerabilities (GLSA 202104-04) — Gentoo security af854a3a-2127-422b-91ae-364da2661108 security.gentoo.org Third Party Advisory
[SECURITY] [DLA 3575-1] python2.7 security update af854a3a-2127-422b-91ae-364da2661108 lists.debian.org
[SECURITY] [DLA 2619-1] python3.5 security update af854a3a-2127-422b-91ae-364da2661108 lists.debian.org Mailing List, Third Party Advisory
[SECURITY] Fedora 32 Update: python3.10-3.10.0~a6-1.fc32 - package-announce - Fedora Mailing-Lists af854a3a-2127-422b-91ae-364da2661108 lists.fedoraproject.org
[SECURITY] Fedora 34 Update: python2.7-2.7.18-11.fc34 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 33 Update: python-django-3.0.13-1.fc33 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 32 Update: python3.10-3.10.0~a6-1.fc32 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 32 Update: mingw-python3-3.8.8-1.fc32 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 32 Update: python36-3.6.13-1.fc32 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 34 Update: python3.10-3.10.0~a6-1.fc34 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 33 Update: python3.6-3.6.13-1.fc33 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 32 Update: python39-3.9.2-1.fc32 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 33 Update: python3.8-3.8.8-1.fc33 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 32 Update: python37-3.7.10-1.fc32 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 33 Update: python2.7-2.7.18-11.fc33 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 33 Update: python3.9-3.9.2-1.fc33 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 33 Update: python3.10-3.10.0~a6-1.fc33 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 32 Update: python3-3.8.9-1.fc32 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 33 Update: mingw-python3-3.9.2-1.fc33 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 34 Update: python-django-3.1.7-1.fc34 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 34 Update: mingw-python3-3.9.2-2.fc34 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 32 Update: python-django-3.0.13-1.fc32 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
[SECURITY] Fedora 33 Update: python3.7-3.7.10-1.fc33 - package-announce - Fedora Mailing-Lists MITRE lists.fedoraproject.org
Pony Mail! MITRE lists.apache.org
Pony Mail! MITRE lists.apache.org
Pony Mail! MITRE lists.apache.org
CVE Program record CVE.ORG www.cve.org canonical
NVD vulnerability detail NVD nvd.nist.gov canonical, analysis

Vendor Comments And Credit

Discovery Credit

CNA: Snyk Security Team (en)

Legacy QID Mappings

  • 159200 Oracle Enterprise Linux Security Update for python3 (ELSA-2021-1633)
  • 159463 Oracle Enterprise Linux Security Update for python27:2.7 (ELSA-2021-4151)
  • 159467 Oracle Enterprise Linux Security Update for python38:3.8 and python38-devel:3.8 (ELSA-2021-4162)
  • 174803 SUSE Enterprise Linux Security update for python (SUSE-SU-2021:0768-1)
  • 174820 SUSE Enterprise Linux Security update for python3 (SUSE-SU-2021:0886-1)
  • 174825 SUSE Enterprise Linux Security update for python36 (SUSE-SU-2021:0887-1)
  • 174842 SUSE Enterprise Linux Security update for python3 (SUSE-SU-2021:0947-1)
  • 174861 SUSE Enterprise Linux Security Update for python3 (SUSE-SU-2021:0947-1)
  • 178536 Debian Security Update for python3.5 (DLA 2619-1)
  • 178546 Debian Security Update for python2.7 (DLA 2628-1)
  • 180273 Debian Security Update for python3.9pypy3python-django (CVE-2021-23336)
  • 181172 Debian Security Update for python-django (DLA 3164-1)
  • 239323 Red Hat Update for python3 (RHSA-2021:1633)
  • 239580 Red Hat Update for rh-python38 (RHSA-2021:3254)
  • 239582 Red Hat Update for python27 (RHSA-2021:3252)
  • 239826 Red Hat Update for python27:2.7 (RHSA-2021:4151)
  • 239845 Red Hat Update for python38:3.8 and python38-devel:3.8 (RHSA-2021:4162)
  • 281120 Fedora Security Update for python2.7 (FEDORA-2021-12df7f7382)
  • 281121 Fedora Security Update for python2.7 (FEDORA-2021-98720f3785)
  • 281358 Fedora Security Update for python3 (FEDORA-2021-b6b6093b3a)
  • 281531 Fedora Security Update for mingw (FEDORA-2021-309bc2e727)
  • 281532 Fedora Security Update for mingw (FEDORA-2021-b76ede8f4d)
  • 281533 Fedora Security Update for mingw (FEDORA-2021-e525e48886)
  • 281542 Fedora Security Update for python (FEDORA-2021-ef83e8525a)
  • 281543 Fedora Security Update for python (FEDORA-2021-1bb399a5af)
  • 281544 Fedora Security Update for python (FEDORA-2021-e22bb0e548)
  • 281547 Fedora Security Update for python3.10 (FEDORA-2021-2897f5366c)
  • 281548 Fedora Security Update for python3.10 (FEDORA-2021-5a09621ebb)
  • 281549 Fedora Security Update for python3.10 (FEDORA-2021-b326fcb83f)
  • 281604 Fedora Security Update for python3.9 (FEDORA-2021-b1843407ca)
  • 281609 Fedora Security Update for python3.6 (FEDORA-2021-7fa9dc84d4)
  • 352278 Amazon Linux Security Update for python35: ALAS-2021-1498
  • 352305 Amazon Linux Security Advisory for python36: ALAS-2021-1500
  • 352365 Amazon Linux Security Advisory for python34: ALAS-2021-1504
  • 352371 Amazon Linux Security Advisory for python3: ALAS2-2021-1640
  • 353942 Amazon Linux Security Advisory for python : ALAS2-2022-1802
  • 353955 Amazon Linux Security Advisory for python27 : ALAS-2022-1593
  • 375537 Python Buffer Overflow/Web Cache Poisoning Vulnerability
  • 377387 Alibaba Cloud Linux Security Update for python3 (ALINUX3-SA-2021:0080)
  • 500595 Alpine Linux Security Update for python3
  • 501677 Alpine Linux Security Update for py3-django
  • 504345 Alpine Linux Security Update for python3
  • 6000148 Debian Security Update for python2.7 (DLA 3575-1)
  • 670241 EulerOS Security Update for python (EulerOS-SA-2021-1835)
  • 670313 EulerOS Security Update for python (EulerOS-SA-2021-1911)
  • 670338 EulerOS Security Update for python3 (EulerOS-SA-2021-1886)
  • 670368 EulerOS Security Update for python3 (EulerOS-SA-2021-1957)
  • 670389 EulerOS Security Update for python3 (EulerOS-SA-2021-1936)
  • 670668 EulerOS Security Update for python (EulerOS-SA-2021-2427)
  • 710014 Gentoo Linux Python Multiple Vulnerabilities (GLSA 202104-04)
  • 750307 OpenSUSE Security Update for python (openSUSE-SU-2021:0435-1)
  • 900046 CBL-Mariner Linux Security Update for python3 3.7.9
  • 900925 Common Base Linux Mariner (CBL-Mariner) Security Update for python2 (6827-1)
  • 903306 Common Base Linux Mariner (CBL-Mariner) Security Update for python2 (3910)
  • 903651 Common Base Linux Mariner (CBL-Mariner) Security Update for python3 (3911)
  • 940187 AlmaLinux Security Update for python3 (ALSA-2021:1633)
  • 940522 AlmaLinux Security Update for python27:2.7 (ALSA-2021:4151)
  • 940526 AlmaLinux Security Update for python38:3.8 and python38-devel:3.8 (ALSA-2021:4162)
  • 960320 Rocky Linux Security Update for python27:2.7 (RLSA-2021:4151)
  • 960342 Rocky Linux Security Update for python38:3.8 and python38-devel:3.8 (RLSA-2021:4162)

© CVE.report 2026

Use of this information constitutes acceptance for use in an AS IS condition. There are NO warranties, implied or otherwise, with regard to this information or its use. Any use of this information is at the user's risk. It is the responsibility of user to evaluate the accuracy, completeness or usefulness of any information, opinion, advice or other content. EACH USER WILL BE SOLELY RESPONSIBLE FOR ANY consequences of his or her direct or indirect use of this web site. ALL WARRANTIES OF ANY KIND ARE EXPRESSLY DISCLAIMED. This site will NOT BE LIABLE FOR ANY DIRECT, INDIRECT or any other kind of loss.

CVE, CWE, and OVAL are registred trademarks of The MITRE Corporation and the authoritative source of CVE content is MITRE's CVE web site. This site includes MITRE data granted under the following license.

Free CVE JSON API cve.report/api

CVE.report and Source URL Uptime Status status.cve.report