"I wouldn’t want my unsafe code to run my pacemaker": An Interview Study on the Use, Comprehension, and Perceived Risks of Unsafe Rust
In 32nd USENIX Security Symposium, USENIX Security '23, Anaheim, CA, USA, August 9-11, 2023
Abstract
Modern software development still struggles with memory safety issues as a significant source of security bugs. The Rust programming language addresses memory safety and provides further security features. However, Rust offers developers the ability to opt out of some of these guarantees using unsafe Rust. Previous work found that the source of many security vulnerabilities is unsafe Rust.
In this paper, we are the first to see behind the curtain and investigate developers' motivations for, experiences with, and risk assessment of using unsafe Rust in depth. Therefore, we conducted 26 semi-structured interviews with experienced Rust developers. We find that developers aim to use unsafe Rust sparingly and with caution. However, we also identify common misconceptions and tooling fatigue that can lead to security issues, find that security policies for using unsafe Rust are widely missing and that participants underestimate the security risks of using unsafe Rust.
We conclude our work by discussing the findings and recommendations for making the future use of unsafe Rust more secure.
Reference
@inproceedings{conf/usenix/hoeltervennhoff23,
title = {``I wouldn’t want my unsafe code to run my pacemaker'': An Interview Study on the Use, Comprehension, and Perceived Risks of Unsafe Rust},
author = {Sandra Höltervennhoff and
Philip Klostermeyer and
Noah Wöhler and
Sascha Fahl and
Yasemin Acar},
booktitle = {In 32nd {USENIX} Security Symposium, {USENIX} Security '23, Anaheim, CA, USA, August 9-11, 2023},
month = {Aug},
year = {2023},
publisher = {USENIX Association},
url = {https://www.usenix.org/conference/usenixsecurity23/presentation/holtervennhoff},
}