For investors
股价:
5.36 美元 %For investors
股价:
5.36 美元 %认真做教育 专心促就业
在当下的市场环境中,除了掌握困扰软件的最常见安全问题外,开发人员还应该了解到底是什么问题在影响他们正在使用的编程语言。静态代码分析安全公司Veracode最近发布了一份年度软件安全状态(SOSS)报告,其中的第11卷则揭示了用.NET、C++、Java、JavaScript、PHP或Python编写的应用程序中所存在的主要安全漏洞类型(基于扫描的13万个应用程序)。
Veracode的高级内容营销经理Meghan McBee称,“在你坐下来编写代码之前,了解这些应用程序的安全趋势意味着你准备好快速修复它们,或者甚至是完全阻止它们。如果你选择的是C++、PHP、.Net或Java语言,请注意,它们很容易出现一些风险最高的漏洞。实际上,高达59%的C++应用具有严重程度非常高的缺陷,PHP则紧随其后。”
Veracode发现,用JavaScript编写的应用中,有31.5%的应用至少存在一个跨站脚本(XSS)缺陷;用PHP编写的应用中,有74.6%的应用至少存在一个XSS缺陷。此外,还有71%的PHP应用存在加密问题。
用.NET编写的应用程序中存在的主要问题是信息泄露,占比62.8%;其他还包括有代码质量(53.6%)、输入验证不足(48.8%)等。C++的问题有:错误处理(66.5%)、缓冲区管理错误(46.8%)、数值错误(45.8%)、目录遍历等。
Java的问题包括:CRLF注入(64.4%)、代码质量(54.3%)以及信息泄露(51.9%)等。而对于Python apps,其中发现的主要问题则与加密有关,占比35%。
值得注意的是,在每种语言的应用程序中发现的缺陷的严重性也有很大的区别。Veracode发现,有59%用C++编写的应用程序和52%用PHP编写的应用程序存在高严重性缺陷。用JavaScript编写的应用程序中,只有9.6%存在高严重性缺陷。Java的高严重性缺陷数据则为24%。
针对这些数据,Veracode首席研究官Chris Eng分别作出了解读。他指出,例如,C++中常见的缓冲区溢出问题出现了下降的趋势,这并不是因为开发者的进步,而是在于C++的流行度的下降。另一方面,受语言流行度上升的影响,影响JavaScript和Python的问题则正在一点点爬升。
Java和.NET在企业中仍然很受欢迎,PHP也仍然是Web应用开发中最受欢迎的脚本语言之一。Eng认为,PHP代码中的漏洞较多的原因主要在于,该语言提供了很多不安全的primitives和错误地处理方法。
而相较之下,尽管JavaScript应用中发现的缺陷较少,但JavaScript和node.js开源库的庞大npm生态系统仍是其一个潜在的弱点。Eng建议工程和产品团队保持更新,以降低打补丁的麻烦程度和关键应用的成本。
此外,应用程序安全公司Snyk此前则发表观点称,影响JavaScript、Ruby、Java、PHP和Python的大多数安全漏洞是由于项目内部加载的主要组件之间的间接依赖性引起的。
报告详情可查看:#/sites/default/files/pdf/resources/ipapers/security-flaw-heatmap/index.html
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!