CVE-2024-45023: md/raid1: Fix data corruption for degraded array with slow disk
In the Linux kernel, the following vulnerability has been resolved:
md/raid1: Fix data corruption for degraded array with slow disk
read_balance() will avoid reading from slow disks as much as possible,
however, if valid data only lands in slow disks, and a new normal disk
is still in recovery, unrecovered data can be read:
raid1_read_request
read_balance
raid1_should_read_first
-> return false
choose_best_rdev
-> normal disk is not recovered, return -1
choose_bb_rdev
-> missing the checking of recovery, return the normal disk
-> read unrecovered data
Root cause is that the checking of recovery is missing in
choose_bb_rdev(). Hence add such checking to fix the problem.
Also fix similar problem in choose_slow_rdev().
Security readout for executives and security teams
Plain-English summary
A Linux software RAID1 array can return unrecovered data when degraded, a disk is slow, and a replacement disk is rebuilding. This can silently corrupt data or produce incorrect reads. The issue matters most to systems relying on RAID1 for critical storage resilience.
Executive priority
Treat as high priority for storage servers with Linux MD RAID1, especially arrays currently degraded or rebuilding. Accelerate vendor-supported kernel updates and verify data integrity after risky recovery windows. Systems not using MD RAID1 are not shown as exposed by the supplied evidence.
Technical view
Linux MD RAID1 read selection omitted recovery-state checks in choose_bb_rdev() and choose_slow_rdev(). Under specific degraded-array and recovery conditions, read_balance() can select an incompletely recovered normal disk instead of the slow disk holding valid data. The referenced stable-kernel changes add the missing checks.
Likely exposure
Exposure requires Linux MD RAID1 plus a specific operational state: a degraded array, a slow disk containing valid data, and another disk still recovering. The supplied record lists affected kernel entries including 6.9, 6.10.7, and 6.11, but its version formatting is incomplete or ambiguous.
Exploitation context
The CVSS vector indicates local access, low complexity, and low privileges, without user interaction. CISA KEV status is false, and the supplied sources provide no evidence of active exploitation. The documented risk is primarily condition-triggered data corruption rather than a demonstrated attack campaign.
Researcher notes
The failure path is read selection during recovery: choose_best_rdev() rejects an unrecovered device, but alternate selectors lacked equivalent recovery checks. The supplied CVSS rates confidentiality, integrity, and availability impacts high; however, the description most directly establishes incorrect reads and data corruption. No exploit proof or weaponization evidence is supplied.
Mitigation direction
Update to a vendor-supported kernel containing the referenced stable-kernel fix.
Check distribution or appliance vendor advisories for exact fixed package versions.
Prioritize RAID1 hosts that are degraded, rebuilding, or reporting slow disks.
Maintain verified backups before recovery, rebuild, or kernel maintenance operations.
Validation and detection
Inventory Linux kernel versions and identify systems using MD RAID1.
Review RAID health for degraded, recovering, replacement, or unusually slow members.
Confirm the installed vendor kernel incorporates either referenced stable fix.
Run approved integrity checks against backups or application-level checksums after affected recovery events.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2024-45023 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.