riscv: Prevent NULL pointer dereference in machine_kexec_prepare()
- 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.15.212, 5.18, 5.19
- 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
Summary
In the Linux kernel, the following vulnerability has been resolved: riscv: Prevent NULL pointer dereference in machine_kexec_prepare() A NULL pointer dereference issue is noticed in riscv's machine_kexec_prepare(), where image->segment[i].buf might be NULL and copied unchecked. The NULL buf comes from ima_add_kexec_buffer(), where kbuf is added by kexec_add_buffer(), but kbuf.buffer is NULL, then it is copied without a check in machine_kexec_prepare(): kexec_file_load -> kimage_file_alloc_init() -> kimage_file_prepare_segments() -> ima_add_kexec_buffer() -> kexec_add_buffer() -> machine_kexec_prepare() -> memcpy() Address this by adding a check before the data copy attempt.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From 5.15.47 · fixed in 5.15.212; From 5.17.15 · fixed in 5.18; From 5.18.4 · fixed in 5.19
- Linux Linux
5.19
References 7
git.kernel.org
- stable/c/606cc45e871e34b80a2f63874f069387a5b44176
- stable/c/c462e15497dc40abe369b3be7a2c91ac5d1be6f9
- stable/c/b5f92cc4e24a298bf390b0b189a4b888c0900161
- stable/c/6ad6954492697681ebcfc1beb0eb384406cd4b65
- stable/c/eadd0c2c76aee6a738f17f251434c77db3c606c8
- stable/c/d5b2752a17efc165793ae38f2c24b5ed9c04ffde
- stable/c/81bbcff0c053c4f5c711c31a9b72fc492bd96c3f