DARPA启动“代码强拆工程”,将所有C代码转换成Rust

为了加速向内存安全编程语言的转变,美国国防高级研究计划局(DARPA)正在推动一个名为TRACTOR(TRanslating All C TO Rust)的项目。这项计划将开发一种机器学习工具,自动将遗留C代码转换为Rust,以根治内存安全问题。

内存安全漏洞,如缓冲区溢出,占据了大型代码库中的多数重大漏洞。DARPA希望通过AI模型帮助进行编程语言转换,从而使软件更安全。DARPA的TRACTOR项目经理Dan Wallach在一份声明中表示,目前使用LLM(大语言模型)可以初步实现从C到Rust的转换,但自动化程度和准确性还有待提升。

近年来,谷歌和微软等科技巨头已开始广泛宣传内存安全漏洞问题,并鼓励使用如Rust等内存安全的编程语言。这些努力不仅影响了私营部门,还促使白宫和美国网络安全和基础设施安全局(CISA)倡导使用包括Rust、C#、Go、Java、Python和Swift在内的内存安全语言。

尽管C和C++社区有人认为遵循ISO标准和使用检测工具可以达到类似效果,但DARPA的观点是,靠这些工具还不足以解决问题。Rust自2015年首次发布以来,因其内存安全特性和适用于低级别、性能敏感系统编程的特性,逐渐受到青睐。

互联网研究小组的Prossimo项目也致力于用Rust重写关键库和代码,以减少安全风险。该项目的执行董事Josh Aas表示,尽管目前的工具还需要大量手动工作来确保转换结果的正确性和符合习惯,但通过进一步投资,这些工具的效率有望显著提高。

Code Metal公司CEO Peter Morales认为,DARPA的TRACTOR项目在网络安全领域将产生重大影响,尤其是在内存安全成为关注焦点的情况下。然而,他也指出,业界不可能完全放弃C和C++,特别是在内核级别。

DARPA将在2024年8月26日举行TRACTOR项目提案提交活动,感兴趣的参与者可以现场或远程参加。

参考链接:

https://www.darpa.mil/news-events/2024-07-31a

滚动至顶部