Using lightweight formal methods to validate a key-value storage node in Amazon S3

J Bornholt, R Joshi, V Astrauskas, B Cully… - Proceedings of the …, 2021 - dl.acm.org
This paper reports our experience applying lightweight formal methods to validate the
correctness of ShardStore, a new key-value storage node implementation for the Amazon …

The prusti project: Formal verification for rust

V Astrauskas, A Bílý, J Fiala, Z Grannan… - NASA Formal Methods …, 2022 - Springer
Rust is a modern systems programming language designed to offer both performance and
static safety. A key distinguishing feature is a strong type system, which enforces by default …

Rudra: Finding memory safety bugs in rust at the ecosystem scale

Y Bae, Y Kim, A Askar, J Lim, T Kim - Proceedings of the ACM SIGOPS …, 2021 - dl.acm.org
Rust is a promising system programming language that guarantees memory safety at
compile time. To support diverse requirements for system software such as accessing low …

Translating C to safer Rust

M Emre, R Schroeder, K Dewey… - Proceedings of the ACM …, 2021 - dl.acm.org
Rust is a relatively new programming language that targets efficient and safe systems-level
applications. It includes a sophisticated type system that allows for provable memory-and …

[PDF][PDF] Cross-Language Attacks.

S Mergendahl, N Burow, H Okhravi - NDSS, 2022 - ndss-symposium.org
Memory corruption attacks against unsafe programming languages like C/C++ have been a
major threat to computer systems for multiple decades. Various sanitizers and runtime …

Benefits and drawbacks of adopting a secure programming language: Rust as a case study

KR Fulton, A Chan, D Votipka, M Hicks… - … Symposium on Usable …, 2021 - usenix.org
Programming languages such as Rust and Go were developed to combat common and
potentially devastating memory safety-related vulnerabilities. But adoption of new, more …

Learning and programming challenges of rust: A mixed-methods study

S Zhu, Z Zhang, B Qin, A Xiong, L Song - Proceedings of the 44th …, 2022 - dl.acm.org
Rust is a young systems programming language designed to provide both the safety
guarantees of high-level languages and the execution performance of low-level languages …

Modular specification and verification of closures in Rust

F Wolff, A Bílý, C Matheja, P Müller… - Proceedings of the ACM …, 2021 - dl.acm.org
Closures are a language feature supported by many mainstream languages, combining the
ability to package up references to code blocks with the possibility of capturing state from the …

Memory-safety challenge considered solved? An in-depth study with all Rust CVEs

H Xu, Z Chen, M Sun, Y Zhou, MR Lyu - ACM Transactions on Software …, 2021 - dl.acm.org
Rust is an emerging programming language that aims at preventing memory-safety bugs
without sacrificing much efficiency. The claimed property is very attractive to developers, and …

SafeDrop: Detecting memory deallocation bugs of rust programs via static data-flow analysis

M Cui, C Chen, H Xu, Y Zhou - ACM Transactions on Software …, 2023 - dl.acm.org
Rust is an emerging programming language that aims to prevent memory-safety bugs.
However, the current design of Rust also brings side effects, which may increase the risk of …