【译文】白宫敦促开发人员放弃 C 和 C++ 语言
美国总统乔-拜登的政府希望软件开发人员使用内存安全编程语言,放弃 C 和 C++ 等易受攻击的语言。
白宫国家网络总监办公室(ONCD)在周一发布的一份报告中呼吁开发人员使用不存在内存安全漏洞的编程语言,从而降低网络攻击的风险。白宫在一份新闻稿中说,技术公司通过采用内存安全编程语言,”可以防止整类漏洞进入数字生态系统”。
内存安全编程语言可以防止与内存访问有关的软件错误和漏洞,包括缓冲区溢出、越界读取和内存泄漏。微软和谷歌最近的研究发现,大约70%的安全漏洞是由内存安全问题造成的。
“国家网络总监哈里-库克(Harry Coker)在白宫发布的新闻稿中说:”作为一个国家,我们有能力也有责任减少网络空间的攻击面,防止整类安全漏洞进入数字生态系统,但这意味着我们需要解决转向内存安全编程语言这一难题。
美国网络安全和基础设施安全局也在 9 月份的一篇博文中敦促开发人员使用内存安全编程语言。美国网络安全和基础设施安全局、联邦调查局、美国国家安全局和盟国机构还于 12 月发布了题为 “内存安全路线图案例 “的报告。
在 ONCD 这份长达 19 页的新报告中,C 和 C++ 是存在内存安全漏洞的两种编程语言,而 Rust 则是其认为安全的编程语言之一。此外,美国国家安全局 2022 年 11 月的一份网络安全信息表将 C#、Go、Java、Ruby 和 Swift 以及 Rust 列为其认为内存安全的编程语言。
根据Statista的数据,截至2023年,约有22%的软件程序员使用C++,19%的软件程序员使用C,它们的受欢迎程度不及JavaScript、Python、Java和其他一些语言。但在 TIOBE 编程社区指数中,只有 Python 更受欢迎,其次是 C、C++ 和 Java。
责任转移
白宫发布的新闻稿说,新报告的目标之一是将网络安全的责任从个人和小企业转移到大型组织、技术公司和美国政府身上,因为它们 “更有能力管理不断变化的威胁”。
白宫说,ONCD 与私营部门(包括技术公司、学术界和其他组织)合作制定了报告中的建议。ONCD 于 8 月份发布了一份征求公众意见的通知。它还收集了包括惠普企业、埃森哲和 Palantir 在内的多家技术公司对该倡议的支持意见。其他软件安全专家也对该报告表示赞赏。
华盛顿大学计算机科学教授丹-格罗斯曼(Dan Grossman)说,ONCD 的报告很有帮助,也很及时。他说,虽然 “C 和 C++ 的危险几十年来已众所周知”,但现在是白宫推动内存安全的好时机,因为现在已经有了实用而成熟的替代方案。
是时候改变了
与此同时,由于 “对手利用违反内存安全规定的威胁日益复杂”,因此需要做出改变。
他补充说,由政府、行业和学术界共同参与的有关内存安全的讨论可以带来有意义的变革。”当然,联邦政府的许多部门都是软件的主要创建者和供应商,他们可以利用这一观点来决定即将对系统或新系统进行的更改的优先顺序。
然而,摆脱 C 和 C++ 不会一蹴而就,尤其是在嵌入式系统中,格罗斯曼说。”但是,系统软件使用其他语言,特别是 Rust,已经有了显著增长,我认为许多人预计这种演变会加速,而不是 C 和 C++ 开发简单地停止,这在整体上似乎仍然难以想象。”
互联网安全研究小组(Internet Security Research Group)执行董事兼联合创始人乔希-阿斯(Josh Aas)补充说,摒弃 C 和 C++ 将是一个 “漫长而艰难的过程”。”改变人们的思维方式需要持续的努力,像这样的交流有助于让人们对安全问题保持记忆犹新”。
阿斯说,要实现这种改变,政府和私营部门需要共同努力,将安全代码作为优先事项。
“他补充说:”归根结底,我们需要编写和部署新的代码,但为了实现这一目标,我们需要资源,需要从政府到私营部门的各级领导将其作为优先事项。”他补充说:”需要让相关领导人意识到这个问题,他们需要知道,如果他们把解决这个问题作为优先事项,就会得到支持。
本文文字及图片出自 White House urges developers to dump C and C++
你也许感兴趣的:
- 【程序员搞笑图片】数据类型简明指导
- 33 种编程语言的 UUIDv7 实现
- 【外评】Rust,你错了
- 【外评】为什么人们对 Go 1.23 的迭代器设计感到愤怒?
- 华为自研编程语言“仓颉”来了!鸿蒙应用开发新语言,性能优于 Java、Go、Swift
- 【外评】JavaScript 变得很好
- 【外评】华为发布自己的编程语言 “仓颉”
- VBScript 废弃:时间表和后续步骤
- 【外评】BASIC 编程语言 60 岁了
- 【外评】为什么 ALGOL 是一种重要的编程语言?
你对本文的反应是: