CVE-2024-26871

Source
https://nvd.nist.gov/vuln/detail/CVE-2024-26871
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2024-26871.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2024-26871
Downstream
Published
2024-04-17T10:27:31Z
Modified
2025-10-09T05:01:30.264663Z
Summary
f2fs: fix NULL pointer dereference in f2fs_submit_page_write()
Details

In the Linux kernel, the following vulnerability has been resolved:

f2fs: fix NULL pointer dereference in f2fssubmitpage_write()

BUG: kernel NULL pointer dereference, address: 0000000000000014 RIP: 0010:f2fssubmitpagewrite+0x6cf/0x780 [f2fs] Call Trace: <TASK> ? showregs+0x6e/0x80 ? _die+0x29/0x70 ? pagefaultoops+0x154/0x4a0 ? prbreadvalid+0x20/0x30 ? _irqworkqueuelocal+0x39/0xd0 ? irqworkqueue+0x36/0x70 ? douseraddrfault+0x314/0x6c0 ? excpagefault+0x7d/0x190 ? asmexcpagefault+0x2b/0x30 ? f2fssubmitpagewrite+0x6cf/0x780 [f2fs] ? f2fssubmitpagewrite+0x736/0x780 [f2fs] dowritepage+0x50/0x170 [f2fs] f2fsoutplacewritedata+0x61/0xb0 [f2fs] f2fsdowritedatapage+0x3f8/0x660 [f2fs] f2fswritesingledatapage+0x5bb/0x7a0 [f2fs] f2fswritecachepages+0x3da/0xbe0 [f2fs] ... It is possible that other threads have added this fio to io->bio and submitted the io->bio before entering f2fssubmitpagewrite(). At this point io->bio = NULL. If isendzoneblkaddr(sbi, fio->newblkaddr) of this fio is true, then an NULL pointer dereference error occurs at bio_get(io->bio). The original code for determining zone end was after "out:", which would have missed some fio who is zone end. I've moved this code before "skip:" to make sure it's done for each fio.

References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
e067dc3c6b9c419bac43c6a0be2d85f44681f863
Fixed
8e2ea8b04cb8d976110c4568509e67d6a39b2889
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
e067dc3c6b9c419bac43c6a0be2d85f44681f863
Fixed
4c122a32582b67bdd44ca8d25f894ee2dc54f566
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
e067dc3c6b9c419bac43c6a0be2d85f44681f863
Fixed
6d102382a11d5e6035f6c98f6e508a38541f7af3
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
e067dc3c6b9c419bac43c6a0be2d85f44681f863
Fixed
c2034ef6192a65a986a45c2aa2ed05824fdc0e9f

Affected versions

v6.*

v6.4
v6.4-rc2
v6.4-rc3
v6.4-rc4
v6.4-rc5
v6.4-rc6
v6.4-rc7
v6.5
v6.5-rc1
v6.5-rc2
v6.5-rc3
v6.5-rc4
v6.5-rc5
v6.5-rc6
v6.5-rc7
v6.6
v6.6-rc1
v6.6-rc2
v6.6-rc3
v6.6-rc4
v6.6-rc5
v6.6-rc6
v6.6-rc7
v6.6.1
v6.6.10
v6.6.11
v6.6.12
v6.6.13
v6.6.14
v6.6.15
v6.6.16
v6.6.17
v6.6.18
v6.6.19
v6.6.2
v6.6.20
v6.6.21
v6.6.22
v6.6.3
v6.6.4
v6.6.5
v6.6.6
v6.6.7
v6.6.8
v6.6.9
v6.7
v6.7-rc1
v6.7-rc2
v6.7-rc3
v6.7-rc4
v6.7-rc5
v6.7-rc6
v6.7-rc7
v6.7-rc8
v6.7.1
v6.7.10
v6.7.2
v6.7.3
v6.7.4
v6.7.5
v6.7.6
v6.7.7
v6.7.8
v6.7.9
v6.8
v6.8-rc1
v6.8-rc2
v6.8-rc3
v6.8-rc4
v6.8-rc5
v6.8-rc6
v6.8-rc7
v6.8.1

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
6.5.0
Fixed
6.6.23
Type
ECOSYSTEM
Events
Introduced
6.7.0
Fixed
6.7.11
Type
ECOSYSTEM
Events
Introduced
6.8.0
Fixed
6.8.2