Vulnerability · Published May 17, 2024 · Assigned by Linux

CVE-2023-52676bpf: Guard stack limits against 32bit overflow

High 7.8

In plain English

A high-severity security flaw in Linux from Linux. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 15% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)7.8High
Exploit odds (30 days)0.2%top 85.2% of all CVEs
Exploited in the wildNo reportsCISA SSVC: none
Attack toolingNoneno public tooling known

Official description

In the Linux kernel, the following vulnerability has been resolved: bpf: Guard stack limits against 32bit overflow This patch promotes the arithmetic around checking stack bounds to be done in the 64-bit domain, instead of the current 32bit. The arithmetic implies adding together a 64-bit register with a int offset. The register was checked to be below 1<<29 when it was variable, but not when it was fixed. The offset either comes from an instruction (in which case it is 16 bit), from another register (in which case the caller checked it to be below 1<<29 [1]), or from the size of an argument to a kfunc (in which case it can be a u32 [2]). Between the register being inconsistently checked to be below 1<<29, and the offset being up to an u32, it appears that we were open to overflowing the `int`s which were currently used for arithmetic. [1] https://github.com/torvalds/linux/blob/815fb87b753055df2d9e50f6cd80eb10235fe3e9/kernel/bpf/verifier.c#L7494-L7498 [2] https://github.com/torvalds/linux/blob/815fb87b753055df2d9e50f6cd80eb10235fe3e9/kernel/bpf/verifier.c#L11904

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:12linux6.1.190-1DEBIAN-CVE-2023-52676
Debian:13linux6.6.15-1DEBIAN-CVE-2023-52676
Debian:14linux6.6.15-1DEBIAN-CVE-2023-52676
Ubuntu:22.04:LTSlinux5.15.0-202.212USN-8961-1
Ubuntu:22.04:LTSlinux5.15.0-202.212UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-allwinner-5.19no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-aws5.15.0-1119.126USN-8961-1
Ubuntu:22.04:LTSlinux-aws5.15.0-1119.126UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-aws-5.19no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-aws-6.2no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-aws-6.5no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-azure5.15.0-1125.134UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-azure5.15.0-1125.134USN-8961-1
Ubuntu:22.04:LTSlinux-azure-5.19no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-azure-6.2no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-azure-6.56.5.0-1022.23~22.04.1UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-azure-fde5.15.0-1124.133USN-8962-1
Ubuntu:22.04:LTSlinux-azure-fde5.15.0-1124.133UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-azure-fde-5.19no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-azure-fde-6.2no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-gcp5.15.0-1120.130UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-gcp5.15.0-1120.130USN-8961-1
Ubuntu:22.04:LTSlinux-gcp-5.19no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-gcp-6.2no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-gcp-6.56.5.0-1022.24~22.04.1UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-gke5.15.0-1115.121UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-gke5.15.0-1115.121USN-8961-1
Ubuntu:22.04:LTSlinux-gkeop5.15.0-1102.110USN-8961-1
Ubuntu:22.04:LTSlinux-gkeop5.15.0-1102.110UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-hwe-5.19no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-hwe-6.2no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-hwe-6.56.5.0-41.41~22.04.2UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-ibm5.15.0-1113.117UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-ibm5.15.0-1113.117USN-8961-1
Ubuntu:22.04:LTSlinux-intel-iot-realtimeno fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-intel-iotg5.15.0-1114.120UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-intel-iotg5.15.0-1114.120USN-8961-1
Ubuntu:22.04:LTSlinux-kvm5.15.0-1111.116UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-kvm5.15.0-1111.116USN-8961-1
Ubuntu:22.04:LTSlinux-lowlatency5.15.0-197.207UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-lowlatency5.15.0-197.207USN-8961-1
Ubuntu:22.04:LTSlinux-lowlatency-hwe-5.19no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.2no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.56.5.0-41.41.1~22.04.1UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-nvidia5.15.0-1114.115UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-nvidia5.15.0-1114.115USN-8961-1
Ubuntu:22.04:LTSlinux-nvidia-6.2no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-nvidia-6.56.5.0-1021.22UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-nvidia-tegra5.15.0-1070.72UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-nvidia-tegra5.15.0-1070.72USN-8963-1
Ubuntu:22.04:LTSlinux-nvidia-tegra-igx5.15.0-1059.59USN-8963-1
Ubuntu:22.04:LTSlinux-nvidia-tegra-igx5.15.0-1059.59UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-oem-5.17no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-oem-6.0no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-oem-6.1no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-oem-6.56.5.0-1024.25UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-oracle5.15.0-1116.122USN-8961-1
Ubuntu:22.04:LTSlinux-oracle5.15.0-1116.122UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-oracle-6.56.5.0-1024.24~22.04.1UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-raspino fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-realtimeno fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-riscvno fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-riscv-5.19no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-riscv-6.56.5.0-40.40.1~22.04.1UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-starfive-5.19no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-starfive-6.2no fix listedUBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-starfive-6.56.5.0-1015.16~22.04.1UBUNTU-CVE-2023-52676
Ubuntu:22.04:LTSlinux-xilinx-zynqmpno fix listedUBUNTU-CVE-2023-52676

Affected products (as reported)

VendorProductVersions
Linux Linux f3c4b01689d392373301e6e60d1b02c5b4020afc – before ad1754f86a87fe74912fb542b23ff24ada4e330701f810ace9ed37255f27608a0864abebccf0aab3 – before 4ba97610399e83d29d1086a0827d33172539b49b01f810ace9ed37255f27608a0864abebccf0aab3 – before e160b2ed94a20fa940369ebd914277f88005e70d01f810ace9ed37255f27608a0864abebccf0aab3 – before ad140fc856f0b1d5e2215bcb6d0cc247a86805a201f810ace9ed37255f27608a0864abebccf0aab3 – before e5ad9ecb84405637df82732ee02ad741a5f782a601f810ace9ed37255f27608a0864abebccf0aab3 – before 1d38a9ee81570c4bd61f557832dead4d6f816760d1b725ea5d104caea250427899f4e2e3ab15b4fc5.10.33 – before 5.10.270
Linux Linux 5.12

References