当前位置: 首页 > news >正文

应用软件漏洞排名

摘要

随着计算机网络技术的发展,全球互联网
体量急速膨胀,网络安全形势日益严峻,国家政治、经济、 文化、社会及公民在网络空间的合法权益面临严峻挑战。近些年来安全漏洞数量呈现递增趋势,基于漏 洞的网络安全事件层出不穷,为我们敲响了信息安全攻防战的警钟。软件由于开发及设计等各方面的原因,存在漏洞在所难免。对安全研究人员来说,通过对漏洞发展 趋势的研究,可以在攻击者利用漏洞造成危害之前,提出及时有效的修补方案,尽可能的减少攻击事件 的发生。对软件开发商来说,通过对漏洞的研究,可以帮助开发人员把更多的精力放在安全开发过程中 需要注意的关键技术上,开发出高质量
的软件。本文以 NVD为数据源 1,对截止 2019 年底的历史漏洞 数据进行分析总结,并基于绿盟威胁情报中心 (NTI),得出以下观点:1. 通过对历史漏洞数据的回顾,可以看到漏洞数量呈现显著增长的总体趋势,2019 年的漏洞数量 比 1999 年增长了 9.62 倍。

  1. 操作系统被公开的漏洞中,开源操作系统占比相对更高,其安全性
    问题可能暴露的更充分。如 排名第一的 Debian Linux 系统在过去的 20 年累计发现了 3705 条漏洞,以高效快速地修复安全 问题著称。1. 根据绿盟威胁情报中心显示,十年以上高龄漏洞在攻击事件中占比仍然高,对于这些历史悠久 的漏洞,由于攻击门槛低,攻击者依然在大量使用。
  2. 浏览器作为网络攻击的入口,漏洞种类复杂多样。通过对应用类软件漏洞利用在网络攻击事件 进行统计,浏览器漏洞利用占比 48.44%,影响范围广,安全人员仍需关注浏览器的更新与防护。
  3. 利用文件格式漏洞的鱼叉式钓鱼攻击已成为网络安全的主要威胁之一,攻击者通过诱导目标对 象点击打开包含漏洞的 PDF 或者 Office 文档,继而执行文档中内嵌的恶意脚本,此类漏洞利用 稳定性高,在 APT攻击事件中屡见不鲜。
  4. Flash 漏洞作为曾经的研究焦点,2015 和 2016 年爆出的漏洞总数占据 Flash 漏洞的 55.09%。
    在实际攻击中常以插件形式被嵌套在各种 Exploit Kit工具包,可以达到稳定利用,更新速度快 以及免杀的效果。今后一段时间内,Flash 漏洞并不会彻底消亡,还需继续关注。
  5. 开源软件便于研究员进行基于源代码的白盒测试。Web 类开源框架的利用代码公开后可以在短 时间内被集成到成熟的攻击框架中,降低了漏洞利用的门槛。随着开源软件开发模式的兴起, 针对软件供应链的攻击成为面向软件开发人员和供应商的一种新兴威胁。
  6. 移动设备的安全决定着家庭和企业用户的信息资产的安全。近些年来社会各界对移动应用的漏 洞关注度逐渐提高,漏洞的产生不仅带来用户设备与信息的安全影响,也给企业带来业务或声 誉上的损失。
  7. 物联网设备数量增长迅速,大部分存在默认账户和弱口令,且大部分漏洞利用简单,攻击者容 易构建僵尸网络,存在极大的安全风险,设备厂商应该重视并加强自身产品的安全。

历史漏洞回顾

漏洞数量逐年显著增长

截至 2019 年底,NVD数据库共收录漏洞信息 138909 条,历年漏洞的数量及同比增长率如图 1.1 所示。 从 2005 年之后漏洞数量显著提升,同比增长 137%,2016 年更是突破万数大关,同比增长 411%,呈 现快速增长的趋势。
历年漏洞数量 历年漏洞同比增长率
图 1.1 历年漏洞数量统计
为了更准确的表示漏洞环境所面临的风险,行业给出了一套通用漏洞评分系统 CVSS(Common Vulnerability Scoring System),用来评测漏洞的严重程度,并帮助确定所需反应的紧急度和重要度。由 于 CVSS v3.0 标准在漏洞覆盖率上不足,下文分析采用 CVSS v2.0 标准进行,其划分漏洞等级如表 1.1 所示。
表 1.1 CVSS v2.0 标准

根据 CVSS v2.0 等级标准,7.0-10.0 为高危漏洞,4.0-6.9 为中危漏洞,0.1-3.9 的则为低危漏洞。截 止 2019 年底共有 130937 条漏洞分配了 CVSS v2.0 等级,各个等级按数量分布的占比如图 1.2 所示。
图 1.2 漏洞的 CVSS V2.0 分布
低危漏洞占据漏洞总数的 8.72%,攻击者利用此类漏洞可以获取某些系统或服务的信息、读取系统 文件和数据。中危漏洞占 56.06%,攻击者利用此类漏洞可以远程修改、创建、删除文件或数据,或对 普通服务进行拒绝服务攻击。高危漏洞占据 35.22%,攻击者利用此类漏洞可以远程执行任意命令或者 代码,有些漏洞甚至无需交互就可以达到远程代码执行的效果。
NVD数据库提供 CWE条目,可对漏洞成因进行统一的分析。本文所分析的 138909 条漏洞中,共 有 130961 条分配了 CWE ID。图 1.3 给出了 TOP20 CWE 漏洞类型 1
跨站脚本(CWE-79) 缓冲区溢出(CWE-119) 输入验证错误(CWE-20) 信息泄露(CWE-200)
SQL注入(CWE-89) 权限许可(CWE-264) 路径遍历(CWE-22)
资源管理错误(CWE-399) 跨站请求伪造(CWE-352)
加密问题(CWE-310) 代码注入(CWE-94) 越界读(CWE-125) 授权问题(CWE-287)
访问控制错误(CWE-284)
释放后重用(CWE-416) 数字错误(CWE-189) 整数溢出(CWE-190) 空指针引用(CWE-476) 越界写(CWE-787)
图 1.3 TOP20 CWE 漏洞类型
跨站脚本 (CWE-79)类型的漏洞数量以 12911 条占据第一。其他传统的 Web 攻防技术也是屡见不 鲜,SQL 注入 (CWE-89)、跨站请求伪造 (CWE-352)、代码注入 (CWE-94)等常见于服务器及 Web 应用 中,通过将恶意脚本嵌入到网页中,对网站数据造成危害。缓冲区溢出 (CWE-119)、越界读 (CWE-125)、 释放后重用 (CWE-416)、空指针引用 (CWE-476) 以及越界写 (CWE-787) 代表内存错误类型的漏洞,此 类型的漏洞在浏览器和 Office 软件中比较常见,同时也是 APT 攻击者的重要目标和武器。权限许可 (CWE-264) 和授权问题 (CWE-287) 以及访问控制错误 (CWE-284) 代表权限类型的漏洞,主要集中在服 务器操作系统、数据库类的应用中。信息泄露 (CWE-200)、资源管理错误 (CWE-399) 等类型的漏洞能 够导致敏感信息暴露,比如系统配置信息,数据库信息等,为攻击者进一步的攻击行为提供帮助。

通用软件产品的漏洞数量排名

根据 NVD漏洞库统计了前 10 漏洞数量涉及的供应商,如图 1.4 所示,主要涵盖 Microsoft、 Oracle、Google、IBM、Apple、Cisco、Debian、Adobe、Redhat、Canonical。其中 Microsoft 的漏洞 累计 6996 个,在厂商中排名第一。
图 1.4 TOP10 漏洞数量供应商
Microsoft 公司众多操作系统、Google 公司的 Chrome 浏览器、Oracle 公司的 Java 运行时环境、 Apple 公司的 iPhone、Adobe 公司的 Acrobat Reader 和 Flash,这些产品的用户基数大,实现功能复杂, 导致被大量安全研究员所关注,漏洞数量相对较多。

操作系统漏洞排名

根据 NVD数据库对 Product 字段的统计,操作系统的 TOP10 漏洞数量排名如图 1.5 所示 1。主流的 Linux发行版包含 Debian 和 Redhat,其中 Debian Linux 的系统稳定且占用内存小,软件包集成度良好, 深受用户喜欢。Debian 其及社区能在软件发布中快速地修复安全问题,安全研究的投入也比较多,在 过去的 20 年里累计发现了 3705 条漏洞。
图 1.5 TOP10 操作系统漏洞
Apple 的 Mac OS 系统以及 iOS 系统漏洞排名第四及第六。Microsoft 的操作系统中,Windows Server 2008 的漏洞最多,排名第七,Windows 7 和 Windows 10 的漏洞数量紧随其后。

应用软件漏洞排名

应用软件的漏洞数量排名如图 1.6 所示 2,Chrome 浏览器的漏洞排名第一, Firefox 排名第二、 Internet Explorer 排名第四、Safari 则排名第五。Acrobat Reader 漏洞与 Adobe Flash 分别排名第三、第六。
图 1.6 TOP10 应用软件漏洞

参考资料

绿盟 漏洞发展趋势报告

友情链接

GB-T 30279-2020 信息安全技术 网络安全漏洞分类分级指南


  1. Linux的漏洞中不包含 linux kernel 的漏洞 ↩︎ ↩︎ ↩︎

  2. 的数量包含了 IE和 Internet Explorer 字段的数量 ,Acrobat Reader 的数量包含了 Acrobat DC、Acrobat、Acrobat
    Reader、Reader 等字段的数量 ↩︎

相关文章:

  • 基于YOLOV7的桥梁基建裂缝检测
  • BH1750 传感器实战教学 —— 驱动移植篇
  • 考研数学——张宇八套卷
  • ARM 汇编基础
  • CyberSploit:1
  • 【云原生 | 从零开始学istio】五、istio灰度发布以及核心资源
  • 数据结构篇-树与森林
  • fastdfs添加storage节点
  • java计算机毕业设计学生勤工助学管理系统源程序+mysql+系统+lw文档+远程调试
  • WebShell箱子简介与原理
  • 部署vue项目到阿里云服务器
  • Elasticsearch:Top metrics 聚合
  • C#重启 --- 语言基础
  • Word控件Spire.Doc 【文本】教程(7) ;C#获取Word文档中内容控件的别名、标签和ID
  • SpringCloud Gateway网关为认证中心和用户微服务构建统一的认证授权入口
  • 2017-09-12 前端日报
  • JAVA SE 6 GC调优笔记
  • Java 实战开发之spring、logback配置及chrome开发神器(六)
  • Javascripit类型转换比较那点事儿,双等号(==)
  • Java超时控制的实现
  • leetcode-27. Remove Element
  • Linux各目录及每个目录的详细介绍
  • vue-cli3搭建项目
  • 阿里研究院入选中国企业智库系统影响力榜
  • 大整数乘法-表格法
  • 基于HAProxy的高性能缓存服务器nuster
  • 适配iPhoneX、iPhoneXs、iPhoneXs Max、iPhoneXr 屏幕尺寸及安全区域
  • 译有关态射的一切
  • - 转 Ext2.0 form使用实例
  • ​DB-Engines 11月数据库排名:PostgreSQL坐稳同期涨幅榜冠军宝座
  • # Swust 12th acm 邀请赛# [ E ] 01 String [题解]
  • #NOIP 2014#Day.2 T3 解方程
  • (145)光线追踪距离场柔和阴影
  • (2022版)一套教程搞定k8s安装到实战 | RBAC
  • (Demo分享)利用原生JavaScript-随机数-实现做一个烟花案例
  • (三分钟了解debug)SLAM研究方向-Debug总结
  • *_zh_CN.properties 国际化资源文件 struts 防乱码等
  • . Flume面试题
  • .360、.halo勒索病毒的最新威胁:如何恢复您的数据?
  • .NET Core 中的路径问题
  • .net 流——流的类型体系简单介绍
  • .net 验证控件和javaScript的冲突问题
  • .NET 中的轻量级线程安全
  • /dev下添加设备节点的方法步骤(通过device_create)
  • @ 代码随想录算法训练营第8周(C语言)|Day53(动态规划)
  • @GetMapping和@RequestMapping的区别
  • @Repository 注解
  • @基于大模型的旅游路线推荐方案
  • [ 环境搭建篇 ] 安装 java 环境并配置环境变量(附 JDK1.8 安装包)
  • [2016.7.test1] T2 偷天换日 [codevs 1163 访问艺术馆(类似)]
  • [8-23]知识梳理:文件系统、Bash基础特性、目录管理、文件管理、文本查看编辑处理...
  • [Android] 240204批量生成联系人,短信,通话记录的APK
  • [android] 请求码和结果码的作用
  • [ASP.NET MVC]Ajax与CustomErrors的尴尬
  • [Big Data - Kafka] kafka学习笔记:知识点整理