CVE & CISA-KEV Catalog

CVE-2024-35798

MEDIUM
4.7
CVSS v3
NVD

Description

In the Linux kernel, the following vulnerability has been resolved: btrfs: fix race in read_extent_buffer_pages() There are reports from tree-checker that detects corrupted nodes, without any obvious pattern so possibly an overwrite in memory. After some debugging it turns out there's a race when reading an extent buffer the uptodate status can be missed. To prevent concurrent reads for the same extent buffer, read_extent_buffer_pages() performs these checks: /* (1) */ if (test_bit(EXTENT_BUFFER_UPTODATE, &eb->bflags)) return 0; /* (2) */ if (test_and_set_bit(EXTENT_BUFFER_READING, &eb->bflags)) goto done; At this point, it seems safe to start the actual read operation. Once that completes, end_bbio_meta_read() does /* (3) */ set_extent_buffer_uptodate(eb); /* (4) */ clear_bit(EXTENT_BUFFER_READING, &eb->bflags); Normally, this is enough to ensure only one read happens, and all other callers wait for it to finish before returning. Unfortunately, there is a racey interleaving: Thread A | Thread B | Thread C ---------+----------+--------- (1) | | | (1) | (2) | | (3) | | (4) | | | (2) | | | (1) When this happens, thread B kicks of an unnecessary read. Worse, thread C will see UPTODATE set and return immediately, while the read from thread B is still in progress. This race could result in tree-checker errors like this as the extent buffer is concurrently modified: BTRFS critical (device dm-0): corrupted node, root=256 block=8550954455682405139 owner mismatch, have 11858205567642294356 expect [256, 18446744073709551360] Fix it by testing UPTODATE again after setting the READING bit, and if it's been set, skip the unnecessary read. [ minor update of changelog ]

How to fix

Remediation Available
linuxDebian
Fixed in:6.7.12-1CVE-2024-35798
Fixed in:6.7.12-1CVE-2024-35798
linuxUbuntu
Fixed in:6.8.0-35.35USN-6816-1
linux-awsUbuntu
Fixed in:6.8.0-1009.9USN-6817-1
linux-azureUbuntu
Fixed in:6.8.0-1008.8USN-6817-3
linux-gcpUbuntu
Fixed in:6.8.0-1008.9USN-6817-1
linux-gkeUbuntu
Fixed in:6.8.0-1004.7USN-6817-3
linux-ibmUbuntu
Fixed in:6.8.0-1006.6USN-6816-1
linux-image-6.8.0-1004-gkeUbuntu
Fixed in:6.8.0-1004.7USN-6817-3
linux-image-6.8.0-1005-raspiUbuntu
Fixed in:6.8.0-1005.5USN-6816-1
linux-image-6.8.0-1006-ibmUbuntu
Fixed in:6.8.0-1006.6USN-6816-1
linux-image-6.8.0-1006-oemUbuntu
Fixed in:6.8.0-1006.6USN-6817-2
linux-image-6.8.0-1006-oracleUbuntu
Fixed in:6.8.0-1006.6USN-6878-1
linux-image-6.8.0-1006-oracle-64kUbuntu
Fixed in:6.8.0-1006.6USN-6878-1
linux-image-6.8.0-1008-azureUbuntu
Fixed in:6.8.0-1008.8USN-6817-3
linux-image-6.8.0-1008-azure-fdeUbuntu
Fixed in:6.8.0-1008.8USN-6817-3
linux-image-6.8.0-1008-gcpUbuntu
Fixed in:6.8.0-1008.9USN-6817-1
linux-image-6.8.0-1009-awsUbuntu
Fixed in:6.8.0-1009.9USN-6817-1
linux-image-6.8.0-35-genericUbuntu
Fixed in:6.8.0-35.35+1USN-6816-1
linux-image-6.8.0-35-generic-64kUbuntu
Fixed in:6.8.0-35.35+1USN-6816-1
linux-image-6.8.0-35-lowlatencyUbuntu
Fixed in:6.8.0-35.35.1USN-6816-1
linux-image-6.8.0-35-lowlatency-64kUbuntu
Fixed in:6.8.0-35.35.1USN-6816-1
linux-image-awsUbuntu
Fixed in:6.8.0-1009.9USN-6817-1
linux-image-azureUbuntu
Fixed in:6.8.0-1008.8USN-6817-3
linux-image-azure-fdeUbuntu
Fixed in:6.8.0-1008.8USN-6817-3
linux-image-gcpUbuntu
Fixed in:6.8.0-1008.9USN-6817-1
linux-image-genericUbuntu
Fixed in:6.8.0-35.35USN-6816-1
linux-image-generic-64kUbuntu
Fixed in:6.8.0-35.35USN-6816-1
linux-image-generic-64k-hwe-24.04Ubuntu
Fixed in:6.8.0-35.35USN-6816-1
linux-image-generic-hwe-24.04Ubuntu
Fixed in:6.8.0-35.35USN-6816-1
linux-image-generic-lpaeUbuntu
Fixed in:6.8.0-35.35USN-6816-1
linux-image-gkeUbuntu
Fixed in:6.8.0-1004.7USN-6817-3
linux-image-ibmUbuntu
Fixed in:6.8.0-1006.6USN-6816-1
linux-image-ibm-classicUbuntu
Fixed in:6.8.0-1006.6USN-6816-1
linux-image-ibm-lts-24.04Ubuntu
Fixed in:6.8.0-1006.6USN-6816-1
linux-image-kvmUbuntu
Fixed in:6.8.0-35.35USN-6816-1
linux-image-lowlatencyUbuntu
Fixed in:6.8.0-35.35.1USN-6816-1
linux-image-lowlatency-64kUbuntu
Fixed in:6.8.0-35.35.1USN-6816-1
linux-image-oem-24.04Ubuntu
Fixed in:6.8.0-1006.6+1USN-6817-2
linux-image-oem-24.04aUbuntu
Fixed in:6.8.0-1006.6+1USN-6817-2
linux-image-oracleUbuntu
Fixed in:6.8.0-1006.6USN-6878-1
linux-image-oracle-64kUbuntu
Fixed in:6.8.0-1006.6USN-6878-1
linux-image-raspiUbuntu
Fixed in:6.8.0-1005.5USN-6816-1
linux-image-virtualUbuntu
Fixed in:6.8.0-35.35USN-6816-1
linux-image-virtual-hwe-24.04Ubuntu
Fixed in:6.8.0-35.35USN-6816-1
linux-lowlatencyUbuntu
Fixed in:6.8.0-35.35.1USN-6816-1
linux-oem-6.8Ubuntu
Fixed in:6.8.0-1006.6USN-6817-2
linux-oracleUbuntu
Fixed in:6.8.0-1006.6USN-6878-1
linux-raspiUbuntu
Fixed in:6.8.0-1005.5USN-6816-1

Remediation is compiled from vendor and distribution security advisories. Always confirm against the linked source for your exact version and platform.

CVSS v3 Vector

Exploitability

Attack VectorLocal
Attack ComplexityHigh
Privileges RequiredLow
User InteractionNone
ScopeUnchanged

Impact

ConfidentialityNone
IntegrityNone
AvailabilityHigh

CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H

Exploit Intelligence

0.17%probability of exploitation in 30 days
6thpercentile

Low risk: more likely to be exploited than 6% of all known CVEs.

References

Related Vulnerabilities

Other CWE-362 (Race Condition) vulnerabilities, ordered by exploit likelihood. View all

CVESeverityCVSSEPSSExploitedFix
CVE-2024-6387High8.1100%-Fix
CVE-2023-36884High7.599%KEV + RansomFix
CVE-2018-15473Medium5.399%-Fix
CVE-2024-27983High8.287%-Fix
CVE-2014-0226Medium6.886%-Fix
CVE-2016-5195High7.084%KEVFix
Embed a live status badge for CVE-2024-35798
CVE-2024-35798 severity badge

Markdown

[![CVE-2024-35798](https://tridentstack.com/cve/badge/CVE-2024-35798.svg)](https://tridentstack.com/cve/CVE-2024-35798)

HTML

<a href="https://tridentstack.com/cve/CVE-2024-35798"><img src="https://tridentstack.com/cve/badge/CVE-2024-35798.svg" alt="CVE-2024-35798"></a>

Find and fix vulnerabilities across your fleet

TridentStack Control continuously scans your Windows, macOS, and Linux fleet for known vulnerabilities, prioritizes them by severity and active exploitation, and patches them automatically.

Start free

This product uses NVD data but is not endorsed or certified by the NVD. EPSS scores courtesy of FIRST.org (https://www.first.org/epss). Source: CISA KEV Catalog. Data as of 2025-09-19.