Information
System kernel is responsible for memory, disk, and task management. The kernel provides a gateway between the system hardware and software. Kubernetes requires kernel access to allocate resources to the Control Plane. Threat actors that penetrate the system kernel can inject malicious code or hijack the Kubernetes architecture. It is vital to implement protections through Kubernetes components to reduce the attack surface.
Solution
On the Control Plane, run the command:
ps -ef | grep kubelet
Remove the '--protect-kernel-defaults' option if present.
Note the path to the Kubernetes Kubelet config file (identified by --config).
Edit the Kubernetes Kubelet config file:
Set 'protectKernelDefaults' to 'true'.
Restart the kubelet service using the following command:
systemctl daemon-reload && systemctl restart kubelet