C/C++惨了!美国政府敦促开发者停止,原因是它不太安全?你信吗?

美国政府发布报告,指出C/C++的内存管理缺陷可能导致安全漏洞,推荐使用Rust等更安全的编程语言。尽管C++在TIOBE排行榜上占据高位,但专家认为完全取代可能困难重重,引发关于C++能否适应新时代安全需求的讨论。
摘要由CSDN通过智能技术生成

37edc25b17bba7f1abc2e22db6d322f8.png

你听说了吗?美国政府最近出了一个报告,想让开发者们停止使用 C 和 C++ 编程语言。

a92d792176907fc9b2034023e99fc0e4.png

报告说C/C++语言不够安全,因为它们在处理内存方面容易出错,这可能会导致安全漏洞。

71915406166c9bc378fa92248f3f351c.png

用过C/C++的知道,缓冲区溢出空指针的问题,这些都可能让恶意软件有机可乘。

因为C/C++的一些核心特性,允许程序员使用指针,直接操作内存地址。

这种能力虽然让底层操作变得简单,但同时也带来了风险,因为指针的不当使用可能会引发一系列内存安全问题,比如无效指针、内存泄露或者数组越界。

在C和C++的世界里,内存的分配和释放都需要程序员亲力亲为。这就要求程序员必须精确控制内存的使用,任何疏忽都可能导致内存泄露或者指针悬空。

此外,C和C++的数组和指针没有内置的边界检查,这可能导致数组越界错误,进而引起程序崩溃或出现不可预测的行为。

而且,与一些现代编程语言不同,C和C++没有自动垃圾回收功能,所以程序员必须手动处理内存的分配和回收,这无疑增加了出错的可能性。

报告说这是为了保护国家安全,因为这些漏洞在过去几十年里已经引发了不少大问题。比如,微软发现从 2006 到 2018 年,每年 CVE 的漏洞中约 70% 是内存安全问题。

1b67b13b9ad6fd85ba1f321766d0bfdc.png

还有 Google Chromium 项目也是,大约 70% 严重性安全错误是内存不安全问题(即 C/C++ 指针错误)。

所以,美国白宫的国家网络主任办公室(ONCD)建议开发者们转用那些内存更安全的编程语言,比如Rust、Go、C#、Java、Swift、JavaScript和Ruby。报告还提到,硬件也应该采用内存安全的语言,因为这样可以减少出错的可能性。

但是,现实情况是,看看 TIOBE 编程语言排行榜公布的 2024 年 2 月榜单。哈哈,C/C++基本是长年位居TOP5的语言。

170ceaee6ee1e5dfcecb0e2e41f23fe6.png

C和C++在TIOBE排行榜上稳坐热门宝座,可以说是UNIX、操作系统的基石,也是游戏开发、AI和机器学习底层架构的中坚力。

要想仅用内用内存安全的帽子就想干掉C/C++,我感觉有点像是在做梦吧!

我估计很多是不会买账的,这是对C++这门语言的不公平的对待。要知道,C++有很多现代特性可以帮助提高安全性,而且很多安全问题其实是由于编程不当造成的。

C++这个曾经的系统编程之王的语言,是否能够适应新时代的挑战,还是会被新兴的语言所取代?你又是怎么看待的呢?

a272786f5e3482b832dbdce705fbf303.gif

2023年12月全球手游下载TOP10,印度7.32亿次位居榜首

1分钟搞定跨境支付!什么GPT4、Mj通通不在话下!

2024年1月全球移动游戏下载TOP10!印度第一,巴西第二

2024年1月最新中国手游榜单《王者荣耀》重返榜首

一个牛逼的AI网站!不翻墙,支持长文字链接,多种文件格式

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值