Building Sound Evaluation Practices for Rust-Based Security Frameworks
David Paaßen, Lucas Davi
Abstract
Background: Rust is a modern programming language known for its focus on usability, concurrency, and security. However, empirical studies reveal that Rust is still affected by software vulnerabilities, with hundreds of memory safety issues found in Rust programs, including Rust's standard library. As a result, additional tool-assisted security testing is crucial to enhance the security of Rust code. Evaluating such tools, however, is highly complex. While there is substantial research on evaluating C/C++ security frameworks, including test sets, serious issues in published evaluations have been identified, undermining their scientific soundness and reproducibility. In practice, selecting an inadequate implementation (e.g., a fuzzer) can lead to missed vulnerabilities ultimately compromising a program's security. Aims: Our methodology aims to help researchers to conduct scientifically sound evaluations in order to prevent similar issues with the evaluation of security tools and frameworks in the Rust ecosystem. Method: We systematically analyze existing evaluation literature to develop the first sound methodology for Rust based evaluations. Our guidelines provide enough flexibility to support a variety of use cases. To quantify the performance of a security tool, we introduce an automated approach to inject unsafe code coverage oracles, which require no forward porting, avoid overfitting, and allow updating test sets in the future. We also present methods to quantify the diversity of a Rust test set, ensuring that the results are applicable to a large set of existing Rust programs. We practically apply our methodology in our evaluation of the most popular Rust fuzzers. Results: We show the practical applicability of our design and conduct an evaluation with a diverse test set of 20 Rust projects. [...]
Create a lesson
Related papers
Tulva: Practical Asynchronous Threshold FHE
Valerio Cini, Antonio Guimarães, Russell W. F. Lai et al.
Phantomware: a Data Augmentation Framework for the Detection of Emerging Malware Campaigns
Antonino Rullo
Towards Efficient Threat Intelligence Instruction Tuning via Quality-Aware and Optimal Transport-Guided Data Selection
Jiyu Tian, Mingchu Li, Xiangwei Chen et al.
P2Patch: Exploit-Guided Vulnerability Repair
Mohsen Iranmanesh, Sina Moradi Sabet, Sina Marefat et al.
Secret Sharing from Non-Extractable Randomness
Divesh Aggarwal
FreeSBee: A Constant-Time Compilation Pipeline
Julian Ganz, David Knothe, David Oswald et al.