In a significant announcement, the White House’s Office of the National Cyber Director (ONCD) has issued a compelling call to action for developers to adopt memory-safe languages, citing security imperatives and historical vulnerabilities.
The ONCD introduced a comprehensive report titled “Back to the Building Blocks: A Path Toward Secure and Measurable Software,” emphasizing the urgent need to mitigate vulnerabilities through the adoption of memory-safe programming languages.
Highlighting the prevalence of memory safety vulnerabilities, Assistant National Cyber Director for Technology Security, Anjana Rajan, underscored the role of such flaws in past cyber incidents, from the Morris worm to the recent Heartbleed vulnerability.
Industry experts, including Microsoft security engineer Matt Miller, have previously emphasized the significance of memory safety. Miller’s revelation that a significant majority of Microsoft patches addressed memory safety bugs reinforces the urgency of transitioning to safer languages.
A study by open source security firm WhiteSource revealed that C, despite its widespread use and historical significance, has the highest number of reported security vulnerabilities among widely used languages. This trend underscores the critical need for transitioning to more secure alternatives.
While acknowledging C’s historical significance and widespread adoption in critical infrastructure projects, experts caution against its inherent vulnerabilities and “fancy assembler” nature, highlighting the urgent need for a transition to safer alternatives.
Despite the challenges, writing secure code in C or C++ is feasible but exceptionally difficult. The prevalence of memory-related security vulnerabilities underscores the urgent need for safer alternatives.
Leading figures in the tech industry, including Microsoft Azure’s CTO Mark Russinovich, advocate for transitioning away from C and C++ in favor of Rust. Microsoft’s significant investments in Rust, including rewriting core libraries and integrating it into Microsoft 365, signal a paradigm shift towards safer programming languages.
National Cyber Director Harry Coker emphasizes the critical importance of transitioning to memory-safe languages and implementing advanced diagnostics to enhance cybersecurity. Coker asserts that curtailing the attack surface in cyberspace is both a capability and a responsibility.
While acknowledging the challenges, the Office of the National Cyber Director (ONCD) asserts that transitioning to memory-safe languages is viable in most scenarios. Industry luminaries, such as DEFCON and Black Hat’s president Jeff Moss, endorse this shift, highlighting the imperative for national leaders to engage in solving global cybersecurity challenges.
The Open Source Security Foundation (OpenSSF) echoes the call for memory-safe languages, citing significant risk reduction in software vulnerabilities. However, OpenSSF acknowledges the complexity of large-scale adoption, advocating for a risk-based approach and providing guidance for developers through resources like the Compiler Options Hardening Guide for C and C++.
While progress towards adopting memory-safe languages is underway, the journey is expected to be protracted. Legacy C and C++ code will continue to play a significant role for years to come. Mitigating risks involves optimizing existing code and gradually replacing critical components with memory-safe alternatives, such as Rust-based implementations.
The transition to memory-safe languages represents a fundamental shift in software development practices. While challenges abound, industry leaders, government agencies, and open-source communities are united in their commitment to enhancing cybersecurity and minimizing vulnerabilities in the digital landscape.