{"id":"UBUNTU-CVE-2021-29921","details":"In Python before 3,9,5, the ipaddress library mishandles leading zero characters in the octets of an IP address string. This (in some situations) allows attackers to bypass access control that is based on IP addresses.","modified":"2026-04-22T14:41:21.570711Z","published":"2021-05-06T13:15:00Z","related":["USN-4973-1","USN-4973-2","USN-6891-1"],"upstream":["CVE-2021-29921"],"references":[{"type":"REPORT","url":"https://ubuntu.com/security/CVE-2021-29921"},{"type":"REPORT","url":"https://github.com/python/cpython/pull/25099"},{"type":"REPORT","url":"https://sick.codes/sick-2021-014"},{"type":"REPORT","url":"https://python-security.readthedocs.io/vuln/ipaddress-ipv4-leading-zeros.html"},{"type":"REPORT","url":"https://github.com/sickcodes"},{"type":"REPORT","url":"https://github.com/sickcodes/security/blob/master/advisories/SICK-2021-014.md"},{"type":"REPORT","url":"https://github.com/python/cpython/pull/12577"},{"type":"REPORT","url":"https://docs.python.org/3/library/ipaddress.html"},{"type":"REPORT","url":"https://github.com/python/cpython/blob/63298930fb531ba2bb4f23bc3b915dbf1e17e9e1/Misc/NEWS.d/3.8.0a4.rst"},{"type":"ADVISORY","url":"https://ubuntu.com/security/notices/USN-4973-1"},{"type":"ADVISORY","url":"https://ubuntu.com/security/notices/USN-4973-2"},{"type":"REPORT","url":"https://www.cve.org/CVERecord?id=CVE-2021-29921"},{"type":"ADVISORY","url":"https://ubuntu.com/security/notices/USN-6891-1"}],"affected":[{"package":{"name":"python3.8","ecosystem":"Ubuntu:Pro:18.04:LTS","purl":"pkg:deb/ubuntu/python3.8@3.8.0-3ubuntu1~18.04.2+esm2?arch=source&distro=esm-apps/bionic"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.8.0-3ubuntu1~18.04.2+esm2"}]}],"versions":["3.8.0-3~18.04","3.8.0-3~18.04.1","3.8.0-3ubuntu1~18.04.2","3.8.0-3ubuntu1~18.04.2+esm1"],"ecosystem_specific":{"availability":"Available with Ubuntu Pro: https://ubuntu.com/pro","binaries":[{"binary_name":"idle-python3.8","binary_version":"3.8.0-3ubuntu1~18.04.2+esm2"},{"binary_name":"libpython3.8","binary_version":"3.8.0-3ubuntu1~18.04.2+esm2"},{"binary_name":"libpython3.8-minimal","binary_version":"3.8.0-3ubuntu1~18.04.2+esm2"},{"binary_name":"libpython3.8-stdlib","binary_version":"3.8.0-3ubuntu1~18.04.2+esm2"},{"binary_version":"3.8.0-3ubuntu1~18.04.2+esm2","binary_name":"libpython3.8-testsuite"},{"binary_name":"python3.8","binary_version":"3.8.0-3ubuntu1~18.04.2+esm2"},{"binary_version":"3.8.0-3ubuntu1~18.04.2+esm2","binary_name":"python3.8-examples"},{"binary_name":"python3.8-minimal","binary_version":"3.8.0-3ubuntu1~18.04.2+esm2"},{"binary_name":"python3.8-venv","binary_version":"3.8.0-3ubuntu1~18.04.2+esm2"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2021/UBUNTU-CVE-2021-29921.json"}},{"package":{"name":"python3.8","ecosystem":"Ubuntu:20.04:LTS","purl":"pkg:deb/ubuntu/python3.8@3.8.10-0ubuntu1~20.04.1?arch=source&distro=focal"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.8.10-0ubuntu1~20.04.1"}]}],"versions":["3.8.0-1","3.8.0-2","3.8.0-3","3.8.0-4","3.8.0-5","3.8.1-2ubuntu3","3.8.2~rc1-1ubuntu1","3.8.2-1","3.8.2-1ubuntu1","3.8.2-1ubuntu1.1","3.8.2-1ubuntu1.2","3.8.5-1~20.04","3.8.5-1~20.04.2","3.8.5-1~20.04.3","3.8.10-0ubuntu1~20.04"],"ecosystem_specific":{"availability":"No subscription required","binaries":[{"binary_name":"idle-python3.8","binary_version":"3.8.10-0ubuntu1~20.04.1"},{"binary_name":"libpython3.8","binary_version":"3.8.10-0ubuntu1~20.04.1"},{"binary_name":"libpython3.8-minimal","binary_version":"3.8.10-0ubuntu1~20.04.1"},{"binary_name":"libpython3.8-stdlib","binary_version":"3.8.10-0ubuntu1~20.04.1"},{"binary_version":"3.8.10-0ubuntu1~20.04.1","binary_name":"libpython3.8-testsuite"},{"binary_name":"python3.8","binary_version":"3.8.10-0ubuntu1~20.04.1"},{"binary_name":"python3.8-examples","binary_version":"3.8.10-0ubuntu1~20.04.1"},{"binary_name":"python3.8-full","binary_version":"3.8.10-0ubuntu1~20.04.1"},{"binary_name":"python3.8-minimal","binary_version":"3.8.10-0ubuntu1~20.04.1"},{"binary_name":"python3.8-venv","binary_version":"3.8.10-0ubuntu1~20.04.1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2021/UBUNTU-CVE-2021-29921.json"}},{"package":{"name":"python3.9","ecosystem":"Ubuntu:20.04:LTS","purl":"pkg:deb/ubuntu/python3.9@3.9.5-3~20.04.1?arch=source&distro=focal"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.9.5-3~20.04.1"}]}],"versions":["3.9.0~rc1-1~20.04","3.9.0-5~20.04"],"ecosystem_specific":{"availability":"No subscription required","binaries":[{"binary_name":"idle-python3.9","binary_version":"3.9.5-3~20.04.1"},{"binary_name":"libpython3.9","binary_version":"3.9.5-3~20.04.1"},{"binary_name":"libpython3.9-minimal","binary_version":"3.9.5-3~20.04.1"},{"binary_name":"libpython3.9-stdlib","binary_version":"3.9.5-3~20.04.1"},{"binary_name":"libpython3.9-testsuite","binary_version":"3.9.5-3~20.04.1"},{"binary_name":"python3.9","binary_version":"3.9.5-3~20.04.1"},{"binary_name":"python3.9-examples","binary_version":"3.9.5-3~20.04.1"},{"binary_name":"python3.9-full","binary_version":"3.9.5-3~20.04.1"},{"binary_name":"python3.9-minimal","binary_version":"3.9.5-3~20.04.1"},{"binary_name":"python3.9-venv","binary_version":"3.9.5-3~20.04.1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2021/UBUNTU-CVE-2021-29921.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"},{"type":"Ubuntu","score":"medium"}]}