arrow
Return

Safer Linux Kernel Modules Using the D Programming Language

delete2022-01-01
delete0
delete
OA
AI
C
Constantin-Eduard Stăniloiu
A
Alexandru Militaru
R
Răzvan Nitu *
R
Răzvan Deaconescu
DOI:10.1109/ACCESS.2022.3229461delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
Since its creation, the Linux kernel has gained international recognition and has been employed on a large range of devices: servers, supercomputers, smart devices and embedded systems. Given its popularity, the security of the kernel has become a critical research topic. As a consequence, a wide range of third party tools were created to detect bugs in its implementation. However, new vulnerabilities are discovered and exploited every year. The explanation for this phenomenon lies in the fact that the programming language that is used for the kernel implementation, C, is designed to allow unsafe memory operations. In this paper, we show that it is possible to incrementally transition the kernel code from C to a memory safe programming language, D, by porting and integrating a device driver. In addition, we propose a series of code transformations that allow the D compiler to reason about the safety of certain memory operations. Our implementation increases the security guarantees of the kernel without incurring any performance penalties.
Keywords:
Memory safety
Linux kernel
driver development
security
D programming language

Journal

IEEE Access cover
IEEE Access
IF:
3.6
Papers:
9.8W
Citations:
29.4W

Organization

Cited Papers

Cited Papers

Effects of Elevated Peroxidase Levels and Corn Earworm Feeding on Gene Expression in Tomato
err2012-11-08
err0
PREAI
errHideaki Suzuki; Patrick F. Dowd; Eric T. Johnson; Sue M. Hum-Musser; Richard O. Musser
errShare
errSave
Pharmacogenomic identification of small molecules for lineage specific manipulation of subventricular zone germinal activity
err2017-03-28
err0
errOAAI
errKasum Azim; Diane Angonin; Guillaume Marcy; Francesca Pieropan; Andrea Rivera; Vanessa Donega; Claudio Cantù; Gareth Williams; Benedikt Berninger; Arthur M. Butt; Olivier Raineteau
errShare
errSave
Machine Learning Methods for the Prediction of Micromagnetic Magnetization Dynamics
err2022-02-01
err0
errOAAI
errSebastian Schaffer; Norbert J. Mauser; Thomas Schrefl; Dieter Suess; Lukas Exl
errShare
errSave
Review of Lisdexamfetamine Dimesylate in Adults With Attention-Deficit/Hyperactivity Disorder
err2017-08-23
err0
errOAAI
errJadwiga Najib; Dexter Wimer; Julie Zeng; Kristina W Lam; Natalya Romanyak; Eva Paige Morgan; Anu Thadavila
errShare
errSave