vix.ing · top · new · best · stats

Towards Linux Kernel Memory Safety

2017/10/17 by Elena Reshetova, Hans Liljestrand, Andrew Paverd +1 · 1 voice · 4 citations
Computer Science · #Digital and Cyber Forensics #Distributed systems and fault tolerance #Kernel (algebra) #Linux kernel #Memory leak #Memory protection #Memory safety #Pointer (user interface) #Security and Verification in Computing #System call #cs.CR #cs.OS

paper · pdf · doi:10.1002/spe.2638

published in Software Practice and Experience 48(12), 2237-2256 (Wiley)

arxiv created 2017/10/17 · openalex created_date 2017/11/10 · openalex publication_date 2018/09/19 · arxiv updated 2018/10/03 · openalex updated_date 2026/08/05

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.

Discussions

Related