CNNVD漏洞分类描述规范》
作者:CNNVD 时间:2015年10月10日

国家信息安全漏洞库(下称:CNNVD使用《CNNVD漏洞分类描述规范》对漏洞进行分类,于20091018日正式使用。

一、分类说明

本规范将漏洞类型根据分类的不同粒度,按照层级结构划分为31种类型,形成树状结构。该分类模型包含多个抽象级别,其中高级别最左端提供一个广泛的概述漏洞类型可以包含多个子级别(如“生命周期”泛指在软件开发和部署的整个生命周期中产生的漏洞,如果不能细分的话,就确定为该类型)。更低层级的右端的提供较细粒度的级别可包含子级别或者没有子级别(如“Cross-Site Scripting”漏洞类型)。漏洞的类型通过对级层进行匹配,如果该漏洞属于该级层漏洞类型,则定义为该类漏洞,如果不属于该基层漏洞类型,则向前一个节点进行遍历匹配。

树形图

    


二、漏洞分类汇总

1) 代码(Code

代码开发过程中会产生该漏洞,包括规范说明、设计和实现

Weaknesses in this category are typically introduced during code development, including specification, design, and implementation.

2) 源代码(Source Code

产生于源代码中的漏洞

Weaknesses in this category are typically found within source code.

3) 数据处理(Data Handling

处理数据的功能中存在的漏洞

Weaknesses in this category are typically found in functionality that processes data.

4) 输入验证Input Validation

程序没有正确验证影响控制流和数据流的输入

The product does not validate or incorrectly validates input that can affect the control flow or data flow of a program.

实例:

FFmpeg 输入验证漏洞(CNNVD-201411-036

FFmpegFFmpeg团队的一套可录制、转换以及流化音视频的完整解决方案。Libav(前身是FFmpeg)是Libav团队的一套跨平台的可对音频和视频进行录制、转换的解决方案,它包含了一个libavcodec编码器。

FFmpeg 2.4.1及之前版本的libavcodec/tiff.c文件中存在安全漏洞,该漏洞源于程序没有正确验证bits-per-pixel字段。远程攻击者可借助特制的TIFF数据利用该漏洞造成拒绝服务(越边界访问)。

5) 命令注入(Command Injection

软件使用外部输入构造全部或部分命令,但是没有过滤掉可以修改内部命令的特殊元素。

The software constructs all or part of a command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended command when it is sent to a downstream component.

6) 操作系统命令注入OS Command Injections

程序使用外部输入构造全部或部分OS命令,但是没有过滤掉可以修改OS命令的特殊元素

The software constructs all or part of an OS command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended OS command when it is sent to a downstream component.

实例:

Caldera 操作系统命令注入漏洞(CNNVD-201405-163

Caldera是法国Caldera公司的一套数码打样与色彩管理软件。该软件提供色彩管理、打印配置保存和打印机状态检测等功能。

Caldera 9.20版本的CostView中的costview3/xmlrpc_server/xmlrpc.php脚本存在安全漏洞。远程攻击者可借助特制的PHP XMLRPC请求利用该漏洞执行任意命令。

7) SQL注入SQL Injection

程序使用外部输入构造全部或部分SQL命令,但是没有过滤掉可以修改SQl命令的特殊元素

The software constructs all or part of an SQL command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended SQL command when it is sent to a downstream component.

实例:

WordPress WPML插件SQL注入漏洞(CNNVD-201503-350

WordPressWordPress软件基金会的一套使用PHP语言开发的博客平台,该平台支持在PHPMySQL的服务器上架设个人博客网站。WPML是其中的一个多语言插件。

WordPress WPML插件3.1.9之前版本中存在SQL注入漏洞,该漏洞源于comments/feedURI没有充分过滤wp-link-ajax操作中的HTTP Referer头。远程攻击者可借助‘lang’参数利用该漏洞执行任意SQL命令。

8) 跨站脚本Cross-Site Scripting

数据输出到Web页面前没有消除用户对输入数据的控制

The software does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.

实例:

IBM Rational Quality Manager 跨站脚本漏洞(CNNVD-201503-356

IBM Rational Quality ManagerRQM)是美国IBM公司的一套协作的、基于Web的质量管理解决方案。该方案在软件开发的整个生命周期之内,提供了测试规划与测试评价管理方法,并能够共享信息、自动化加快项目进度以及报告制定的发布决策。

IBM RQM中存在跨站脚本漏洞,该漏洞源于程序没有充分过滤用户提交的输入。远程攻击者可借助特制的URL利用该漏洞注入任意Web脚本或HTML。以下版本受到影响:IBM Rational Quality Manager 2.0版本至2.0.1.1版本,3.0版本至3.0.1.6 iFix3版本,4.0版本至4.0.7 iFix2版本,5.0版本至5.0.1版本。

9) 代码注入(Code Injection

软件使用外部输入构造全部或部分代码段,但是没有过滤掉可以修改内部代码段语法或行为的特殊元素。

The software constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the syntax or behavior of the intended code segment.

10)  路径等价(Path Equivalence

利用该漏洞访问受限制目录外的文件(路径遍历),或在受限制文件上执行操作(路径等价)

Weaknesses in this category can be used to access files outside of a restricted directory (path traversal) or to perform operations on files that would otherwise be restricted (path equivalence).

11)  路径遍历Path Traversal

软件使用外部输入构造目录名,来确定位于受限目录下的文件或目录,但是没有过滤掉路径名中的特殊元素,可导致路径名定位于受限目录外的位置

The software uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the software does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory.

实例:

F5 BIG-IP 路径遍历漏洞(CNNVD-201411-273

F5 BIG-IP是美国F5公司的一款集成了网络流量管理、应用程序安全管理、负载均衡等功能的多合一网络设备。

F5 BIG-IP 10.2.1及之前版本中存在目录遍历漏洞,该漏洞源于tmui/Control/jspmap/tmui/system/archive/properties.jsp脚本和tmui/Control/form URL没有充分过滤‘name’参数。本地攻击者可借助目录遍历字符‘..’利用该漏洞以‘Resource Administrator’‘Administrator’角色枚举和删除任意文件。

12)  后置链接Link Following

软件视图以文件名访问文件,但是没有阻止文件名识别解析错误的连接和快捷键

The software attempts to access a file based on the filename, but it does not properly prevent that filename from identifying a link or shortcut that resolves to an unintended resource.

实例:

VMware Tools 后置链接漏洞(CNNVD-201408-435

VMware Tools是美国威睿(VMware)公司的一套VMWare虚拟机自带的增强工具,它是VMware提供的用于增强虚拟显卡和硬盘性能、以及同步虚拟机与主机时钟的驱动程序。

VMware Workstation 10.0.3及之前版本和其他产品中分发的VMware Tools中的vm-support 0.88版本中存在安全漏洞。本地攻击者可通过对/tmp目录下的文件实施符号链接攻击利用该漏洞向任意文件写入数据。

13)  数字错误(Numeric Errors

该漏洞源于数字的不正确计算和转换

Weaknesses in this category are related to improper calculation or conversion of numbers.

实例:

Apple OS X 数字错误漏洞(CNNVD-201402-452

Apple OS X是美国苹果(Apple)公司为Mac计算机所开发的一套专用操作系统。

Apple OS X 10.9.1及之前的版本中存在安全漏洞,该漏洞源于处理Unicode字体时CoreText中存在符号问题。使用CoreText的应用软件可能容易发生应用软件意外终止或任意代码执行。

14)  信息管理错误(Information Management Errors

与敏感信息不正确处理相关的漏洞

Weaknesses in this category are related to improper handling of sensitive information.

15)  信息泄露(Information Leak / Disclosure

信息泄露给没有访问权限的用户

An information exposure is the intentional or unintentional disclosure of information to an actor that is not explicitly authorized to have access to that information.

实例:

Xen 信息泄露漏洞(CNNVD-201503-173

Xen是英国剑桥大学开发的一款开源的虚拟机监视器产品。该产品能够使不同和不兼容的操作系统运行在同一台计算机上,并支持在运行时进行迁移,保证正常运行并且避免宕机。

Xen 3.2.x版本至4.5.x版本的HYPERVISOR_xen_version超级调用中存在安全漏洞,该漏洞源于程序没有正确初始化数据结构。本地虚拟机端攻击者可利用该漏洞获取敏感信息。

16)  资源管理错误Resource Management Errors

与系统资源管理不当相关的漏洞

Weaknesses in this category are related to improper management of system resources.

实例:

Cisco IOS Zone-Based Firewall功能资源管理错误漏洞(CNNVD-201502-276

Cisco IOS是美国思科(Cisco)公司为其网络设备开发的操作系统。

Cisco IOSZone-Based Firewall功能中存在拒绝服务漏洞,该漏洞源于程序没有正确管理session-object结构体。远程攻击者可通过发送特制的流量利用该漏洞造成拒绝服务(设备重载)。

17)  缓冲区溢出Buffer Errors

程序在内存缓冲区中执行操作时可以在超出缓冲区边界的内存单元中读取或写入数据

The software performs operations on a memory buffer, but it can read from or write to a memory location that is outside of the intended boundary of the buffer.

实例:

Wireshark 缓冲区溢出漏洞(CNNVD-201501-190

Wireshark(前称Ethereal)是Wireshark团队开发的一套网络数据包分析软件。该软件的功能是截取网络数据包,并显示出详细的数据以供分析。

Wireshark 1.10.12之前1.10.x版本和1.12.3之前1.12.x版本的epan/dissectors/packet-ssl-utils.c文件中的‘ssl_decrypt_record’函数存在缓冲区溢出漏洞。远程攻击者可通过发送特制的数据包利用该漏洞造成拒绝服务(应用程序崩溃)。

18)  格式化字符串(Format String Vulnerability

软件在输出函数中使用外部控制的格式化字符串,导致缓冲区溢出或数据表示问题

The software uses externally-controlled format strings in printf-style functions, which can lead to buffer overflows or data representation problems.

实例:

Graphviz‘agerr()’函数远程格式化字符串漏洞(CNNVD-201411-489

GraphvizGraph Visualization Software)是美国AT&T实验室研发的一套用于绘制DOT语言脚本所描述的图形的开源绘图工具。

Graphvizlib/cgraph/scan.l文件中的‘yyerror’函数中存在格式化字符串漏洞。远程攻击者可借助特制的格式字符串说明符利用该漏洞执行任意代码或造成拒绝服务。

19)  注入(Injection

软件使用外部输入构造全部或部分命令、数据结构或记录

The software constructs all or part of a command, data structure, or record using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify how it is parsed or interpreted

20)  竞争条件Race Conditions

进程中包含可以与其他代码同时运行的代码序列,且该代码序列需要临时的、互斥的共享资源的访问权限。但是另一段程序修改该共享资源时会存在一个时间窗口。

The program contains a code sequence that can run concurrently with other code, and the code sequence requires temporary, exclusive access to a shared resource, but a timing window exists in which the shared resource can be modified by another code sequence that is operating concurrently.

实例:

linux kernel 竞争条件漏洞(CNNVD-201501-698

Linux kernel是美国Linux基金会发布的操作系统Linux所使用的内核。

Linux kernel 3.18.9及之前版本的fs/fhandle.c文件中的‘handle_to_path’函数存在竞争条件漏洞。本地攻击者可通过在执行函数时更改文件句柄的‘handle_bytes’值利用该漏洞绕过既定的大小限制,读取附加的内存位置。

21)  安全特征/功能(Security Features

与身份验证,访问控制,机密性,密码学,权限管理相关

Software security is not security software. Here we're concerned with topics like authentication, access control, confidentiality, cryptography, and privilege management.

22)  跨站请求伪造Cross-Site Request Forgery

Web应用程序没有或不能验证有效的请求是否是可信用户提供的

The web application does not, or can not, sufficiently verify whether a well-formed, valid, consistent request was intentionally provided by the user who submitted the request.

实例:

Drupal Watchdog Aggregator模块跨站请求伪造漏洞(CNNVD-201503-024

DrupalDrupal社区所维护的一套用PHP语言开发的免费、开源的内容管理系统。Watchdog Aggregator是其中的一个聚合器模块。

Drupal Watchdog Aggregator模块中存在跨站请求伪造漏洞。远程攻击者可利用该漏洞执行未授权操作,获取受影响应用程序的访问权限。

23)  未充分验证数据权限(Insufficient Verification of Data Authenticity

程序没有充分验证数据的来源和真实性,导致接受无效的数据。

The software does not sufficiently verify the origin or authenticity of data, in a way that causes it to accept invalid data.

24)  信任管理(Credentials Management

与证书管理相关的漏洞

Weaknesses in this category are related to the management of credentials.

实例:

Red Hat libvirt 信任管理漏洞(CNNVD-201411-201

Red Hat libvirt是美国红帽(Red Hat)公司的一个用于实现Linux虚拟化功能的Linux API,它支持各种Hypervisor,包括XenKVM,以及QEMU和用于其他操作系统的一些虚拟产品。

Red Hat libvirt 1.2.10及之前版本的virDomainGetXMLDesc API中存在安全漏洞,该漏洞源于程序处理qemuDomainFormatXML命令时没有正确处理权限。远程只读攻击者可通过使用VIR_DOMAIN_XML_MIGRATABLE利用该漏洞获取VNC密码。

25)  权限许可和访问控制Permissions, Privileges, and Access Control

与权限、特权和其他用户用于执行访问控制的安全功能有关的漏洞

Weaknesses in this category are related to the management of permissions, privileges, and other security features that are used to perform access control.

实例:

Xen 权限许可和访问控制漏洞(CNNVD-201503-294

Xen是英国剑桥大学开发的一款开源的虚拟机监视器产品。该产品能够使不同和不兼容的操作系统运行在同一台计算机上,并支持在运行时进行迁移,保证正常运行并且避免宕机。

Xen 3.2.x版本至4.5.x版本中存在安全漏洞,该漏洞源于程序没有正确限制对PCI命令寄存器的访问。本地虚拟机端攻击者可利用该漏洞造成拒绝服务(non-maskable中断和主机崩溃)。

26)  授权问题Authentication Issues

程序没有进行身份验证或身份验证不足

When an actor claims to have a given identity, the software does not prove or insufficiently proves that the claim is correct.

实例:

Apache CloudStack 授权问题漏洞(CNNVD-201412-195

Apache CloudStack是美国阿帕奇(Apache)软件基金会的一套开源的云计算软件。该软件可用于部署、管理、配置公共和私有云(IaaS)。

Apache CloudStack 4.3.2之前4.3.x版本和4.4.2之前4.4.x版本中存在安全漏洞。远程攻击者可借助无密码的登录请求利用该漏洞绕过身份验证。

27)  加密问题(Cryptographic Issues

与密码使用相关的漏洞

Weaknesses in this category are related to the use of cryptography.

实例:

Android Woodward Bail应用程序加密问题漏洞(CNNVD-201410-1156

Woodward Bail(也称com.onesolutionapps.woodwardbailandroidapplication for Android是一套基于Android平台的应用程序。

Android Woodward Bail应用程序1.1版本中存在安全漏洞,该漏洞源于程序没有验证SSL服务器端的X.509证书。攻击者可通过特制的证书利用该漏洞实施中间人攻击,伪造数据欺骗服务器,获取敏感信息。

28)  访问控制错误(Improper Access Control

软件没有正确限制来自未授权角色的资源的访问

The software does not restrict or incorrectly restricts access to a resource from an unauthorized actor.

29)  配置错误(Configuration

软件配置过程中出现的漏洞

Weaknesses in this category are typically introduced during the configuration of the software.

实例:

Elasticsearch 安全漏洞(CNNVD-201407-666

Elasticsearch是荷兰Elasticsearch公司的一套基于Lucene构建的开源分布式RESTful搜索引擎,它主要用于云计算中,并支持通过HTTP使用JSON进行数据索引。

Elasticsearch 1.2之前版本中存在安全漏洞,该漏洞源于程序在默认配置下允许使用动态脚本。远程攻击者可利用该漏洞借助‘source’参数执行任意的MVEL表达式和Java代码。

30)  资料不足(Insufficient Information

没有足够充分的信息对其进行分类,漏洞细节未指明

There is insufficient information about the issue to classify it; details are unkown or unspecified.

实例:

Mozilla Firefox 内存损坏漏洞(CNNVD-201502-435

Mozilla Firefox是美国Mozilla基金会开发的一款开源Web浏览器。

Mozilla Firefox 35.0.1及之前版本的浏览器引擎中存在安全漏洞。远程攻击者可利用该漏洞造成拒绝服务(内存损坏和应用程序崩溃),或执行任意代码。

31)  其他(Other)

NVD使用CWE的子集来进行漏洞分类,但该类型没有包含在CWE子集中

NVD is only using a subset of CWE for mapping instead of the entire CWE, and the weakness type is not covered by that subset.

实例:

JasPer 双重释放漏洞(CNNVD-201412-499

JasPer是加拿大软件开发者Michael Adams所研发的一个JPEG-2000编解码器的开源实现。

JasPer 1.900.1及之前版本的‘jas_iccattrval_destroy’函数中存在双重释放漏洞。远程攻击者可借助JPEG 2000图像文件中的ICC颜色配置文件利用该漏洞造成拒绝服务(崩溃)或执行任意代码。

附件:编制说明

关于漏洞分类调研报告
        一、 说明
         目前CNNVD漏洞库使用了NVD对漏洞类型的描述标准规范,而NVD采用了CWE的分类标准。
        二、 调研结果如下:
        共对国内外NVD、Bugtrag、Secunia、Sebug、乌云进行调研,其中,NVD(使用的CWE标准)给出的漏洞类型,是目前分类最为规范、条目最多、使用最为广泛的分类标准,目前NVD漏洞分类有34个类型。
        而Bugtrag、Secunia、Sebug、乌云等其他漏洞发布平台漏洞分类标准,存在分类类型少、分类标准不规范、适用范围小等问题。
        漏洞分类国标中,虽然也标注出常用的安全漏洞类型,分别按漏洞形成原因、漏洞所处空间和时间进行分类。但仅按照漏洞成因分类可以适用,但给出的分类条目也只有11类,条目较少。
       三、 调研内容如下:
        1) NVD
        共34种类型,使用CWE通用分类标准,并对CWE上千种类型进行了归类,类型比较多,具体分类如下:
        代码、源代码、数据处理、输入验证、命令注入、操作系统命令注入、SQL注入、跨站脚本、代码注入、路径等价、路径遍历、后置链接、数字错误、信息管理错误、信息泄露、代码质量、资源管理错误、缓冲区溢出、格式化字符串、注入、时间和状态环境变量问题、竞争条件、安全特征/功能、未充分验证数据权限、跨站请求伪造、信任管理、权限许可和访问控制、访问控制错误、授权问题、加密问题、配置错误、资料不足、其他
        2) Sebug
        共31个类型,其所分类型并不通用,仅为本漏洞平台使用,具体分类如下:
       越权访问、拒绝服务、嵌入恶意代码、SQL注入、其他类型、远程溢出、文件包含、本地溢出、跨站漏洞、遍历目录、DOS/POC、ShellCode、文件上传、泄漏信息、远程代码执行、Cookie验证错误、变量覆盖、CSRF、命令执行、任意文件下载、任意文件创建、任意文件读取、任意文件删除、权限提升、解析错误、数据库发现、目录穿越、登录绕过、远程密码修改、路径泄漏、弱密码。
        3) Bugtrag
        共12个类型,其部分类型与CWE通用,但有一些类型并不通用,而且类型较少,分类标准仅为本漏洞平台使用,具体分类如下:
        未知的、序列化错误、竞态条件错误、起源验证错误、输入验证错误、未处理异常情况、环境误差、设计错误、配置错误、边界条件误差、原子性错误、访问验证错误。
        4) Secunia
        共11个类型,其中部分类型与CWE通用,但类型较少,具体分类如下:
        跨站脚本、拒绝服务、信息泄露、劫持、数据控制、特权提升、安全绕过、欺骗、系统访问、暴力破解、未知。
        5) 乌云
        共有32种类型,乌云所使用的类型虽较多,但仅为本平台使用,具体类型如下:
        网络设计缺陷/逻辑错误、基础设施弱口令、网络未授权访问、网络敏感信息泄露、系统/服务补丁不及时、重要敏感信息泄露、未授权访问/权限绕过、服务弱口令、系统/服务运维配置不当、XSS跨站脚本攻击、CSRF、SQL注射漏洞、任意文件遍历/下载、文件上传导致任意代码执行、文件包含、命令执行、应用配置错误、敏感信息泄露、未授权访问/权限绕过、后台弱口令、设计缺陷/逻辑错误、URL跳转、业务安全/运营风险、钓鱼欺诈信息、账户体系控制不严、内容安全、恶意信息传播、安全事件/安全情报、内部绝密信息泄露、用户资料大量泄露、成功的入侵事件、其他



漏洞信息快速查询