CVE-2021-23336
CVSS v3
5.9
MEDIUM
EPSS Score
40.7 %
exploit probability, as of 2026-10-12
CISA KEV
No
known exploited
Exploitation
—
SSVC status
Get an alert for each new CVE published for python. Watch python in CVE Watch Free account · no credit card
Affected and fixed versions
Packages from OSV.dev and products from the vendors' CSAF advisories.
version not verifiedVersions not verified: read as OSV.dev and the vendors publish them, not checked against each vendor's release list.
Packages
- djangoBitnamifrom 2.2.0 · fixed in 2.2.19
- pythonBitnamiall versions · fixed in 3.6.13and 2 other packages
- babelAlmaLinux:8all versions · fixed in 2.5.1-10.module_el8.6.0+2781+fed64c13and 1 other package
- python-nose-docsAlmaLinux:8all versions · fixed in 1.3.7-31.module_el8.5.0+2569+5c5719bc
- python-sqlalchemy-docAlmaLinux:8all versions · fixed in 1.3.2-2.module_el8.5.0+2569+5c5719bc
- python2-attrsAlmaLinux:8all versions · fixed in 17.4.0-10.module_el8.6.0+2781+fed64c13
- python2-backportsAlmaLinux:8all versions · fixed in 1.0-16.module_el8.6.0+2781+fed64c13
- python2-backports-ssl_match_hostnameAlmaLinux:8all versions · fixed in 3.5.0.1-12.module_el8.6.0+2781+fed64c13
69 more package ranges on OSV.dev
Vendor advisories
python: Web cache poisoning via urllib.parse.parse_qsl and urllib.parse.parse_qs by using a semicolon in query parameters
python-django-bash-completion as a component of Red Hat Ceph Storage 2 · python-django.src as a component of Red Hat Ceph Storage 2 · python-django-bash-completion as a component of Red Hat Ceph Storage 3
Siemens SIMATIC S7-1500
SIMATIC S7-1500 CPU 1518-4 PN/DP MFP (6ES7518-4AX00-1AB0) · SIMATIC S7-1500 CPU 1518-4 PN/DP MFP (6ES7518-4AX00-1AC0) · SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP (6ES7518-4FX00-1AB0)
SSA-398330: Vulnerabilities in the additional GNU/Linux subsystem of the SIMATIC S7-1500 CPU 1518(F)-4 PN/DP MFP >= V3.1.0 and < V3.1.5
SIMATIC S7-1500 CPU 1518-4 PN/DP MFP (6ES7518-4AX00-1AB0) · SIMATIC S7-1500 CPU 1518-4 PN/DP MFP (6ES7518-4AX00-1AC0) · SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP (6ES7518-4FX00-1AB0)
Red Hat Security Advisory: python38:3.8 and python38-devel:3.8 security update
Red Hat Security Advisory: python27:2.7 security update
Red Hat Security Advisory: python27 security update
2 more advisories
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.
Technical details
- Published
- 2021-02-15
Frequently asked questions
What is CVE-2021-23336?
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.
Is CVE-2021-23336 actively exploited?
Active exploitation of CVE-2021-23336 has not been confirmed. Its EPSS score was 40.7% on 2026-10-12, the estimated probability of exploitation in the next 30 days.
What is the CVSS score for CVE-2021-23336?
CVE-2021-23336 has a CVSS v3 base score of 5.9 (MEDIUM severity).
Running python? Hear about its next vulnerability
CVE Watch matches each new CVE to the vendors and products you list (vendor and product, not the version) and puts it in your alerts with its KEV and EPSS status.
Already have an account? Open CVE Watch
No credit card required · 50 free checks/month · Free API key
Go further
- Following what attackers exploit right now? The CISA KEV additions of the month, with their patch deadlines.
- Running this software? CVE Watch alerts you to new vulnerabilities in your products.
Related vulnerabilities
Same product first, then the same vendor advisory and the same publication week.