CVE-2021-3572 json
Improper Input Validation in pip
published 4y ago modified last mo. also GHSA-5xp3-jfq3-5q8x , PYSEC-2021-437 , EUVD-2021-0186
- cvss
- 5.7
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.8%
- EPSS 1.8% chance of exploitation in 30 days, percentile 79%
- public exploits
- 0
- none known
Summary
A flaw was found in python-pip in the way it handled Unicode separators in git references. A remote attacker could possibly use this issue to install a different revision on a repository. The highest threat from this vulnerability is to data integrity. This is fixed in python-pip version 21.1.
Patch / fix
- pypi pip 21.1
- pypa pip 21.1
- python-pip Debian 14, Debian 13, Debian 12 20.3.4-2
debian advisories DEBIAN-CVE-2021-3572
- python-pip Ubuntu Pro 14.04 LTS 1.5.4-1ubuntu4+esm1
- python-pip Ubuntu Pro 16.04 LTS 8.1.1-2ubuntu0.6+esm2
- python-pip Ubuntu Pro 18.04 LTS 9.0.1-2.3~ubuntu1.18.04.5+esm2
ubuntu advisories UBUNTU-CVE-2021-3572
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- pytz RHEL 8 2019.3-3.module+el8.4.0+8888+89bc7e79
- babel RHEL 8 2.7.0-11.module+el8.5.0+11015+9c1c7c42
- numpy RHEL 8 1.17.3-6.module+el8.5.0+12205+a865257a
- scipy RHEL 8 1.3.1-4.module+el8.4.0+8888+89bc7e79
- Cython RHEL 8 0.29.14-4.module+el8.4.0+8888+89bc7e79
- pytest RHEL 8 4.6.6-3.module+el8.4.0+8888+89bc7e79
- PyYAML RHEL 8 5.4.1-1.module+el8.5.0+10721+14d8e0d5
- mod_wsgi RHEL 8 4.6.8-3.module+el8.4.0+8888+89bc7e79
red hat advisories RHSA-2021:4162RHSA-2021:3254RHSA-2021:4160RHSA-2021:4455
- python3 SLES for SAP 15 SP2, SLES for SAP 15 SP1, SLES for SAP 15 +17 more 3.6.15-150000.3.106.1
- python3-core SLES for SAP 15 SP2, SLES for SAP 15 SP1, SLES for SAP 15 +17 more 3.6.15-150000.3.106.1
- python39 SLE Module for Basesystem 15 SP3, openSUSE Leap 15.4, openSUSE Leap 15.3 3.9.10-150300.4.8.2
- python39-core SLE Module for Development Tools 15 SP3, SLE Module for Basesystem 15 SP3, openSUSE Leap 15.4 +1 more 3.9.10-150300.4.8.1
- python39-documentation openSUSE Leap 15.4, openSUSE Leap 15.3 3.9.10-150300.4.8.1
- python3 SLE Module for Basesystem 15 SP3, SLE Micro 5.2 3.6.15-150300.10.21.1
- python3-core SLE Module for Development Tools 15 SP3, SLE Module for Basesystem 15 SP3, SLE Micro 5.2 3.6.15-150300.10.21.1
- python36 SLES for SAP 12 SP5, SLES 12 SP5 3.6.15-21.5
suse advisories SUSE-SU-2022:2351-1SUSE-SU-2022:1485-1SUSE-SU-2022:0942-2SUSE-SU-2022:1094-1SUSE-SU-2022:1091-1SUSE-SU-2022:1044-1
- python openSUSE Tumbleweed 2.7.18-18.1
- python36 openSUSE Tumbleweed 3.6.15-10.1
- python39 openSUSE Tumbleweed 3.9.13-2.1
- python openSUSE Leap 15.3 2.7.18-150000.38.1
- python-base openSUSE Leap 15.3 2.7.18-150000.38.2
- python3 openSUSE Leap 15.3 3.6.15-150300.10.21.1
- python3-core openSUSE Leap 15.3 3.6.15-150300.10.21.1
- python3-documentation openSUSE Leap 15.3 3.6.15-150300.10.21.1
opensuse advisories openSUSE-SU-2024:11877-1openSUSE-SU-2024:11878-1openSUSE-SU-2024:12150-1openSUSE-SU-2022:1091-1openSUSE-SU-2022:0942-1openSUSE-SU-2022:0064-1
- python38-py AlmaLinux 8 1.8.0-8.module_el8.6.0+2778+cd494b30
- python38-ply AlmaLinux 8 3.11-10.module_el8.6.0+2778+cd494b30
- python38-six AlmaLinux 8 1.12.0-10.module_el8.6.0+2778+cd494b30
- python38-cffi AlmaLinux 8 1.13.2-3.module_el8.6.0+2778+cd494b30
- python38-idna AlmaLinux 8 2.8-6.module_el8.6.0+2778+cd494b30
- python38-pytz AlmaLinux 8 2019.3-3.module_el8.6.0+2778+cd494b30
- python38-attrs AlmaLinux 8 19.3.0-3.module_el8.6.0+2778+cd494b30
- python38-babel AlmaLinux 8 2.7.0-11.module_el8.6.0+2778+cd494b30
almalinux advisories ALSA-2021:4162ALSA-2021:4455ALSA-2021:4160
- pytz Rocky Linux 8 2019.3-3.module+el8.4.0+570+c2eaf144
- babel Rocky Linux 8 2.7.0-11.module+el8.5.0+672+ab6eb015
- numpy Rocky Linux 8 1.17.3-6.module+el8.5.0+672+ab6eb015
- scipy Rocky Linux 8 1.3.1-4.module+el8.5.0+672+ab6eb015
- scipy Rocky Linux 8 1.3.1-4.module+el8.4.0+570+c2eaf144
- Cython Rocky Linux 8 0.29.14-4.module+el8.4.0+570+c2eaf144
- pytest Rocky Linux 8 4.6.6-3.module+el8.4.0+570+c2eaf144
- PyYAML Rocky Linux 8 5.4.1-1.module+el8.5.0+672+ab6eb015
rocky linux advisories RLSA-2021:4162RLSA-2021:4160
- python-pip Arch Linux 21.0-1
arch linux advisories AVG-2036
- github.com/pypa/pip@e46bdda commit
- github.com/pypa/pip#9827 pull request
- bugzilla.redhat.com/show_bug.cgi?id=1962856 advisory
- oracle.com/security-alerts/cpuapr2022.html advisory
- oracle.com/security-alerts/cpujul2022.html advisory
Is CVE-2021-3572 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2021-3572 updated cvss 4.5
python-pip: Incorrect handling of unicode separators in git references
-
Red Hat Enterprise Linux 7 python-pip, python3-pip, python-virtualenvaffected: no fix planned “Out of support scope”
-
Red Hat Enterprise Linux 8 python2-pip, python2-pip-wheelaffected: no fix available “Fix deferred”
-
Red Hat Enterprise Linux 9 python-pip, python3-pip, python3-pip-wheelaffected: no fix available
-
Red Hat OpenShift AI (RHOAI) rhoai/odh-dashboard-rhel9under investigation
-
Red Hat CodeReady Linux Builder (v. 8) pytest 4.6.6-3.module+el8.4.0+8888+89bc7e79, pytest 6.0.2-2.module+el8.4.0+9822+20bf1249, Cython 0.29.21-5.module+el8.4.0+9822+20bf1249, pybind11 2.6.1-2.module+el8.4.0+9822+20bf1249, python-py 1.8.0-8.module+el8.4.0+8888+89bc7e79, python-py 1.10.0-1.module+el8.4.0+9822+20bf1249, +34 more Red Hat Enterprise Linux AppStream (v. 8) python3-pip 9.0.3-20.el8, pytz 2019.3-3.module+el8.4.0+8888+89bc7e79, scipy 1.3.1-4.module+el8.4.0+8888+89bc7e79, scipy 1.5.4-3.module+el8.4.0+9822+20bf1249, babel 2.7.0-11.module+el8.5.0+11015+9c1c7c42, numpy 1.17.3-6.module+el8.5.0+12205+a865257a, +115 morefixed: vendor fix RHSA-2021:4162
-
Red Hat Enterprise Linux BaseOS (v. 8) python-pip 9.0.3-20.el8, python3-pip-wheel 9.0.3-20.el8, platform-python-pip 9.0.3-20.el8fixed: vendor fix RHSA-2021:4455
-
Red Hat Software Collections for Red Hat Enterprise Linux Server (v. 7) rh-python38-babel 2.7.0-12.el7, rh-python38-python 3.8.11-2.el7, rh-python38-python-lxml 4.4.1-7.el7, rh-python38-python-pip 19.3.1-2.el7, rh-python38-python-idle 3.8.11-2.el7, rh-python38-python-libs 3.8.11-2.el7, +9 more Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 7.7) rh-python38-babel 2.7.0-12.el7, rh-python38-python 3.8.11-2.el7, rh-python38-python-lxml 4.4.1-7.el7, rh-python38-python-pip 19.3.1-2.el7, rh-python38-python-idle 3.8.11-2.el7, rh-python38-python-libs 3.8.11-2.el7, +9 more Red Hat Software Collections for Red Hat Enterprise Linux Workstation (v. 7) rh-python38-babel 2.7.0-12.el7, rh-python38-python 3.8.11-2.el7, rh-python38-python-lxml 4.4.1-7.el7, rh-python38-python-pip 19.3.1-2.el7, rh-python38-python-idle 3.8.11-2.el7, rh-python38-python-libs 3.8.11-2.el7, +9 morefixed: vendor fix RHSA-2021:3254
-
Red Hat Enterprise Linux 8 python2-pip, python2-pip-wheel Red Hat Software Collections python27-python-pip, python27-python-virtualenvnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- last mo.
Exploit prediction
1.83% chance of exploitation in the next 30 days, higher than 79% of all scored CVEs (FIRST EPSS, 2026-11-09).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.1 | 5.7 | CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:N |
| NVD | 2.0 | 3.5 | AV:N/AC:M/Au:S/C:N/I:P/A:N |
| GitHub | 3.1 | 5.7 | CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | pip | <21.1 |
21.1 |
Affected products
- n/a python-pip
Classification
- Weakness
-
- CWE-20 Improper Input Validation
References
-
bugzilla.redhat.com
/show_bug.cgi?id=1962856
web, issue-tracking, patch, third-party-advisory, report
-
oracle.com
/security-alerts/cpuapr2022.html
web, patch, third-party-advisory
-
oracle.com
/security-alerts/cpujul2022.html
web, patch, third-party-advisory
-
github.com
/pypa/pip/pull/9827
web
-
github.com
/pypa/pip/commit/e46bdda9711392fec0c45c1175bae6db847cb30b
web
- security.netapp.com /advisory/ntap-20240621-0006/
-
nvd.nist.gov
/vuln/detail/CVE-2021-3572
advisory
-
access.redhat.com
/errata/RHSA-2021:3254
web
-
github.com
/advisories/GHSA-5xp3-jfq3-5q8x
advisory
-
github.com
/pypa/advisory-database/tree/main/vulns/pip/PYSEC-2021-437.yaml
web
-
github.com
/pypa/pip
package
-
packetstormsecurity.com
/files/162712/USN-4961-1.txt
web
-
security.netapp.com
/advisory/ntap-20240621-0006
web
Sources
- CVE List CVE-2021-3572
- GitHub Advisory GHSA-5xp3-jfq3-5q8x
- NVD CVE-2021-3572
- OSV PYSEC-2021-437
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.