快捷搜索:

C语言居然占据最不安全语言榜首!哪种语言最安全?

小编来报:“哪种编程语言最安全?”这个问题一直是程序员的饭后谈资,是不是你也曾为自己使用的语言而与别人争得面红耳赤?开源安全公司WhiteSource对编程语言安全性进行了分析,揭示了哪些语言存在最多的安全漏洞。一起来看看这些观点吧!

据外媒报道,开源安全公司WhiteSource对编程语言安全性进行了分析,揭示了哪些语言存在最多的安全漏洞。

技术总是充斥着安全问题,有硬件错误,比如英特尔“Meltdown”和“Spectre”的两大漏洞,还有编程语言安全问题。天哪,真有这么多漏洞吗?

开源安全公司WhiteSource最近对过去十年中使用最广泛的七种语言C、Java、JavaScript、Python、Ruby、PHP和C++的开源安全漏洞进行了研究,调查了国家漏洞数据库(NVD)、安全公告、GitHub项目问题跟踪器和开源项目问题跟踪器等多个安全数据库。

最终的结果就是,C语言占据最不安全语言榜首。根据调查报告显示,统计的所有漏洞中有近50%是在C语言中发现的。

C语言居然占据最不安全语言榜首!哪种语言最安全?

谷歌Linux内核安全工程师Kees“Case”Cook最近表示,C语言是一种高级的汇编程序,但C语言也带来了一些导致安全缺陷和基础设施漏洞。

但是,WhiteSource认为,这并不说明C语言就不如其他语言安全。C语言中存在大量的开源漏洞是有原因的。C语言的使用时间相对其他语言要长,并且拥有最多的编写代码量。它也是OpenSSL和Linux内核等基础架构背后的语言之一。

这一说法不无道理。程序员在C语言中编写程序并与之斗争了几十年之后,确实很容易犯下严重的安全错误。

C语言居然占据最不安全语言榜首!哪种语言最安全?

另外,C++在过去5年里“有幸”拥有最严重的漏洞。长期困扰C语言的缓冲区错误现在也经常在C++中发现。

JavaScript是唯一一个在过去10年里漏洞数量持续增加的语言。JavaScript最常见的通用缺陷列表(CWE)是来自JavaScript包的路径遍历和密码安全漏洞,这些漏洞很少被使用、维护或支持。

说了那么多,就没有安全性高一点的语言了吗?有的。有一种语言在安全漏洞方面表现得很好,那就是Python。

C语言居然占据最不安全语言榜首!哪种语言最安全?

几乎所有语言都有CWE,其中两种CWE占据了主导地位,它们就是跨站点脚本(Cross-Site-Scripting, XSS,即CWE-79)和输入验证(Input Validation,即CWE-20)。另外,还有信息泄漏(CWE-200)、路径遍历(CWE-22)和权限及访问控制(CWE-264)、不正当访问控制(CWE-284)等CWE也比较突出。

C语言的安全性真的是最的差的,而Python是最好的吗?WhiteSource认为,仅凭调查结果就下这样的定论有点过于随意了。“我的编程语言比你的更安全”的争论无疑是一种消磨时间的方式,即使找到答案也无助于你创造出最具创新性或最安全的软件。

你怎么看?欢迎大家留言互动讨论哦!

您可能还会对下面的文章感兴趣: