导读:C++正在不断向Rust等语言学习,让自己变得安全可依赖。
引言
2020年,Google 突然发现自己的Chrome 有70%以上的严重安全漏洞,然而实际上都是由内存安全问题引起的。
Chrome 团队这样表示:“也就是说,C 或 C++ 语言中的指针错误会导致内存被误解。”也就是把黑锅扔给了C++。
2022 年,美国国家安全局 (NSA) 网络安全技术总监 Neal Ziring 就内存安全发表了自己的看法。
他这样表示说:“内存管理问题已经被利用了几十年,而且至今仍然非常普遍。我们在开发软件时,必须始终使用内存安全语言和其他保护措施,以消除恶意网络行为者的这些弱点。”
(NSA) 网络安全技术总监 Neal Ziring
但事情并没有就此结束。内存安全编程语言继续受到密切关注。今年 2 月,美国白宫国家网络总监办公室 (ONCD)发布了一份审计报告,建议所有程序员都应转向内存安全编程语言。
报告指出,目前网络安全威胁防护的负担落在了终端用户身上,“用户必须努力主动消除各类软件漏洞”。
这份报告进一步阐述道:“专家们已经发现了一些编程语言,它们既缺乏与内存安全相关的特性,而且在关键系统中具有很高的扩散性,比如 C 和 C++。”
内存的安全现在比以往任何时候都重要,因为我们所做的很多事情都在互联网上发生。
最近的世界经济论坛有人员表示,过去的新冠疫情又加速了电子商务、在线支付和数字广告的快速普及。
因此,存在更多潜在漏洞可供黑客们利用。开发者问答社区Stack Overflow也指出,过去一些最大的漏洞事件基本都是内存安全问题。
其中:包括 2014 年的Heartbleed 病毒,该病毒影响了 OpenSSL 软件,导致恶意攻击者窃取 X.509 证书、用户名和密码、即时消息和电子邮件。2017 年,WannaCry勒索软件攻击在全球蔓延,感染了超过 23 万台计算机,引起了社会的广泛关注。
Revolut 发布的一份新的消费者安全和金融犯罪报告指出,2024 年上半年,Meta 平台是全球所有诈骗的最大来源 (62%)。Revolut 发现,Facebook 的欺诈量 (39%) 是 WhatsApp (18%) 的两倍多。
小结
将代码移至内存安全语言和状态,将是一项艰巨而耗时的工程。美国国防高级研究计划局(DARPA) 目前正在寻求利用人工智能弥补这一差距。它正在开发一种名为 TRACTOR(将所有 C 语言转换为 Rust)的编程代码转换工具。
它这样表示说,“目标是实现与熟练的 Rust 开发人员相同的质量和风格,从而消除 C 程序中存在的所有类型的内存安全漏洞。”
各位同学怎么看?欢迎留言~
作者:万能的大雄
本文为 @ 万能的大雄 创作并授权 21CTO 发布,未经许可,请勿转载。
内容授权事宜请您联系 webmaster@21cto.com或关注 21CTO 公众号。
该文观点仅代表作者本人,21CTO 平台仅提供信息存储空间服务。