Web Cache Poisoning
Summary
| CVE | CVE-2021-23336 |
|---|---|
| State | PUBLISHED |
| Assigner | snyk |
| Source Priority | CVE Program / NVD first with legacy fallback |
| Published | 2021-02-15 13:15:12 UTC |
| Updated | 2026-10-14 12:17:09 UTC |
| Description | The 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')
| Version | Source | Type | Score | Severity | Vector |
|---|---|---|---|---|---|
| 3.1 | [email protected] | Primary | 5.9 | MEDIUM | CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:H |
| 3.1 | [email protected] | Secondary | 5.9 | MEDIUM | CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:H |
| 3.1 | CNA | DECLARED | 5.9 | MEDIUM | CVSS: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] | Primary | 4 | AV:N/AC:H/Au:N/C:N/I:P/A:P |
CVSS v3.1 Breakdown
Attack Vector
NetworkAttack Complexity
HighPrivileges Required
NoneUser Interaction
RequiredScope
UnchangedConfidentiality
NoneIntegrity
LowAvailability
HighCVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:H
CVSS v2.0 Breakdown
Access Vector
NetworkAccess Complexity
HighAuthentication
NoneConfidentiality
NoneIntegrity
PartialAvailability
PartialAV:N/AC:H/Au:N/C:N/I:P/A:P
NVD Known Affected Configurations (CPE 2.3)
Vendor Declared Affected Products
| Source | Vendor | Product | Version | Platforms |
|---|---|---|---|---|
| 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
| Reference | Source | Link | Tags |
|---|---|---|---|
| [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)