Vulnerability · Published Jul 12, 2024 · Assigned by Linux

CVE-2024-39496btrfs: zoned: fix use-after-free due to race with dev replace

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.3% (higher than 21% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)7.8High
Exploit odds (30 days)0.3%top 78.6% 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: btrfs: zoned: fix use-after-free due to race with dev replace While loading a zone's info during creation of a block group, we can race with a device replace operation and then trigger a use-after-free on the device that was just replaced (source device of the replace operation). This happens because at btrfs_load_zone_info() we extract a device from the chunk map into a local variable and then use the device while not under the protection of the device replace rwsem. So if there's a device replace operation happening when we extract the device and that device is the source of the replace operation, we will trigger a use-after-free if before we finish using the device the replace operation finishes and frees the device. Fix this by enlarging the critical section under the protection of the device replace rwsem so that all uses of the device are done inside the critical section.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:12linux6.1.99-1DEBIAN-CVE-2024-39496
Debian:12linux6.1.99-1DSA-5731-1
Debian:13linux6.9.7-1DEBIAN-CVE-2024-39496
Debian:14linux6.9.7-1DEBIAN-CVE-2024-39496
Ubuntu:22.04:LTSlinux5.15.0-122.132UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux5.15.0-122.132USN-7021-1
Ubuntu:24.04:LTSlinux6.8.0-44.44UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-allwinner-5.19no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-aws5.15.0-1070.76USN-7021-1
Ubuntu:22.04:LTSlinux-aws5.15.0-1070.76UBUNTU-CVE-2024-39496
Ubuntu:24.04:LTSlinux-aws6.8.0-1015.16UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-aws-5.19no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-aws-6.2no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-aws-6.5no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-aws-6.86.8.0-1015.16~22.04.1UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-azure5.15.0-1073.82UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-azure5.15.0-1073.82USN-7021-1
Ubuntu:24.04:LTSlinux-azure6.8.0-1014.16UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-azure-5.19no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-azure-6.2no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-azure-6.5no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-azure-6.86.8.0-1014.16~22.04.1UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-azure-fde5.15.0-1073.82.1UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-azure-fde5.15.0-1073.82.1USN-7021-5
Ubuntu:22.04:LTSlinux-azure-fde-5.19no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-azure-fde-6.2no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-gcp5.15.0-1069.77UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-gcp5.15.0-1069.77USN-7021-1
Ubuntu:24.04:LTSlinux-gcp6.8.0-1014.16UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-gcp-5.19no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-gcp-6.2no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-gcp-6.5no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-gcp-6.86.8.0-1014.16~22.04.1UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-gke5.15.0-1067.73UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-gke5.15.0-1067.73USN-7021-1
Ubuntu:24.04:LTSlinux-gke6.8.0-1010.13UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-gkeop5.15.0-1053.60UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-gkeop5.15.0-1053.60USN-7021-1
Ubuntu:22.04:LTSlinux-hwe-5.19no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-hwe-6.2no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-hwe-6.5no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-hwe-6.86.8.0-45.45~22.04.1UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-ibm5.15.0-1063.66UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-ibm5.15.0-1063.66USN-7021-1
Ubuntu:24.04:LTSlinux-ibm6.8.0-1012.12UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-ibm-6.86.8.0-1012.12~22.04.1UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-intel-iotg5.15.0-1065.71USN-7021-1
Ubuntu:22.04:LTSlinux-intel-iotg5.15.0-1065.71UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-kvm5.15.0-1067.72USN-7021-1
Ubuntu:22.04:LTSlinux-kvm5.15.0-1067.72UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-lowlatency5.15.0-122.132UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-lowlatency5.15.0-122.132USN-7021-3
Ubuntu:24.04:LTSlinux-lowlatency6.8.0-44.44.1UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-lowlatency-hwe-5.19no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.2no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.5no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.86.8.0-44.44.1~22.04.1UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-nvidia5.15.0-1065.66UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-nvidia5.15.0-1065.66USN-7021-1
Ubuntu:24.04:LTSlinux-nvidia6.8.0-1013.14UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-nvidia-6.2no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-nvidia-6.5no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-nvidia-6.86.8.0-1013.14~22.04.1UBUNTU-CVE-2024-39496
Ubuntu:24.04:LTSlinux-nvidia-lowlatency6.8.0-1013.14.1UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-nvidia-tegra5.15.0-1030.30UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-nvidia-tegra-igx5.15.0-1019.19UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-oem-5.17no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-oem-6.0no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-oem-6.1no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-oem-6.5no fix listedUBUNTU-CVE-2024-39496
Ubuntu:24.04:LTSlinux-oem-6.86.8.0-1012.12UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-oracle5.15.0-1068.74UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-oracle5.15.0-1068.74USN-7021-1
Ubuntu:24.04:LTSlinux-oracle6.8.0-1012.12UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-oracle-6.5no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-oracle-6.86.8.0-1012.12~22.04.1UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-raspi5.15.0-1063.66USN-7021-1
Ubuntu:22.04:LTSlinux-raspi5.15.0-1063.66UBUNTU-CVE-2024-39496
Ubuntu:24.04:LTSlinux-raspi6.8.0-1011.12UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-realtimeno fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-riscvno fix listedUBUNTU-CVE-2024-39496
Ubuntu:24.04:LTSlinux-riscv6.8.0-44.44.1UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-riscv-5.19no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-riscv-6.5no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-riscv-6.86.8.0-44.44.1~22.04.1UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-starfive-5.19no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-starfive-6.2no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-starfive-6.5no fix listedUBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-xilinx-zynqmp5.15.0-1036.40UBUNTU-CVE-2024-39496
Ubuntu:22.04:LTSlinux-xilinx-zynqmp5.15.0-1036.40USN-7021-2

Affected products (as reported)

VendorProductVersions
Linux Linux 5b316468983dfa9473ff0f1c42e4e30b4c267141 – before 17765964703b88d8befd899f8501150bb7e07e435b316468983dfa9473ff0f1c42e4e30b4c267141 – before 092571ef9a812566c8f2c9038d9c2a64c49788d65b316468983dfa9473ff0f1c42e4e30b4c267141 – before a0cc006f4214b87e70983c692e05bb36c59b57525b316468983dfa9473ff0f1c42e4e30b4c267141 – before 0090d6e1b210551e63cf43958dc7a1ec942cdde9
Linux Linux 5.11

References