白宫敦促开发商放弃C和C++

拜登政府呼吁开发人员接受内存安全编程语言,并远离那些导致缓冲区溢出和其他内存访问漏洞的语言。

第1170211页4
马格达莱娜·彼得罗娃

美国总统乔·拜登(Joe Biden)的政府希望软件开发人员使用内存安全的编程语言,抛弃C和C++等易受攻击的语言。

国家网络总监白宫办公室(ONCD)一份报告周一发布的呼吁开发者通过使用不存在内存安全漏洞的编程语言来降低网络攻击的风险。白宫在一份新闻稿中表示,科技公司通过采用内存安全的编程语言,“可以防止整个类别的漏洞进入数字生态系统”。

内存安全编程语言受到保护,不受与内存访问相关的软件错误和漏洞的影响,包括缓冲区溢出、边界外读取和内存泄漏。最近的研究微软谷歌发现大约70%的安全漏洞是由内存安全问题引起的。

“作为一个国家,我们有能力也有责任减少网络空间的攻击面,防止各类安全漏洞进入数字生态系统,但这意味着我们需要解决转向记忆安全编程语言的难题,”国家网络总监哈里·科克在白宫新闻发布会上说。

美国网络安全和基础设施安全局也敦促开发者在9月博客帖子CISA、FBI、美国国家安全局和盟国机构也发布了该报告。”记忆安全路线图案例,”。

ONCD新的19页报告给出了C和C++两个具有内存安全漏洞的编程语言示例,并将Rust命名为其认为安全的编程语言的示例。此外,国家安全局网络安全信息表从2022年11月起,除了Rust之外,还将C#、Go、Java、Ruby和Swift列为其认为是内存安全的编程语言。

截至2023年,大约22%的软件程序员使用C++,19%的程序员使用C,根据Statista这使得它们不如JavaScript、Python、Java和其他一些语言受欢迎。但TIOBE编程社区索引仅将Python列为更受欢迎的,其次是C、C++和Java。

转移责任

白宫新闻稿称,这份新报告的一个目标是将网络安全的责任从个人和小企业转移到大型组织、科技公司和美国政府,这些组织“更有能力应对不断演变的威胁”。

ONCD与包括科技公司、学术界和其他组织在内的私营部门合作,制定了报告中的建议。ONCD于8月就这一主题发布了公众意见请求。它还收集的评论支持多家科技公司的倡议,包括惠普企业、埃森哲和帕兰蒂尔。其他软件安全专家也赞扬了该报告。

华盛顿大学计算机科学教授丹·格罗斯曼(Dan Grossman)表示,ONCD的报告很有帮助,也很及时。他说,虽然“C和C++的危险性已经众所周知几十年了”,但这是白宫推动内存安全的好时机,因为现在有实用和成熟的替代品可供选择。

是时候改变了

同时,由于“利用内存安全违规的对手威胁的复杂性”,需要做出改变,他说。

他补充道,涉及政府、行业和学术界的关于记忆安全的讨论可以带来有意义的改变。“自然,联邦政府的许多部门都是软件的关键创造者和供应商,他们可以利用这一观点来决定即将对系统或新系统进行的更改的优先级。”

然而,格罗斯曼说,离开C和C++不会在一夜之间发生,特别是在嵌入式系统中。“但其他语言在系统软件中的使用,尤其是Rust,已经有了显著的增长,我认为许多人预计这种进化会加速,而不是C和C++开发会停止,这在整体上似乎仍然是不可想象的。”

互联网安全研究小组(InternetSecurityResearchGroup)的执行董事兼联合创始人乔什·阿斯(Josh-Aas)补充说,离开C和C++将是一个“漫长而困难的过程”。“改变人们的思维方式需要持续的努力,这样的沟通有助于让人们对安全问题保持新鲜的认识。”

Aas表示,为了实现这一变化,政府和私营部门需要共同努力,将安全代码作为优先事项。

他补充道:“最终,我们需要编写和部署新的代码,但为了实现这一目标,我们需要资源,我们需要从政府到私营部门的各级领导人将其作为优先事项。”。“相关领导人需要意识到这个问题,他们需要知道,如果他们把解决这个问题作为优先事项,他们将得到支持。”

版权所有©2024 IDG Communications,Inc。