dm era: fix out-of-bounds memory access for non-zero start sector
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 5.10.261, 5.15.212, 6.1.178, 6.6.145, 6.12.97, and 2 more
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: no
- Technical impact: total
Summary
In the Linux kernel, the following vulnerability has been resolved: dm era: fix out-of-bounds memory access for non-zero start sector dm-era tracks writes in target-relative blocks, but era_map() calculates the writeset block before applying the target offset. Tables with a non-zero start sector can therefore pass an absolute mapped-device block to metadata_current_marked(). If the absolute block is beyond the current writeset size, writeset_marked() tests past the end of the in-core bitset. KASAN reports this as a vmalloc-out-of-bounds access. Apply the target offset before calculating the era block so writeset lookups use the target-relative block number.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: total
- Record last updated
Affected versions
- Linux Linux
From eec40579d84873dfb7021eb24c50360f073237c5 · fixed in fe94a0b14010a3c267ff9a2508afb4f27ff1c5bf; From eec40579d84873dfb7021eb24c50360f073237c5 · fixed in e3ffa8e492e5cdee62d916ee3e9244ccce2b73c5; From eec40579d84873dfb7021eb24c50360f073237c5 · fixed in 9946a7176bd8c25ddd6e5f1799c54e572ee6bf0f; From eec40579d84873dfb7021eb24c50360f073237c5 · fixed in 7e1822f83c5a1ee7b4a19e98edde8770a10b4c71; From eec40579d84873dfb7021eb24c50360f073237c5 · fixed in db5f9b4601f0012038e5a2628aedec2f47933380; From eec40579d84873dfb7021eb24c50360f073237c5 · fixed in 1fcb5e29dd7a5b85adb9d8b539911741d878e829; From eec40579d84873dfb7021eb24c50360f073237c5 · fixed in bafe3e720cdac38cd7ea4eb7852a8f2dbe1bbfe6; From eec40579d84873dfb7021eb24c50360f073237c5 · fixed in a868196f03c2b19418ae3d2b69e195d668a271e5
- Linux Linux
3.15
- KernelLinux
From 3.15.0 · fixed in 5.10.261; From 5.11.0 · fixed in 5.15.212; From 5.16.0 · fixed in 6.1.178; From 6.2.0 · fixed in 6.6.145; From 6.7.0 · fixed in 6.12.97; From 6.13.0 · fixed in 6.18.40; From 6.19.0 · fixed in 7.1.5
References 8
git.kernel.org
- stable/c/fe94a0b14010a3c267ff9a2508afb4f27ff1c5bf
- stable/c/e3ffa8e492e5cdee62d916ee3e9244ccce2b73c5
- stable/c/9946a7176bd8c25ddd6e5f1799c54e572ee6bf0f
- stable/c/7e1822f83c5a1ee7b4a19e98edde8770a10b4c71
- stable/c/db5f9b4601f0012038e5a2628aedec2f47933380
- stable/c/1fcb5e29dd7a5b85adb9d8b539911741d878e829
- stable/c/bafe3e720cdac38cd7ea4eb7852a8f2dbe1bbfe6
- stable/c/a868196f03c2b19418ae3d2b69e195d668a271e5