安全漏洞分类之CNNVD漏洞分类指南

news2024/11/24 8:27:02

适用范围说明
凡是被国家信息安全漏洞库(CNNVD)收录的漏洞,均适用此分类规范,包括采集的公开漏洞以及收录的未公开漏洞,通用型漏洞及事件型漏洞。
漏洞类型
CNNVD将信息安全漏洞划分为26种类型,分别是:配置错误、代码问题、资源管理错误、数字错误、信息泄露、竞争条件、输入验证、缓冲区错误、格式化字符串、跨站脚本、路径遍历、后置链接、SQL注入、注入、代码注入、命令注入、操作系统命令注入、安全特征问题、授权问题、信任管理、加密问题、未充分验证数据可靠性、跨站请求伪造、权限许可和访问控制、访问控制错误、资料不足。
在这里插入图片描述

配置错误 CWE-16: Configuration

描述
此类漏洞指软件配置过程中产生的漏洞。该类漏洞并非软件开发过程中造成的,不存在于软件的代码之中,是由于软件使用过程中的不合理配置造成的。

代码问题 CWE-17: Code

描述
此类漏洞指代码开发过程中产生的漏洞,包括软件的规范说明、设计和实现。该漏洞是一个高级别漏洞,如果有足够的信息可进一步分为更低级别的漏洞。

输入验证 CWE-20: Improper Input Validation

描述
产品没有验证或者错误地验证可以影响程序的控制流或数据流的输入。如果有足够的信息,此类漏洞可进一步分为更低级别的类型。
当软件不能正确地验证输入时,攻击者能够伪造非应用程序所期望的输入。这将导致系统接收部分非正常输入,攻击者可能利用该漏洞修改控制流、控制任意资源和执行任意代码。
常见后果
技术影响:
DoS: crash / exit / restart;
DoS: resource consumption (CPU);
DoS: resource consumption (memory);
Read memory;
Read files or directories;
Modify memory;
Execute unauthorized code or commands
影响范围:机密性、完整性和可用性

路径遍历 CWE-22: Path Traversal

描述
为了识别位于受限的父目录下的文件或目录,软件使用外部输入来构建路径。由于软件不能正确地过滤路径中的特殊元素,能够导致访问受限目录之外的位置。
许多文件操作都发生在受限目录下。攻击者通过使用特殊元素(例如,“…”、“/”)可到达受限目录之外的位置,从而获取系统中其他位置的文件或目录。相对路径遍历是指使用最常用的特殊元素“…/”来代表当前目录的父目录。绝对路径遍历(例如"/usr/local/bin")可用于访问非预期的文件。
常见后果
技术影响:
Execute unauthorized code or commands;
Modify files or directories;
Read files or directories;
DoS: crash / exit / restart
影响范围:
机密性、完整性和可用性

后置链接 CWE-59: Link Following

描述
软件尝试使用文件名访问文件,但该软件没有正确阻止表示非预期资源的链接或者快捷方式的文件名。
常见后果
技术影响:
Read files or directories;
Modify files or directories;
Bypass protection mechanism
影响范围:
机密性、完整性和可用性

注入 CWE-74: Injection

描述
软件使用来自上游组件的受外部影响的输入,构造全部或部分命令、数据结构或记录,但是没有过滤或没有正确过滤掉其中的特殊元素,当发送给下游组件时,这些元素可以修改其解析或解释方式。
软件对于构成其数据和控制的内容有其特定的假设,然而,由于缺乏对用户输入的验证而导致注入问题。
13.2 常见后果
技术影响:
Read application data;
Bypass protection mechanism;
Alter execution logic;
Hide activities
影响范围:
机密性、完整性

命令注入 CWE-77: Command Injection

描述
软件使用来自上游组件的受外部影响的输入构造全部或部分命令,但是没有过滤或没有正确过滤掉其中的特殊元素,这些元素可以修改发送给下游组件的预期命令。
命令注入漏洞通常发生在、
(1)输入数据来自非可信源;
(2)应用程序使用输入数据构造命令;
(3)通过执行命令,应用程序向攻击者提供了其不该拥有的权限或能力。
常见后果
技术影响:Execute unauthorized code or commands
影响范围:机密性、完整性和可用性

操作系统命令注入 CWE-78: OS Command Injection

描述
软件使用来自上游组件的受外部影响的输入构造全部或部分操作系统命令,但是没有过滤或没有正确过滤掉其中的特殊元素,这些元素可以修改发送给下游组件的预期操作系统命令。
此类漏洞允许攻击者在操作系统上直接执行意外的危险命令。
常见后果
技术影响:
Execute unauthorized code or commands;
DoS: crash / exit / restart;
Read files or directories;
Modify files or directories;
Read application data;
Modify application data;
Hide activities
影响范围:
机密性、完整性和可用性

跨站脚本 CWE-79: Cross-site Scripting

描述
在用户控制的输入放置到输出位置之前软件没有对其中止或没有正确中止,这些输出用作向其他用户提供服务的网页。
跨站脚本漏洞通常发生在
(1)不可信数据进入网络应用程序,通常通过网页请求;
(2)网络应用程序动态地生成一个带有不可信数据的网页;
(3)在网页生成期间,应用程序不能阻止Web浏览器可执行的内容数据,例如JavaScript,HTML标签,HTML属性、鼠标事件、Flash、ActiveX等;
(4)受害者通过浏览器访问的网页包含带有不可信数据的恶意脚本;
(5)由于脚本来自于通过web服务器发送的网页,因此受害者的web浏览器会在web服务器域的上下文中执行恶意脚本;
(6)违反web浏览器的同源策略,同源策略是一个域中的脚本不能访问或运行其他域中的资源或代码。
常见后果
技术影响:
Bypass protection mechanism;
Read application data;
Execute unauthorized code or commands
影响范围:
机密性、完整性和可用性

SQL注入 CWE-89: SQL Injection

描述
软件使用来自上游组件的受外部影响的输入构造全部或部分SQL命令,但是没有过滤或没有正确过滤掉其中的特殊元素,这些元素可以修改发送给下游组件的预期SQL命令。
如果在用户可控输入中没有充分删除或引用SQL语法,生成的SQL查询可能会导致这些输入被解释为SQL命令而不是普通用户数据。利用SQL注入可以修改查询逻辑以绕过安全检查,或者插入修改后端数据库的其他语句,如执行系统命令。
常见后果
技术影响:
Read application data;
Modify application data;
Bypass protection mechanism
影响范围:
机密性、完整性

代码注入 CWE-94: Code Injection

描述
软件使用来自上游组件的受外部影响的输入构造全部或部分代码段,但是没有过滤或没有正确过滤掉其中的特殊元素,这些元素可以修改发送给下游组件的预期代码段。
当软件允许用户的输入包含代码语法时,攻击者可能会通过伪造代码修改软件的内部控制流。此类修改可能导致任意代码执行。
常见后果
技术影响:
Bypass protection mechanism;
Gain privileges / assume identity;
Execute unauthorized code or commands;
Hide activities
影响范围:
机密性、完整性和可用性

格式化字符串 CWE-134: Format String Vulnerability

描述
软件使用的函数接收来自外部源代码提供的格式化字符串作为函数的参数。
当攻击者能修改外部控制的格式化字符串时,这可能导致缓冲区溢出、拒绝服务攻击或者数据表示问题。
常见后果
技术影响:
Read memory;
Execute unauthorized code or commands
影响范围:
机密性、完整性和可用性

缓冲区错误 CWE-119: Buffer Errors

描述
软件在内存缓冲区上执行操作,但是它可以读取或写入缓冲区的预定边界以外的内存位置。
某些语言允许直接访问内存地址,但是不能自动确认这些内存地址是有效的内存缓冲区。这可能导致在与其他变量、数据结构或内部程序数据相关联的内存位置上执行读/写操作。作为结果,攻击者可能执行任意代码、修改预定的控制流、读取敏感信息或导致系统崩溃。
常见后果
技术影响:
Execute unauthorized code or commands;
Modify memory;
Read memory;
DoS: crash / exit / restart;
DoS: resource consumption (CPU);
DoS: resource consumption (memory)
影响范围:机密性、完整性和可用性

数字错误 CWE-189: Numeric Errors

描述
此类漏洞与不正确的数字计算或转换有关。该类漏洞主要由数字的不正确处理造成的,如整数溢出、符号错误、被零除等。

信息泄露 CWE-200: Information Exposure

描述
信息泄露是指有意或无意地向没有访问该信息权限者泄露信息。此类漏洞是由于软件中的一些不正确的设置造成的信息泄漏。
信息指
(1)产品自身功能的敏感信息,如私有消息
(2)或者有关产品或其环境的信息,这些信息可能在攻击中很有用,但是攻击者通常不能获取这些信息。信息泄露涉及多种不同类型的问题,并且严重程度依赖于泄露信息的类型。
常见后果
技术影响:
Read application data
影响范围:
机密性

安全特征问题 CWE-254: Security Features

描述
此类漏洞是指与身份验证、访问控制、机密性、密码学、权限管理等有关的漏洞,是一些与软件安全有关的漏洞。如果有足够的信息,此类漏洞可进一步分为更低级别的类型。

信任管理 CWE-255: Credentials Management

描述
此类漏洞是与证书管理相关的漏洞。包含此类漏洞的组件通常存在默认密码或者硬编码密码、硬编码证书。

权限许可和访问控制 CWE-264: Permissions, Privileges, and Access Controls

描述
此类漏洞是与许可、权限和其他用于执行访问控制的安全特征的管理有关的漏洞。

访问控制错误 CWE-284: Improper Access Control

描述
软件没有或者没有正确限制来自未授权角色的资源访问。
访问控制涉及若干保护机制,
例如认证(提供身份证明)、
授权(确保特定的角色可以访问资源)与记录(跟踪执行的活动)。
当未使用保护机制或保护机制失效时,攻击者可以通过获得权限、读取敏感信息、执行命令、规避检测等来危及软件的安全性。
常见后果
技术影响:Varies by context

授权问题 CWE-287: Improper Authentication

描述
程序没有进行身份验证或身份验证不足,此类漏洞是与身份验证有关的漏洞。
常见后果
技术影响:
Read application data;
Gain privileges / assume identity;
Execute unauthorized code or commands
影响范围:
机密性、完整性和可用性

加密问题 CWE-310: Cryptographic Issues

描述
此类漏洞是与加密使用有关的漏洞,涉及内容加密、密码算法、弱加密(弱口令)、明文存储敏感信息等。

未充分验证数据可靠性 CWE-345: Insufficient Verification of Data Authenticity

描述
程序没有充分验证数据的来源或真实性,导致接受无效的数据。
常见后果
技术影响:
Varies by context;
Unexpected state
影响范围:
完整性

跨站请求伪造 CWE-352: Cross-Site Request Forgery

描述
Web应用程序没有或不能充分验证有效的请求是否来自可信用户。
如果web服务器不能验证接收的请求是否是客户端特意提交的,则攻击者可以欺骗客户端向服务器发送非预期的请求,web服务器会将其视为真实请求。这类攻击可以通过URL、图像加载、XMLHttpRequest等实现,可能导致数据暴露或意外的代码执行。
常见后果
技术影响:
Gain privileges / assume identity;
Bypass protection mechanism;
Read application data;
Modify application data;
DoS: crash / exit / restart
影响范围:
机密性、完整性和可用性

竞争条件 CWE-362: Race Condition

描述
程序中包含可以与其他代码并发运行的代码序列,且该代码序列需要临时地、互斥地访问共享资源。但是存在一个时间窗口,在这个时间窗口内另一段代码序列可以并发修改共享资源。
如果预期的同步活动位于安全关键代码,则可能带来安全隐患。安全关键代码包括记录用户是否被认证,修改重要状态信息等。竞争条件发生在并发环境中,根据上下文,代码序列可以以函数调用,少量指令,一系列程序调用等形式出现。
常见后果
技术影响:
DoS: resource consumption (CPU);
DoS: resource consumption (memory);
DoS: resource consumption (other);
DoS: crash / exit / restart;
DoS: instability;
Read files or directories;
Read application data
影响范围:机密性、完整性和可用性

资源管理错误 CWE-399: Resource Management Errors

描述
此类漏洞与系统资源的管理不当有关。该类漏洞是由于软件执行过程中对系统资源(如内存、磁盘空间、文件等)的错误管理造成的。

资料不足

描述
根据目前信息暂时无法将该漏洞归入上述任何类型,或者没有足够充分的信息对其进行分类,漏洞细节未指明。

以上内容总结整理自CNNVD漏洞分类指南

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/47424.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于Tree-LSTM网络语义表示模型

TC;DR 目前的LSTM仅能对序列信息进行建模, 但是自然语言中通常由词组成的短语形成了句法依存的语义树。为了学习到树结构的语义信息。论文中提出了两种Tree-LSTM模型。Child-Sum、Tree-LSTM、和N-ary Tree LSTMs。实验部分的Tree-LSTM、对比多种LSTMs的…

09【MyBatis多表关联查询】

文章目录三、MyBatis多表关联查询3.1 表的关系3.2 一对一查询3.2.1 搭建环境3.2.2 需求分析3.2.3 dao接口3.2.3 mapper.xml3.2.4 测试3.2.5 配置MyBatis一对一关系1)传统映射:2)使用association标签映射3.3 一对多查询3.3.1 需求分析3.3.2 da…

Codeforces Round #799 (Div. 4) H. Gambling

翻译: 玛丽安在赌场。赌场里的游戏是这样的。 在每一轮之前,玩家在1到109之间选择一个数字。在那之后,一个有109个面的骰子被滚动,这样就会出现1到109之间的随机数。如果玩家猜对了数字,他们的钱就会翻倍&#xff0c…

C++原子操作和互斥锁性能(速度)对比

先说结论:原子操作性能(速度)强于互斥锁,下面用例子进行说明。 编写测试demo,开启两个线程,对全局变量n分别进行自增、自减操作,计算执行时间。 首先看没有用任何手段进行互斥的情况&#xff0c…

Springboot生成Word/EXECL/PPTX文档

目录 一、概述 二、使用介绍 第一种Poi-tl: 1、介绍 2、功能 第二种Poi: 什么是POI 二进制分布 源码分发 一、概述 Word模板引擎:使用Word模板和数据生成对应的Word文档。 方案移植性功能性易用性 Poi-tl Java跨平台 Word模板引擎&#…

【uniapp小程序】路由跳转navigator传参封装

文章目录🍍前言🍋正文1、看官网1.1 navigator API 介绍1.2、路由跳转参数传递1.3、五种常见的跳转方式1.3.1 uni.navigateTo(OBJECT)1.3.2 uni.redirectTo(OBJECT)1.3.3 uni.reLaunch(OBJECT)1.3.4 uni.switchTab(OBJECT)1.3.5 uni.navigateBack(OBJECT)…

Ensp用windows回环口连接cloud配置

Ensp模拟通过本机(windows)用python脚本批量配置华为数通设备时,为了避免对内网资源的浪费最好用回环口(loopback)。 一、windows开启loopback虚拟接口 概要: right click on window start menu icon an…

【C++】类型转换

目录 一、C语言风格类型转换 二、C风格类型转换 1.static_case 2.reinterpret_case 3、const_case 4、dynamic_case 三、RTTI 总结 一、C语言风格类型转换 在C语言中,如果赋值运算符左右两侧类型不同,或者形参与实参类型不匹配,或者返…

N-Gram模型介绍

N-gram是一种基于统计语言模型的算法,基本思想是将文本内容按照字节进行大小为N的滑动窗口操作,形成了长度是N的字节片段序列。 每一个字节片段称为gram,对所有gram的出现频度进行统计,并且按照事先设定好的阈值进行过滤&#xf…

PowerQuery:使用正则表达式

博客来源于我的语雀专栏:R 语言 语雀 更多内容同步更新请关注我的语雀:令平子 语雀 参考资料:部分已引用到各段落 在Power Query中使用正则表达式 Power query 自定义正则表达式函数 新建空白查询,粘贴以下代码,使用…

gcc: error trying to exec ‘cc1plus‘: execvp: no such file or directory

该问题是缺少gcc文件,或者gcc与g版本不匹配问题 问题来源1:系统文件的缺失或者不匹配 按照如下方法测试 安装主要是利用apt-get安装,如果没有root权限的话,只能下载源码进行编译安装,然后添加路径环境,安…

JavaWeb简单实例——Ajax请求

简单介绍: 在上一章节我们展示了关于jQuery的一些基本操作,接下来我们就要进行Ajax的一些基础操作,在真正执行操作之前,我们还需要一点前置的准备,就是关于发送和请求JSON数据的准备。 请求JSON数据: JS…

板卡测评 | 基于TI AM5708开发板——ARM+DSP多核异构开发案例分享

本次测评板卡是创龙科技旗下的TL570x-EVM,它是一款基于TI Sitara系列AM5708ARM Cortex-A15+浮点DSPC66x处理器设计的异构多核SOC评估板,由核心板和评估底板组成。核心板经过专业的PCB Layout和高低温测试验证,稳定可靠,可满足各种工业应用环境。 评估板接口资源丰富,引出…

你还不懂《顺序表》?那就不要错过这篇文章!!!

🎇🎇🎇作者: 小鱼不会骑车 🎆🎆🎆专栏: 《java练级之旅》 🎓🎓🎓个人简介: 一名专科大一在读的小比特,努力学习编程是我…

怎样翻译文本?这三种翻译方法我经常使用

大家是不是还在将收到的文本或资料一句一句地复制到浏览器去翻译,再将翻译结果粘贴回文内呢?这种方法固然可以,但要是遇到需要翻译的文本内容比较多的情况时,就会很浪费时间和精力,如果恰好被英语不好的小伙伴遇到这种…

NoSQL数据库之Redis2

Redis 事务 事务的基础概念 关于事务最常见的例子就是银行转账,A 账户给 B 账户转账一个亿 (T1),买一块地盖房子。在这种交易的过程中,有几个问题值得思考: 如何同时保证上述交易中,A账户总金额减少一个亿&#xff…

[附源码]Python计算机毕业设计Django的毕业生就业系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

蜂鸟E203学习笔记(四)——取指

1.1 取值概述 1.1.1 如何快速取指 首先要保证存储器的读延时足够小,通常使用指令紧耦合存储器(ITCM)和指令缓存器(ICache)。 ITCM通常使用离处理核很近的SRAM因此实现极短的延时。但是没有过大的存储空间&#xff0…

社区系统项目复盘-2

文章目录登录模块注册登录账号设置登录模块 重要知识点: ThreadLocal,Hostholder采用Threadlocal持有用户信息,用于代替session对象 ThreadLocal采用线程隔离的方式存放数据,可以避免多线程之间出现数据访问冲突。ThreadLocal提…

小程序全局配置文件以及常用配置项

一、window常用配置 1.小程序根目录下的app.json文件时小程序的全局配置文件。常用配置项如下: ① pages 记录当前小程序所有页面的存放路径 ② window 全局设置小程序窗口的外观 ③ tabBar 设置小程序底部的tabBar效果 ④ style 是否启用新版的组件样式 …