CVE-2024-4032 Incorrect IPv4 and IPv6 private ranges

High 7.5 Published Updated

Incorrect IP address classification in Python's ipaddress module may allow attackers to bypass security checks relying on private or global IP status.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2024-4032?

CVE-2024-4032 is a high-severity vulnerability in CPython, published on 17 Jun 2024. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

The “ipaddress” module contained incorrect information about whether certain IPv4 and IPv6 addresses were designated as “globally reachable” or “private”. This affected the is_private and is_global properties of the ipaddress.IPv4Address, ipaddress.IPv4Network, ipaddress.IPv6Address, and ipaddress.IPv6Network classes, where values wouldn’t be returned in accordance with the latest information from the IANA Special-Purpose Address Registries.

CPython 3.12.4 and 3.13.0a6 contain updated information from these registries and thus have the intended behavior.

Weakness: CWE-697

Which versions are affected by CVE-2024-4032?

3 open source packages ship an affected version, including libpython, python and python-min.

PackageAffectedFixed in
libpython BitnamiAll versions3.8.20, 3.9.20, 3.10.15, 3.11.10, 3.12.4
python BitnamiAll versions3.8.20, 3.9.20, 3.10.15, 3.11.10, 3.12.4
python-min BitnamiAll versions3.8.20, 3.9.20, 3.10.15, 3.11.10, 3.12.4
Linux distribution packages (37)
python-unversioned-command AlmaLinux:9All versions3.9.18-3.el9_4.3
python3 AlmaLinux:9All versions3.9.18-3.el9_4.3
python3-debug AlmaLinux:9All versions3.9.18-3.el9_4.3
python3-devel AlmaLinux:9All versions3.9.18-3.el9_4.3
python3-idle AlmaLinux:9All versions3.9.18-3.el9_4.3
python3-libs AlmaLinux:9All versions3.9.18-3.el9_4.3
python3-test AlmaLinux:9All versions3.9.18-3.el9_4.3
python3-tkinter AlmaLinux:9All versions3.9.18-3.el9_4.3
python3.11 AlmaLinux:9All versions3.11.7-1.el9_4.3
python3.11-debug AlmaLinux:9All versions3.11.7-1.el9_4.3
python3.11-devel AlmaLinux:9All versions3.11.7-1.el9_4.3
python3.11-idle AlmaLinux:9All versions3.11.7-1.el9_4.3
python3.11-libs AlmaLinux:9All versions3.11.7-1.el9_4.3
python3.11-test AlmaLinux:9All versions3.11.7-1.el9_4.3
python3.11-tkinter AlmaLinux:9All versions3.11.7-1.el9_4.3
python-unversioned-command Red Hat:enterprise_linux:9::appstreamAll versions0:3.9.18-3.el9_4.3
python3-devel Red Hat:enterprise_linux:9::appstreamAll versions0:3.9.18-3.el9_4.3
python3-tkinter Red Hat:enterprise_linux:9::appstreamAll versions0:3.9.18-3.el9_4.3
python3.11 Red Hat:enterprise_linux:9::appstreamAll versions0:3.11.7-1.el9_4.3
python3.11-debuginfo Red Hat:enterprise_linux:9::appstreamAll versions0:3.11.7-1.el9_4.3
python3.11-debugsource Red Hat:enterprise_linux:9::appstreamAll versions0:3.11.7-1.el9_4.3
python3.11-devel Red Hat:enterprise_linux:9::appstreamAll versions0:3.11.7-1.el9_4.3
python3.11-libs Red Hat:enterprise_linux:9::appstreamAll versions0:3.11.7-1.el9_4.3
python3.11-tkinter Red Hat:enterprise_linux:9::appstreamAll versions0:3.11.7-1.el9_4.3
python3.9-debuginfo Red Hat:enterprise_linux:9::appstreamAll versions0:3.9.18-3.el9_4.3
python3.9-debugsource Red Hat:enterprise_linux:9::appstreamAll versions0:3.9.18-3.el9_4.3
python3 Red Hat:enterprise_linux:9::baseosAll versions0:3.9.18-3.el9_4.3
python3-libs Red Hat:enterprise_linux:9::baseosAll versions0:3.9.18-3.el9_4.3
python3.9 Red Hat:enterprise_linux:9::baseosAll versions0:3.9.18-3.el9_4.3
python3.9-debuginfo Red Hat:enterprise_linux:9::baseosAll versions0:3.9.18-3.el9_4.3
python3.9-debugsource Red Hat:enterprise_linux:9::baseosAll versions0:3.9.18-3.el9_4.3
python3 Red Hat:enterprise_linux:9::crbAll versions0:3.9.18-3.el9_4.3
python3-debug Red Hat:enterprise_linux:9::crbAll versions0:3.9.18-3.el9_4.3
python3-idle Red Hat:enterprise_linux:9::crbAll versions0:3.9.18-3.el9_4.3
python3-test Red Hat:enterprise_linux:9::crbAll versions0:3.9.18-3.el9_4.3
python3-tkinter Red Hat:enterprise_linux:9::crbAll versions0:3.9.18-3.el9_4.3
python3.11 Red Hat:enterprise_linux:9::crbAll versions0:3.11.7-1.el9_4.3

How do I fix CVE-2024-4032?

Upgrade libpython to a fixed version for your release line: 3.8.20, 3.9.20, 3.10.15 or 3.11.10.

Is CVE-2024-4032 being exploited?

There is no known exploitation of CVE-2024-4032 in the wild and no public exploit code.

Sources

Also known as ALPINE-CVE-2024-4032, ALSA-2024:4766, ALSA-2024:4779, AZL-42772, AZL-42811, BELL-CVE-2024-4032 and 24 more.

Is CVE-2024-4032 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free