riscv: Prevent NULL pointer dereference in machine_kexec_prepare()
3Vexday Risk Score
No sign of exploitation. No public exploitation artifact known so far.
ssvc Trackepss 0.2%
exploitation probability
0.2%top 89% of all CVEs
observed exploitation
nono source reports it
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.
Affected products
Linux · LinuxReferences
https://git.kernel.org/stable/c/606cc45e871e34b80a2f63874f069387a5b44176https://git.kernel.org/stable/c/6ad6954492697681ebcfc1beb0eb384406cd4b65https://git.kernel.org/stable/c/81bbcff0c053c4f5c711c31a9b72fc492bd96c3fhttps://git.kernel.org/stable/c/b5f92cc4e24a298bf390b0b189a4b888c0900161https://git.kernel.org/stable/c/c462e15497dc40abe369b3be7a2c91ac5d1be6f9https://git.kernel.org/stable/c/d5b2752a17efc165793ae38f2c24b5ed9c04ffdehttps://git.kernel.org/stable/c/eadd0c2c76aee6a738f17f251434c77db3c606c8