Rust for Secure Backend Development: A Critical Review and Extended Vulnerability Comparison with Node.js and Django
Md Zarzees Uddin Shah Chowdhury, Rabib Jahin Ibn Momin, Rifat Shahriyar
Abstract
The Rust programming language is widely credited with eliminating entire classes of memory-safety and concurrency vulnerabilities, but the security implications of adopting it in practice extend well beyond memory safety. This paper presents a critical review of prior work on Rust's security posture in industrial settings, and extends that analysis in a direction the original study did not cover: backend web development. We first assess the strengths and limitations of the existing vulnerability classification of Rust against C, C++, and Java under the SANS Top 25, OWASP Top 10, and the 19 Deadly Sins of Software Security frameworks, identifying gaps including limited empirical validation, a small interview sample, and the absence of a secure development lifecycle discussion. We then contribute an original comparison of Rust against Node.js and Django using the same three-level classification (Rare and Difficult, Safeguarded, Unprotected), supported by side-by-side code experiments for out-of-bounds writes (CWE-787), use-after-free (CWE-416), and race conditions (CWE-362). Our results indicate that Rust's compile-time guarantees dominate at the systems layer, while managed backend frameworks offer stronger built-in defenses at the application layer, suggesting that Rust adoption in web contexts requires complementary safeguards rather than reliance on language-level safety alone.
Create a lesson
Related papers
Behavioral Analysis of Timed Actors using Syntactic Slice Equivalence
Ali Ataollahi, Fatemeh Ghassemi, Eduard Kamburjan et al.
Exo-GPU: Safe, Imperative, User-schedulable Programming for Tensor Cores
David Zhao Akeley, Yuka Ikarashi, Jonathan Ragan-Kelley
Revisiting Soundness for Occurrence Typing, Semantically
Yuquan Fu, Carlo Angiuli, Sam Tobin-Hochstadt
Opportunistic ZGC: Leveraging Idle Cores for More Effective Concurrent Garbage Collection
Jacob Malloy, Michael R. Jantz, Terry Jones
QuickerChick
Ivan Mladenov, Alperen Keles, Leonidas Lampropoulos
Expressing NumPy Broadcasting via Verb Rank in J
Marcin Żołek