Information
The operating system must prevent the loading of a new kernel for later execution.
Changes to any software components can have significant effects on the overall security of the operating system. This requirement ensures the software has not been tampered with and that it has been provided by a trusted vendor.
Disabling kexec_load prevents an unsigned kernel image (that could be a windows kernel or modified vulnerable kernel) from being loaded. Kexec can be used subvert the entire secureboot process and should be avoided at all costs especially since it can load unsigned kernel images.
Solution
Set the following parameter in /etc/sysctl.conf or a file in /etc/sysctl.d/ ending inconf :
- kernel.kexec_load_disabled = 1
Example:
# printf '\n%s' "kernel.kexec_load_disabled = 1" >> /etc/sysctl.d/60-kernel_sysctl.conf
Run the following command to set the active kernel parameter:
# sysctl -w kernel.kexec_load_disabled=1
Note: If these settings appear in a canonically later file, or later in the same file, these settings will be overwritten