arXiv · 1710.06175
Towards Linux Kernel Memory Safety
Abstract
The security of billions of devices worldwide depends on the security and robustness of the mainline Linux kernel. However, the increasing number of kernel-specific vulnerabilities, especially memory safety vulnerabilities, shows that the kernel is a popular and practically exploitable target. Two major causes of memory safety vulnerabilities are reference counter overflows (temporal memory errors) and lack of pointer bounds checking (spatial memory errors). To succeed in practice, security mechanisms for critical systems like the Linux kernel must also consider performance and deployability as critical design objectives. We present and systematically analyze two such mechanisms for improving memory safety in the Linux kernel: (a) an overflow-resistant reference counter data structure designed to accommodate typical reference counter usage in kernel source code, and (b) runtime pointer bounds checking using Intel MPX in the kernel.
Explore related subjects
Keep this discovery
Elena Reshetova, Hans Liljestrand, Andrew Paverd, N. Asokan. 2017-10-17. Towards Linux Kernel Memory Safety. https://doi.org/10.1002/spe.2638
Cite the original work for its findings. Save a collection to share your selection of sources.