arrow
Return

RUSTGUARD: Detecting Rust Data Leak Issues with Context-Sensitive Static Taint Analysis

delete2026-01-01
delete0
PRE
AI
D
Deng, Shanlin
M
Mingliang Liu
S
Si Wu
B
Baojian Hua *
DOI:10.1007/978-981-95-3537-8_21delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
Rust is a promising language by providing strong safety guarantees through its advanced features including borrowing semantics and lifetime checking, and has been adopted in security-critical domains. However, Rust programs may still be vulnerable to sensitive data leak issues due to its lack of information flow checking capabilities. As a result, these data leaks undermine Rusts strong security guarantees. In this paper, to fill the current gap, we propose a novel information flow checking approach for Rust language by leveraging static taint analysis, to detect potential data leak issues. We first propose an approach to annotate sensitive data within Rust programs by utilizing Rusts macro features. We then design an information flow checking algorithm based on static taint analysis, in which we use tainted abstract domains to model data sensitivity and use transfer functions to model the data flow. Furthermore, we design a context-sensitive algorithm to track the propagation of tainted values across procedure boundaries by leveraging a functional approach. We implement our approach in a software prototype RustGuard by extending Rusts official rustc compiler and conduct extensive evaluations with it. Our evaluation results demonstrate that our approach achieves precision and recall both of 91.67%, while introducing only an additional 14.07% runtime overhead and negligible memory consumption to detect data leak issues. Moreover, compared with the state-of-the-art approach Cocoon, our approach achieves stronger usability by requiring few program modifications.
Keywords:
Rust
Data Leak
TaintAnalysis

Journal

I
INFORMATION AND COMMUNICATIONS SECURITY, ICICS 2025, PT III
IF:
0
Papers:
23
Citations:
0

Organization

C
chinese academy of sciences
Scholars:
56.7W
Papers: 45.0W
Citations: 704
Cited Papers

Cited Papers

FlowDroid
err2014-06-09
err0
PREAI
errSteven Arzt; Siegfried Rasthofer; Christian Fritz; Eric Bodden; Alexandre Bartel; Jacques Klein; Yves Le Traon; Damien Octeau; Patrick McDaniel
errShare
errSave
RustBelt: securing the foundations of the Rust programming language
err2017-12-27
err0
errOAAI
errRalf Jung; Jacques-Henri Jourdan; Robbert Krebbers; Derek Dreyer
errShare
errSave
Memory-Safety Challenge Considered Solved? An In-Depth Study with All Rust CVEs
err2021-09-28
err21
errOAAI
errXu, Hui; Chen, Zhuangbin; Sun, Mingshen; Zhou, Yangfan; Lyu, Michael R.
errShare
errSave
Rudra
err2021-10-26
err0
errOAAI
errYechan Bae; Youngsuk Kim; Ammar Askar; Jungwon Lim; Taesoo Kim
errShare
errSave
errShare
errSave
Monotone data flow analysis frameworks
err1977-01-01
err0
PREAI
errJohn B. Kam; Jeffrey D. Ullman
errShare
errSave
researcher View more