After years of review and deliberation, Linux creator and principal developer Linus Torvalds approved a new security feature for the Linux kernel, referred to as ‘lockdown.’
Torvalds said:
“When enabled, various pieces of kernel functionality are restricted. This includes restricting access to kernel features that may allow arbitrary code execution via code supplied by user-land processes; blocking processes from writing or reading /dev/mem and /dev/kmem memory; block access to opening /dev/port to prevent raw port access; enforcing kernel module signatures; and many more others.”
This functionality should be included in the soon-to-be-released Linux kernel 5.4 branches and should ship as an LSM (Linux Security Module). Usage is optional as their exists risks that the new feature could break existing systems.
The #kernel lockdown patches after a patch-by-patch review from Linus got merged for #Linux 5.4:https://t.co/4shXJHC5Ywhttps://t.co/vrBygJhKn5
Those changes improve support for #UEFI Secure Boot and thus make many patches obsolete that a lot of distros ship for years now. o/ pic.twitter.com/vJ5Xdk8LfH
— Thorsten Leemhuis – the Linux kernel logger (1/5) (@kernellogger) September 28, 2019
The lockdown function strengthens the divide between user-land processes and kernel code. The function accomplishes this by preventing all accounts, including the root account, from interacting with kernel code. It is something never done before, at least by design, until now.
This latest functionality is welcome news for conscious security users and affords much-requested additional security for applications like UEFI SecureBoot. The feature is opt-in and limits the bits the kernel can touch.
Lockdown places no restrictions by default. Lockdown support functionality is activated with the lockdown= kernel parameter. Setting lockdown=integrity blocks kernel features that allow user-space to modify the running kernel. Additionally, setting lockdown=confidentiality blocks user-space from extracting “confidential information” from the running kernel. The Kconfig SECURITY_LOCKDOWN_LSM option enables the Linux security module, while the SECURITY_LOCKDOWN_LSM_EARLY provides the ability to force the integrity/confidentiality lockdown modes permanently.
Limitations enforced by the newly approved feature include blocking kernel module parameters that manipulate hardware setting, hibernation, and support prevention. Also, blocking writes to /dev/mem (even when root), CPU MSRs access restrictions, and a host of other safeguards.
Other significant features for the Linux 5.4 branch include:
- DM-Clone as a new mans of remotely replicating block devices
- Initial Microsoft exFAT file-system support
- Case-insensitive F2FS support
- Support for several new AMD RadCon GPU targets
- A kernel fixes around UMIP to help various Windows applications in Wine.
- A host of other new hardware support
Expect the official release of the Linux 5.4 kernel as stable in late November or early December.