CVE-2021-29921

CVE-2021-29921

Critical · published May 6, 2021

CVSS v3.1
9.8
EPSS
7%
Percentile
94.1
In the wild
Unconfirmed
What it is

⚠️ A crafty leading zero in your IP address can slip past access control measures! This sneaky little bug in Python can have some serious implications! Think of it like a bouncer at a club who only checks the first part of an ID. If the rest of the ID is overlooked, it’s all too easy for someone underage to sneak in! An attacker could potentially bypass IP address-based access controls, gaining unauthorized access to sensitive systems. Imagine the chaos if anyone could waltz past your security just by manipulating their IP address a bit!

Put simply

Think of it like a bouncer at a club who only checks the first part of an ID. If the rest of the ID is overlooked, it’s all too easy for someone underage to sneak in! This vulnerability in Python's ipaddress library mishandles leading zeros in IP address octets, creating loopholes that can be exploited to bypass security checks based on IP addresses.

What to do

An attacker could potentially bypass IP address-based access controls, gaining unauthorized access to sensitive systems. Imagine the chaos if anyone could waltz past your security just by manipulating their IP address a bit! Upgrade your Python version to 3.9.5 or later to close this loophole. If you're using a version prior to that, it’s crucial to implement additional validation on IP addresses to block unwanted access. Stay vigilant! You've got this! Patch up and fortify your defenses! 🛡️

The record
Technical detail
CVSS v3.1
9.8 · CRITICAL
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.06882 · 94.1th percentile
Published
2021-05-06T17:15Z
Affected products (8)
ProductVersionsFixed in
python/python≥ 3.8.0, < 3.8.123.8.12
python/python≥ 3.9.0, < 3.9.53.9.5
oracle/communications_cloud_native_core_automated_test_suiteall versions—
oracle/communications_cloud_native_core_binding_support_functionall versions—
oracle/communications_cloud_native_core_network_slice_selection_functionall versions—
oracle/graalvmall versions—
oracle/graalvmall versions—
oracle/zfs_storage_appliance_kitall versions—
References (33)
https://www.oracle.com//security-alerts/cpujul2021.html · [email protected]https://www.oracle.com/security-alerts/cpuapr2022.html · [email protected]https://bugs.python.org/issue36384 · [email protected]https://docs.python.org/3/library/ipaddress.html · [email protected]https://github.com/python/cpython/blob/63298930fb531ba2bb4f23bc3b915dbf1e17e9e1/Misc/NEWS.d/3.8.0a4.rst · [email protected]https://github.com/python/cpython/pull/12577 · [email protected]https://github.com/python/cpython/pull/25099 · [email protected]https://github.com/sickcodes · [email protected]https://github.com/sickcodes/security/blob/master/advisories/SICK-2021-014.md · [email protected]https://python-security.readthedocs.io/vuln/ipaddress-ipv4-leading-zeros.html · [email protected]https://security.gentoo.org/glsa/202305-02 · [email protected]https://security.netapp.com/advisory/ntap-20210622-0003/ · [email protected]https://www.oracle.com/security-alerts/cpujan2022.html · [email protected]https://www.oracle.com/security-alerts/cpujul2022.html · [email protected]https://www.oracle.com/security-alerts/cpuoct2021.html · [email protected]https://bugs.python.org/issue36384 · af854a3a-2127-422b-91ae-364da2661108https://docs.python.org/3/library/ipaddress.html · af854a3a-2127-422b-91ae-364da2661108https://github.com/python/cpython/blob/63298930fb531ba2bb4f23bc3b915dbf1e17e9e1/Misc/NEWS.d/3.8.0a4.rst · af854a3a-2127-422b-91ae-364da2661108https://github.com/python/cpython/pull/12577 · af854a3a-2127-422b-91ae-364da2661108https://github.com/python/cpython/pull/25099 · af854a3a-2127-422b-91ae-364da2661108https://github.com/sickcodes · af854a3a-2127-422b-91ae-364da2661108https://github.com/sickcodes/security/blob/master/advisories/SICK-2021-014.md · af854a3a-2127-422b-91ae-364da2661108https://lists.debian.org/debian-lts-announce/2024/12/msg00000.html · af854a3a-2127-422b-91ae-364da2661108https://python-security.readthedocs.io/vuln/ipaddress-ipv4-leading-zeros.html · af854a3a-2127-422b-91ae-364da2661108https://security.gentoo.org/glsa/202305-02 · af854a3a-2127-422b-91ae-364da2661108https://security.netapp.com/advisory/ntap-20210622-0003/ · af854a3a-2127-422b-91ae-364da2661108https://sick.codes/sick-2021-014 · af854a3a-2127-422b-91ae-364da2661108https://www.oracle.com//security-alerts/cpujul2021.html · af854a3a-2127-422b-91ae-364da2661108https://www.oracle.com/security-alerts/cpuapr2022.html · af854a3a-2127-422b-91ae-364da2661108https://www.oracle.com/security-alerts/cpujan2022.html · af854a3a-2127-422b-91ae-364da2661108https://www.oracle.com/security-alerts/cpujul2022.html · af854a3a-2127-422b-91ae-364da2661108https://www.oracle.com/security-alerts/cpuoct2021.html · af854a3a-2127-422b-91ae-364da2661108https://sick.codes/sick-2021-014 · [email protected]
EPSS history
Timeline
  • 06 MAY 00:00Z
    In Python before 3,9,5, the ipaddress library mishandles leading zero characters in the octets of an IP address string
    cvelistv5