CVE-2024-24790 Unexpected behavior from Is methods for IPv4-mapped IPv6 addresses in net/netip

Critical 9.8 Published Updated

The Go net/netip library incorrectly identifies IPv4-mapped IPv6 addresses, potentially bypassing security checks relying on IP classification.

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-24790?

CVE-2024-24790 is a critical vulnerability in Golang Go, published on 5 Jun 2024. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

The various Is methods (IsPrivate, IsLoopback, etc) did not work as expected for IPv4-mapped IPv6 addresses, returning false for addresses which would return true in their traditional IPv4 forms.

Which versions are affected by CVE-2024-24790?

2 open source packages ship an affected version, including golang and stdlib. It affects 1 product.

PackageAffectedFixed in
golang BitnamiAll versions1.21.11, 1.22.4
stdlib GoAll versions1.21.11, 1.22.4
Linux distribution packages (24)
delve Red Hat:enterprise_linux:8::appstreamAll versions0:1.22.1-1.module+el8.10.0+22223+9d99ca85
delve-debuginfo Red Hat:enterprise_linux:8::appstreamAll versions0:1.22.1-1.module+el8.10.0+22223+9d99ca85
delve-debugsource Red Hat:enterprise_linux:8::appstreamAll versions0:1.22.1-1.module+el8.10.0+22223+9d99ca85
go-toolset Red Hat:enterprise_linux:8::appstreamAll versions0:1.22.7-1.module+el8.10.0+22328+683b6a23
golang Red Hat:enterprise_linux:8::appstreamAll versions0:1.22.7-1.module+el8.10.0+22325+dc584f75
golang-bin Red Hat:enterprise_linux:8::appstreamAll versions0:1.22.7-1.module+el8.10.0+22325+dc584f75
golang-docs Red Hat:enterprise_linux:8::appstreamAll versions0:1.22.7-1.module+el8.10.0+22325+dc584f75
golang-misc Red Hat:enterprise_linux:8::appstreamAll versions0:1.22.7-1.module+el8.10.0+22325+dc584f75
golang-src Red Hat:enterprise_linux:8::appstreamAll versions0:1.22.7-1.module+el8.10.0+22325+dc584f75
golang-tests Red Hat:enterprise_linux:8::appstreamAll versions0:1.22.7-1.module+el8.10.0+22325+dc584f75
delve Rocky Linux:8All versions0:1.22.1-1.module+el8.10.0+1879+0cb86608
go-toolset Rocky Linux:8All versions0:1.22.7-1.module+el8.10.0+1879+0cb86608
golang Rocky Linux:8All versions0:1.22.7-1.module+el8.10.0+1879+0cb86608
google-osconfig-agent SUSE:Linux Enterprise Micro 5.5All versions20250115.01-150000.1.41.1
google-osconfig-agent SUSE:Linux Enterprise Module for Public Cloud 12All versions20250115.01-1.32.1
google-osconfig-agent SUSE:Linux Enterprise Module for Public Cloud 15 SP3All versions20250115.01-150000.1.41.1
google-osconfig-agent SUSE:Linux Enterprise Module for Public Cloud 15 SP4All versions20250115.01-150000.1.41.1
google-osconfig-agent SUSE:Linux Enterprise Module for Public Cloud 15 SP5All versions20250115.01-150000.1.41.1
google-osconfig-agent SUSE:Linux Enterprise Module for Public Cloud 15 SP6All versions20250115.01-150000.1.41.1
google-osconfig-agent openSUSE:Leap 15.6All versions20250115.01-150000.1.41.1
google-osconfig-agent openSUSE:TumbleweedAll versions20250115.01-1.1
helmfile openSUSE:TumbleweedAll versions0.166.0-1.1
kubelogin openSUSE:TumbleweedAll versions0.1.4-1.1
oras openSUSE:TumbleweedAll versions1.2.1-1.1

Products include Golang Go.

How do I fix CVE-2024-24790?

Upgrade golang to a fixed version for your release line: 1.21.11 or 1.22.4.

Is CVE-2024-24790 being exploited?

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

All Golang Go vulnerabilities

Sources

Also known as AZL-42386, AZL-42395, AZL-42403, AZL-42409, AZL-79050, AZL-98679 and 20 more.

Is CVE-2024-24790 in your software?

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

Check your SBOMs for free