哪种编程语言最安全?哪种最不安全?

栏目: C · 发布时间: 5年前

内容简介:WhiteSource对C、C++、Java、PHP、python、JS、Ruby等7种开源编程语言的安全性。WhiteSource是一家研究开源软件安全的公司,该公司对7种开源编程语言的安全性通过定性和定量两种方式进行了分析。C语言的漏洞数量占所有报告的开源安全漏洞的50%。但C语言也是历史最长、代码量最多、使用最广泛的语言之一,是许多基础设施的基础。

WhiteSource对C、C++、 JavaPHPpython 、JS、 Ruby 等7种开源编程语言的安全性。

WhiteSource是一家研究开源软件安全的公司,该公司对7种开源编程语言的安全性通过定性和定量两种方式进行了分析。

摘要

C语言的漏洞数量占所有报告的开源安全漏洞的50%。但 C语言 也是历史最长、代码量最多、使用最广泛的语言之一,是许多基础设施的基础。

这些开源语言中最常见的漏洞分别是XSS,输入有效性验证,权限、特权和访问控制,信息泄露。

使用自动化 工具 和赏金计划进行漏洞扫描革新了整个行业,2017年报告的漏洞量大幅增长。

过去两年间虽然漏洞的数量增长了,但是大多数语言中暴露的漏洞的严重程度降低了。

概览

研究人员的数据来源是WhiteSource的综合数据库,有点类似NVD数据库。该数据库中包含200多种语言,研究人员主要关注过去10年最常用的7种编程语言的安全性分别是,C、C++、Java、PHP、python、JS、Ruby。

哪种编程语言最安全?哪种最不安全?

一种语言比另外一种安全吗?

根据数据库中的数据,C语言的漏洞数量是这7种语言中最多的,是不是可以说C语言是最不安全的呢?NO。首先,C语言是许多编程入门者最开始使用的语言,使用较多,因此漏洞较多。其次,需要考虑到的是C语言的历史较为悠久,很多安全和平台的核心或底层代码都使用的是C语言。

哪种编程语言最安全?哪种最不安全?

编程语言和漏洞数量的时间关系

对所有语言来说,并没有一个持续性地编程语言和被报告的漏洞之间的关系问题,但在2017年被报告的漏洞数量有明显增长。其中一个原因是开源的流行性以及人们开始关注开源组件的安全漏洞问题。另一个原因是自动化工具和漏洞奖励计划的大规模资金投入进一步促进了开源软件漏洞的报告数量。

哪种编程语言最安全?哪种最不安全?

漏洞严重程度与时间的关系

2017年被报告的漏洞数量是最多的,但是除了JS和PHP外,大多数语言中高危漏洞的比率减少了。其中一个原因可能是自动化工具在安全研究人员中的应用。因为这类自动化工具一般来说都比较简单,所以无法发现复杂和高危的漏洞,因此发现的大多数漏洞严重程度都不高。

不同编程语言的安全漏洞(CWE)

研究人员通过分析不同语言的CWE漏洞数量来分析编程语言的安全性。研究人员发现每种语言的top 3的CWE漏洞中,XSS和输入有效性验证漏洞占了70%。

除了XSS和输入有效性验证漏洞外,其他CWE有信息泄露(CWE-200)、路径遍历(CWE-22)、权限、特权和访问控制(CWE-264),不合适的访问控制(CWE-284)。

哪种编程语言最安全?哪种最不安全? 哪种编程语言最安全?哪种最不安全?

更多参见: https://www.whitesourcesoftware.com/most-secure-programming-languages/


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Head First EJB(中文版)

Head First EJB(中文版)

KathySierra,Ber / 中国电力出版社 / 2006-9 / 79.00元

有些人只是想通过认证来取悦挑剔的老板,但相信你不是这种人。确实,你也想通过Su n认证业务组件开发人员(SCBCD)考试,但不仅如此,你还需要真正把EJB用到实处。你要构建应用,要对付最后期限,如果通过考试之后第二天早上就把你学过的EJB知识忘得一干二净,你肯定会受不了。 我们会看着你稳稳当当地通过考试,而且会帮你在实际中使用EJB。你会深入地了解EJB体系结构、会话、实体和消息驱动......一起来看看 《Head First EJB(中文版)》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码