CWE

常见的弱点枚举

一个由社区开发的软件&硬件缺陷类型的列表

2021 CWE最重要的硬件的弱点
CWE最危险的弱点
>CWE列表> CWE -个人字典定义(4.10)
ID

CWE观点:方案及质量度量(2020)

视图ID: 1305
类型:
下载:小册子|CSV|XML
+客观的
这个视图列出了最重要的软件质量问题被财团信息与软件质量(方案)自动化质量特性的措施,于2020年发布。这些措施都是从对象管理组织(OMG)的标准。
+观众
利益相关者 描述
软件开发人员 这个视图提供了一个很好的起点对于任何参与软件开发(包括建筑师、设计师、程序员、测试人员)来确保代码质量问题被认为是在开发过程中。
产品供应商 该视图可以帮助产品供应商理解代码质量问题和传达他们的软件的整体状态。
评估工具供应商 这个视图提供了一个良好的起点评估工具厂商(如供应商出售静态分析工具)希望了解什么是软件代码质量好的,质量问题可能会关注的。
+的关系
下面的图显示了树状之间的关系在不同级别的抽象上存在的弱点。在最高的层次上,类别和支柱存在弱点。类别(不是技术上的缺点)是特殊CWE条目用于集团弱点,共享一个共同的特点。柱子是描述的弱点在最抽象的时尚。下面这些顶级条目的弱点是不同程度的抽象。类仍然非常抽象,通常独立于任何特定的语言或技术。基础水平的弱点是用来提供一个更具体的类型的弱点。变量是一个弱点,在很低的水平的细节,描述通常局限于一个特定的语言或技术。链是一系列的缺点,必须可以连续产生可利用的漏洞。而复合的缺点是一组必须同时在场,以产生一个可利用的漏洞。
显示详细信息:
1305 -方案质量度量(2020)
+ 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。方案及质量措施——可靠性- (1306)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)
弱点这类方案及相关质量可靠性措施。存在这些缺点可以减少软件的可靠性。
+ 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。不当的操作限制的范围内一个内存缓冲区- (119)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>119年 (限制不当操作内存缓冲区的边界内)
产品执行操作内存缓冲区,但它可以从磁盘读取或写入的内存位置之外的目标缓冲区的边界。缓冲区溢出缓冲区溢出内存安全
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。缓冲区复制没有检查输入的大小(经典的缓冲区溢出)- (120)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>119年 (限制不当操作内存缓冲区的边界内)>120年 (缓冲区复制没有检查输入的大小(“经典缓冲区溢出”))
产品输入缓冲区复制到输出缓冲区没有验证输入缓冲区的大小小于输出缓冲区的大小,导致缓冲区溢出。经典的缓冲区溢出无限的转移
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。Write-what-where条件- (123)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>119年 (限制不当操作内存缓冲区的边界内)>123年 (Write-what-where条件)
任何条件,即攻击者有能力写一个任意值到任意位置,通常作为一个缓冲区溢出的结果。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。禁止入内的读- (125)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>119年 (限制不当操作内存缓冲区的边界内)>125年 (禁止入内的阅读)
产品读取数据过去,一开始,或之前预期的缓冲区。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。处理不当的长度参数不一致- (130)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>119年 (限制不当操作内存缓冲区的边界内)>130年 (处理不当的长度参数不一致)
产品或结构解析一个格式化的消息,但它不处理或不正确处理长度字段与相关数据的实际长度不一致。长度操作长度篡改
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。之前访问的内存位置缓冲区的开始- (786)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>119年 (限制不当操作内存缓冲区的边界内)>786年 (访问的内存位置缓冲区开始之前)
产品读取或写入缓冲区使用索引或指针,引用一个内存位置之前缓冲区的开始。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。禁止入内的写- (787)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>119年 (限制不当操作内存缓冲区的边界内)>787年 (禁止入内的写)
结束过去的产品写数据,或者在开始之前,预期的缓冲区。内存泄露
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。访问结束后的内存位置缓冲区- (788)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>119年 (限制不当操作内存缓冲区的边界内)>788年 (访问的内存位置缓冲区结束后)
产品读取或写入缓冲区使用索引或指针,引用一个内存位置后的缓冲区。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。缓冲区长度值不正确的访问- (805)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>119年 (限制不当操作内存缓冲区的边界内)>805年 (缓冲区访问与不正确的长度值)
产品使用顺序操作读或写一个缓冲,但它使用一个不正确的长度值,使访问内存缓冲区的边界之外。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不可信的指针- (822)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>119年 (限制不当操作内存缓冲区的边界内)>822年 (不可信的指针)
产品来自不受信任来源的获取一个值,将该值转换为一个指针,取消引用指针。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。超出范围的使用指针偏移量- (823)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>119年 (限制不当操作内存缓冲区的边界内)>823年 (超出范围使用指针偏移)
产品对一个有效的执行指针算术指针,但它使用一个偏移量,可以指出目的范围外的结果有效的内存位置的指针。不可信的指针偏移量
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。访问未初始化的指针- (824)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>119年 (限制不当操作内存缓冲区的边界内)>824年 (访问未初始化的指针)
产品访问或使用一个指针没有初始化。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。过期的指针- (825)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>119年 (限制不当操作内存缓冲区的边界内)>825年 (过期的指针)
产品取消引用指针包含一个内存位置之前有效,但不再有效。悬空指针
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不当零终止- (170)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>170年 (不当空终止)
产品不终止或不正确地终止字符串或数组null字符或等价的终结者。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不返回值- (252)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>252年 (不返回值)
产品不会检查方法或函数返回值,可以防止检测意想不到的状态和条件。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。没有行动检测错误条件- (390)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>390年 (检测错误条件没有行动)
产品检测到一个特定的错误,但没有行动来处理错误。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。意想不到的状态代码或返回值- (394)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>394年 (意想不到的状态代码或返回值)
产品不正确检查当函数或操作函数返回一个值,是合法的,但不是所期望的产品。
+ 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。不当关机或释放资源- (404)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>404年 (不当资源关闭或释放)
产品不释放或错误发布资源前可以重用。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。失踪之后释放内存有效寿命- (401)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>404年 (不当资源关闭或释放)>401年 (缺少释放内存之后有效的一生)
产品没有足够的跟踪和释放分配的内存后,慢慢消耗剩余的内存。内存泄漏
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。失踪后释放资源的有效寿命- (772)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>404年 (不当资源关闭或释放)>772年 (失踪后释放资源有效的一生)
产品不其有效寿命结束后释放资源,即。后,资源不再需要。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。失踪的文件描述符或处理后有效- (775)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>404年 (不当资源关闭或释放)>775年 (缺少释放文件描述符或处理后有效的一生)
产品没有发布一个文件描述符或处理其有效寿命结束后,即文件描述符/处理后,不再需要。
* 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。保护不当备用路径- (424)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>424年 (备选路径的不当保护)
产品不充分保护所有可能的路径,用户可以访问限制功能或资源。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不完整的清理- (459)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>459年 (不完全清理)
产品不正确的“清理”,删除临时或支持资源后使用。清理不足
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。空指针废弃- (476)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>476年 (空指针)
应用程序时出现空指针废弃取消引用指针,它预计将是有效的,但是是空的,通常导致崩溃或退出。NPD零deref空指针
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。使用不正确的操作符- (480)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>480年 (使用不正确的操作符)
产品不小心使用了错误的操作符,它改变了逻辑在安全相关的方面。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。省略Break语句在开关- (484)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>484年 (省略Break语句在开关)
产品中省略了一个break语句一个开关或类似的构造,导致与之相关的代码执行多个条件。这会产生问题时,程序员只为了执行代码与一个条件有关。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。返回堆栈变量的地址- (562)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>562年 (返回堆栈变量的地址)
一个函数返回一个堆栈变量的地址,这将导致意想不到的程序行为,通常的形式崩溃。
+ 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。比较对象引用,而不是对象的内容- (595)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>595年 (比较对象引用,而不是对象的内容)
产品比较对象引用,而不是对象本身的内容,防止检测对象。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。持久存储数据元素没有关联比较控制元件- (1097)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>595年 (比较对象引用,而不是对象的内容)>1097年 (持久存储数据元素没有关联比较控制元件)
产品使用一个存储数据元素没有所有必要的相关函数或方法来支持比较。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。使用错误的操作符的字符串比较- (597)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>595年 (比较对象引用,而不是对象的内容)>597年 (使用错误的操作符字符串比较)
产品使用错误的操作符比较字符串时,比如使用“= =”当.equals()方法应该使用。
+ 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。不同步- (662)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>662年 (不同步)
该产品利用多个线程或进程允许临时访问共享资源,只能独享一个过程,但这并不正确同步这些动作,这可能导致由多个线程同时访问这个资源或流程。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。调用控制元件在多线程环境中使用最后静态存储或成员元素- (1058)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>662年 (不同步)>1058年 (调用控制元件在多线程情况下不是final静态存储或元素)
代码包含一个函数或方法,运行在多线程环境中,但拥有一个不安全的最后的静态存储数据元素或成员。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。单例类的实例创建没有适当的锁定或同步- (1096)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>662年 (不同步)>1096年 (单例类的实例创建没有适当的锁定或同步)
产品实现了一个单例设计模式,但不使用适当的锁定或其他同步机制来确保单例类只初始化一次。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。在一个线程竞争条件- (366)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>662年 (不同步)>366年 (竞争条件在一个线程)
如果两个线程同时执行的使用资源,存在资源可以使用而无效的可能性,进而使执行未定义的状态。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。使用单例模式没有同步在多线程环境中- (543)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>662年 (不同步)>543年 (使用单例模式没有在多线程同步上下文)
产品使用了单例模式在多线程环境中创建资源时。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。同步多线程访问共享数据上下文- (567)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>662年 (不同步)>567年 (同步多线程访问共享数据上下文)
产品不正确同步共享数据,如跨线程的静态变量,从而导致未定义行为和不可预知的数据变化。
* 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。不适当的锁定- (667)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>662年 (不同步)>667年 (不当锁定)
产品不正确获取或释放资源的锁,导致意想不到的资源状态和行为变化。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。一个关键资源的多个锁- (764)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>662年 (不同步)>764年 (一个关键资源的多个锁)
产品锁关键资源多次,导致系统中一个意想不到的状态。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。失踪的同步- (820)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>662年 (不同步)>820年 (缺少同步)
产品利用共享资源以并行的方式,但不尝试同步访问资源。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不正确的同步- (821)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>662年 (不同步)>821年 (不正确的同步)
产品利用共享资源以并行的方式,但这并不正确同步访问资源。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。死锁- (833)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>662年 (不同步)>833年 (僵局)
产品包含多个线程或可执行的部分,正在等待对方释放必要的锁,导致死锁。
+ 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。不适当的初始化- (665)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>665年 (不适当的初始化)
产品不初始化或不正确地初始化一个资源,这可能会让资源在一个意想不到的状态时访问或使用。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。失踪的初始化一个变量- (456)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>665年 (不适当的初始化)>456年 (没有初始化的变量)
产品不关键变量进行初始化,导致执行环境使用意想不到的价值。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。使用未初始化的变量- (457)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>665年 (不适当的初始化)>457年 (使用未初始化的变量)
代码使用一个变量没有初始化,导致不可预知的或意想不到的结果。
+ 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。过期或释放后操作资源- (672)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>672年 (操作资源后过期或释放)
产品使用、访问或操作资源之后,资源已经过期,释放,或撤销。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。双自由- (415)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>672年 (操作资源后过期或释放)>415年 (双免费)
产品电话免费()两次在同一个内存地址,可能导致修改意想不到的内存位置。双重释放
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。使用后免费- (416)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>672年 (操作资源后过期或释放)>416年 (使用后免费)
引用的内存被释放后可以导致程序崩溃,使用意想不到的价值,或执行代码。悬空指针Use-After-Free
+ 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不正确的数值类型之间的转换- (681)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>681年 (不正确的数值类型之间的转换)
当从一个数据类型转换到另一个,比如长整数,数据可以省略或翻译的方式产生意想不到的价值。如果使用生成的值在一个敏感的情况下,就可能发生危险的行为。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。意想不到的符号扩展- (194)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>681年 (不正确的数值类型之间的转换)>194年 (意想不到的符号扩展)
产品上执行一个操作数,导致它是符号扩展时转变成一个更大的数据类型。当原始号码是负的,这可以产生意想不到的价值,导致合成的弱点。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。签署无符号转换错误- (195)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>681年 (不正确的数值类型之间的转换)>195年 (签署无符号转换错误)
产品使用原始签署和执行一个无符号的原始,可以产生意想不到的价值,如果签署了原始的价值不能使用无符号来表示原始。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。未签名的签名转换错误- (196)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>681年 (不正确的数值类型之间的转换)>196年 (无符号签署转换错误)
产品使用一个无符号的原始原始签署和执行,从而产生出意想不到的价值的价值符号基本数据不能代表使用原始签名。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。数字截断误差- (197)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>681年 (不正确的数值类型之间的转换)>197年 (数字截断误差)
截断误差发生当一个原始的小一号的原始和转换数据丢失。
+ 支柱支柱——一个弱点是最抽象类型的弱点和代表一个主题类/基地/变体相关弱点。支柱是不同于一个类别作为支柱技术上仍然是一种弱点,描述了一个错误,而一个类别代表一个共同特征用于组相关的东西。错误的计算- (682)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>682年 (不正确的计算)
产品执行计算,生成错误或意想不到的结果,后来用于强调安全的决策或资源管理。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不正确的缓冲区大小的计算- (131)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>682年 (不正确的计算)>131年 (不正确的计算缓冲区大小)
产品不正确计算时使用的大小分配一个缓冲区,这可能会导致缓冲区溢出。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。除以零- (369)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>682年 (不正确的计算)>369年 (除以零)
这个产品值除以零。
+ 支柱支柱——一个弱点是最抽象类型的弱点和代表一个主题类/基地/变体相关弱点。支柱是不同于一个类别作为支柱技术上仍然是一种弱点,描述了一个错误,而一个类别代表一个共同特征用于组相关的东西。检查或不当处理异常情况- (703)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>703年 (支票或不当处理异常情况)
产品不正确地预见和处理异常情况很少发生在产品的正常运行。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。未捕获异常- (248)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>703年 (支票或不当处理异常情况)>248年 (异常)
从一个函数抛出异常,但这并不是她的老公知道。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。未经检查的错误条件- (391)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>703年 (支票或不当处理异常情况)>391年 (未检测错误条件)
(计划在弃用。看到维修笔记和考虑cwe - 252, cwe - 248,或cwe - 1069。)忽略异常和其他错误条件可能允许攻击者产生异常行为引起注意。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。失踪的报告错误条件- (392)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>703年 (支票或不当处理异常情况)>392年 (错误条件的缺失报告)
产品遇到错误但不提供一个状态码或返回值,表明发生了一个错误。
* 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。不正确类型转换或演员- (704)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>704年 (错误类型转换或铸)
产品不正确地转换为一个对象,资源,或结构从一个类型到另一个类型。
* 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。依赖未定义不明,或实现定义的行为- (758)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>758年 (未指明的依赖未定义或定义行为)
产品使用API函数,数据结构,或其他实体的方式依赖于属性并不总是保证持有实体。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。循环和遥不可及的退出条件(无限循环)- (835)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>835年 (循环不可到达的退出条件(无限循环))
产品包含一个迭代或循环的退出条件不能达到,即。,无限循环。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。使用未初始化资源- (908)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>908年 (使用未初始化的资源)
产品使用或访问资源尚未初始化。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。与虚拟析构函数和子类父类没有虚析构函数- (1045)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>1045年 (父类没有虚拟的虚拟析构函数和子类析构函数)
父类有一个虚析构函数方法,但父母有一个孩子没有虚拟析构函数的类。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。用硬编码的网络资源配置数据初始化- (1051)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>1051年 (与硬编码的网络资源配置数据初始化)
产品使用硬编码的值初始化数据作为网络资源标识符。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。失踪的序列化控制元件- (1066)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>1066年 (缺少序列化控制元件)
产品包含一个可序列化的数据元素,没有一个相关的序列化方法。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。可序列化的数据元素包含non-Serializable项元素- (1070)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>1070年 (可序列化的数据元素包含non-Serializable项元素)
产品包含一个可序列化的,可储存的数据元素,如字段或成员,但是数据元素包含成员元素没有可序列化的。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。浮点数与不正确的操作符- (1077)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>1077年 (与不正确的浮点比较操作符)
代码执行两个浮动之间的比较,如一个平等的测试(浮点)值,但它使用比较运算符,不占精度损失的可能性。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。父类没有虚析构函数的方法- (1079)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>1079年 (父类没有虚析构函数方法)
一个父类包含一个或多个子类,但父类没有虚析构函数的方法。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。自我破坏控制元件类实例- (1082)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>1082年 (类实例的自我破坏控制元件)
代码包含一个类实例,调用方法或函数删除或销毁。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。数据访问管理器组件预期以外的数据- (1083)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>1083年 (预期的数据以外的数据访问管理器组件)
该产品旨在通过一个特定的数据管理器来管理数据访问组件,如关系或非sql数据库中,但是它包含执行数据访问操作的代码没有使用该组件。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。没有一个虚拟析构函数类和虚拟方法- (1087)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>1087年 (类和虚拟方法没有一个虚拟析构函数)
一个类包含一个虚方法,但该方法没有一个相关的虚拟析构函数。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。同步访问远程资源没有超时- (1088)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>1088年 (同步访问远程资源没有超时)
代码有一个同步调用远程资源,但是没有超时,或者超时设置为无限。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。数据元素包含指针项目没有适当的复制控制元件- (1098)
1305年 (方案及质量度量(2020))>1306年 (方案及质量措施——可靠性)>1098年 (数据元素包含指针项目没有适当的复制控制元件)
代码包含一个数据元素的指针,没有一个相关的复制或构造函数的方法。
+ 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。方案及质量度量,可维护性- (1307)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)
弱点这类方案及质量相关措施可维护性。存在这些缺点可以减少软件的可维护性。
* 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。低效率的算法复杂度- (407)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>407年 (低效率的算法复杂度)
一个算法在一个产品有一个效率低下的最坏情况可能损害系统性能和计算复杂度可以引发的攻击者,通常使用精心操作,确保达到最坏的情况下。二次复杂性
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。失踪的默认情况下在多个条件表达式- (478)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>478年 (缺少默认情况下在多个条件表达式)
代码表达式中没有一个默认情况下使用多个条件,比如一个switch语句。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。使用不正确的操作符- (480)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>480年 (使用不正确的操作符)
产品不小心使用了错误的操作符,它改变了逻辑在安全相关的方面。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。省略Break语句在开关- (484)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>484年 (省略Break语句在开关)
产品中省略了一个break语句一个开关或类似的构造,导致与之相关的代码执行多个条件。这会产生问题时,程序员只为了执行代码与一个条件有关。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。死代码- (561)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>561年 (死代码)
产品包含死代码,无法执行。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。表达式总是错误的- (570)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>570年 (表达式总是错误)
产品包含一个表达式,总是计算为false。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。表达式总是正确的- (571)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>571年 (表达式总是正确的)
产品包含一个表达式,总是评估为true。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。运算符优先级逻辑错误- (783)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>783年 (运算符优先级逻辑错误)
产品使用一个表达式的运算符优先级导致使用错误的逻辑。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。使用冗余代码- (1041)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1041年 (使用的冗余代码)
该产品具有多种功能、方法、程序、宏等等,包含相同的代码。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。与虚拟析构函数和子类父类没有虚析构函数- (1045)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1045年 (父类没有虚拟的虚拟析构函数和子类析构函数)
父类有一个虚析构函数方法,但父母有一个孩子没有虚拟析构函数的类。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。模块与循环依赖- (1047)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1047年 (与循环依赖模块)
产品包含的模块,一个模块的引用,循环回本身,即。,有循环依赖。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。调用控制元件的大量外部调用- (1048)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1048年 (调用控制元素的大量外部调用)
代码包含调用控制元素包含一个特别大的数对其他应用程序对象的引用外部调用的上下文,即过度大扇出价值。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。用硬编码的网络资源配置数据初始化- (1051)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1051年 (与硬编码的网络资源配置数据初始化)
产品使用硬编码的值初始化数据作为网络资源标识符。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。过度使用硬编码文本初始化- (1052)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1052年 (在初始化过度使用硬编码的文字)
产品初始化数据元素使用硬编码的文字,不是一个简单的整数或静态常量元素。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不必要的调用控制元件在一个深水平层- (1054)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1054年 (在一个不必要的调用控制元件深水平层)
代码在一个架构层调用的代码驻留在更深的一层比相邻层,即。跳过至少一层调用,调用代码不属于垂直效用层,可以引用任何水平层。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。从具体类多重继承- (1055)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1055年 (具体类的多重继承)
产品包含一个类继承多个具体类。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。父类与子类的引用- (1062)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1062年 (父类与子类的引用)
的代码有一个父类,其中包含子类的引用,其方法或其成员。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。调用控制元件与签名包含过多的参数- (1064)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1064年 (调用控制元素签名包含过多的参数)
产品包含一个函数、子程序或方法的签名有一个不必要的大量参数/参数。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。类过深的继承- (1074)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1074年 (与过深的继承类)
一个类继承的水平太高了,也就是说。,它有一个大量的父类。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。无条件的控制流开关组外的转移- (1075)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1075年 (无条件的控制流传输开关组外)
产品执行无条件的控制转移(如“goto”)在代码之外的一个分支结构如开关部件。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。父类没有虚析构函数的方法- (1079)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1079年 (父类没有虚析构函数方法)
一个父类包含一个或多个子类,但父类没有虚析构函数的方法。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。源代码文件,过度的代码的行数- (1080)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1080年 (源代码文件与过度的代码行数)
一个源代码文件的代码行数太多了。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。调用控制元件与过度的文件或数据访问操作- (1084)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1084年 (调用控制元素过多的文件或数据访问操作)
一个函数或方法包含太多的操作,利用数据管理器或文件资源。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。调用控制元件与过度的注释掉的代码- (1085)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1085年 (调用控制元素的过量体积注释掉代码)
函数、方法、过程等含有过量的代码被注释掉了它的身体内。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。类子类的过多- (1086)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1086年 (类过度数量的孩子类)
一个类包含一个不必要的大量的儿童。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。没有一个虚拟析构函数类和虚拟方法- (1087)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1087年 (类和虚拟方法没有一个虚拟析构函数)
一个类包含一个虚方法,但该方法没有一个相关的虚拟析构函数。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。方法包含访问另一个类的成员元素- (1090)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1090年 (方法包含访问另一个类的成员元素)
一个类方法执行一个操作,直接从另一个类成员访问元素。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。内循环条件值更新循环- (1095)
1305年 (方案及质量度量(2020))>1307年 (方案及质量度量-可维护性)>1095年 (循环条件值更新内循环)
产品使用一个循环与基于控制流条件的值更新的体内循环。
+ 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。方案及质量措施,安全- (1308)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)
这一类的弱点有关方案及质量安全措施。存在这些缺点可以减少软件的安全性。
+ 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不当限制限制目录的路径名(“路径遍历”)(22)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>22 (不当限制限制目录的路径名(路径遍历))
产品使用外部输入来构造一个路径名,目的是为了辨别一个文件或目录,坐落在父目录的限制,但是产品不正确路径名中的中和特殊元素可以导致路径名来解决限制目录以外的位置。目录遍历路径遍历
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。相对路径遍历- (23)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>22 (不当限制限制目录的路径名(路径遍历))>23 (相对路径遍历)
产品使用外部输入来构造一个路径名应该在一个受限制的目录,但它不适当中和序列如“. .”,可以解决该目录以外的一个位置。拉链滑
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。绝对路径遍历(36)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>22 (不当限制限制目录的路径名(路径遍历))>36 (绝对路径遍历)
产品使用外部输入来构造一个路径名应该在一个受限制的目录,但它不适当中和绝对路径序列如“/ abs /路径”,能够解决该目录以外的位置。
+ 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。不当中和一个命令中使用的特殊元素(“命令注入”)- (77)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>77年 (不当中和特殊元素中使用一个命令(“命令注入”))
产品结构的全部或部分命令使用externally-influenced输入从一个上游组件,但这并不中和或错误地中和特殊元素时可以修改预定的命令发送到下游组件。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。可执行正则表达式错误- (624)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>77年 (不当中和特殊元素中使用一个命令(“命令注入”))>624年 (可执行正则表达式错误)
产品使用一个正则表达式,要么(1)包含一个可执行组件与用户控制输入,或(2)允许用户启用执行插入模式修饰符。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不当使用中和特殊元素在一个操作系统命令(OS命令注入)- (78)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>77年 (不当中和特殊元素中使用一个命令(“命令注入”))>78年 (中和不当使用特殊的元素在一个操作系统命令(OS命令注入))
产品结构的全部或部分操作系统命令使用externally-influenced输入从一个上游组件,但这并不中和或错误地中和特殊元素时,可以修改OS命令发送到下游组件。壳注射Shell元字符
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不当中和一个命令的参数分隔符(“参数注入”)- (88)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>77年 (不当中和特殊元素中使用一个命令(“命令注入”))>88年 (不当中和一个命令的参数分隔符(“参数注入”))
产品构造一个字符串的命令来执行一个单独的组件在另一个控制范围,但这并不正确划定目标参数,选项,或者开关命令字符串中。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不当中和一个表达式语言语句中使用的特殊元素(表达式语言注入)- (917)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>77年 (不当中和特殊元素中使用一个命令(“命令注入”))>917年 (不当中和特殊元素中使用表达式语言语句(表达式语言注入))
产品结构的全部或部分的表达式语言(EL)声明一个框架如Java服务器页面(JSP)使用externally-influenced输入从一个上游组件,但这并不中和或错误地中和特殊元素,可以修改预定的EL语句之前执行。EL注入
+ 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不当使用中和特殊元素在一个SQL命令(SQL注入)- (89)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>89年 (不当中和特殊元素中使用一个SQL命令(SQL注入的))
产品构造SQL命令的所有或部分使用externally-influenced输入从一个上游组件,但这并不中和或错误地中和特殊元素时,可以修改SQL命令发送到下游组件。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。SQL注入:冬眠- (564)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>89年 (不当中和特殊元素中使用一个SQL命令(SQL注入的))>564年 (SQL注入:Hibernate)
使用Hibernate执行动态SQL语句由用户控制输入允许攻击者可以修改语句的含义或执行任意SQL命令。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不当使用中和特殊元素在LDAP查询(LDAP注入)- (90)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>90年 (中和不当特殊元素中使用LDAP查询(LDAP注入))
LDAP查询的产品结构全部或部分使用externally-influenced输入从一个上游组件,但这并不中和或错误地中和特殊元素时,可以修改预定的LDAP查询发送到下游组件。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。XML注入(又名XPath盲注)- (91)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>91年 (XML注入(又名XPath盲注))
产品不正确中和特殊元素中使用XML,允许攻击者修改语法,内容,或命令的XML处理结束之前系统。
* 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。不恰当的控制资源标识符(“资源注入”)- (99)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>99年 (不当控制的资源标识符(“资源注入”))
产品从一个上游组件接收输入,但这并不限制或者错误地限制输入前用作标识符以外的资源可能有意的控制范围。不安全的直接对象引用
+ 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。不当的操作限制的范围内一个内存缓冲区- (119)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>119年 (限制不当操作内存缓冲区的边界内)
产品执行操作内存缓冲区,但它可以从磁盘读取或写入的内存位置之外的目标缓冲区的边界。缓冲区溢出缓冲区溢出内存安全
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。缓冲区复制没有检查输入的大小(经典的缓冲区溢出)- (120)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>119年 (限制不当操作内存缓冲区的边界内)>120年 (缓冲区复制没有检查输入的大小(“经典缓冲区溢出”))
产品输入缓冲区复制到输出缓冲区没有验证输入缓冲区的大小小于输出缓冲区的大小,导致缓冲区溢出。经典的缓冲区溢出无限的转移
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。Write-what-where条件- (123)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>119年 (限制不当操作内存缓冲区的边界内)>123年 (Write-what-where条件)
任何条件,即攻击者有能力写一个任意值到任意位置,通常作为一个缓冲区溢出的结果。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。禁止入内的读- (125)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>119年 (限制不当操作内存缓冲区的边界内)>125年 (禁止入内的阅读)
产品读取数据过去,一开始,或之前预期的缓冲区。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。处理不当的长度参数不一致- (130)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>119年 (限制不当操作内存缓冲区的边界内)>130年 (处理不当的长度参数不一致)
产品或结构解析一个格式化的消息,但它不处理或不正确处理长度字段与相关数据的实际长度不一致。长度操作长度篡改
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。之前访问的内存位置缓冲区的开始- (786)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>119年 (限制不当操作内存缓冲区的边界内)>786年 (访问的内存位置缓冲区开始之前)
产品读取或写入缓冲区使用索引或指针,引用一个内存位置之前缓冲区的开始。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。禁止入内的写- (787)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>119年 (限制不当操作内存缓冲区的边界内)>787年 (禁止入内的写)
结束过去的产品写数据,或者在开始之前,预期的缓冲区。内存泄露
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。访问结束后的内存位置缓冲区- (788)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>119年 (限制不当操作内存缓冲区的边界内)>788年 (访问的内存位置缓冲区结束后)
产品读取或写入缓冲区使用索引或指针,引用一个内存位置后的缓冲区。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。缓冲区长度值不正确的访问- (805)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>119年 (限制不当操作内存缓冲区的边界内)>805年 (缓冲区访问与不正确的长度值)
产品使用顺序操作读或写一个缓冲,但它使用一个不正确的长度值,使访问内存缓冲区的边界之外。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不可信的指针- (822)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>119年 (限制不当操作内存缓冲区的边界内)>822年 (不可信的指针)
产品来自不受信任来源的获取一个值,将该值转换为一个指针,取消引用指针。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。超出范围的使用指针偏移量- (823)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>119年 (限制不当操作内存缓冲区的边界内)>823年 (超出范围使用指针偏移)
产品对一个有效的执行指针算术指针,但它使用一个偏移量,可以指出目的范围外的结果有效的内存位置的指针。不可信的指针偏移量
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。访问未初始化的指针- (824)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>119年 (限制不当操作内存缓冲区的边界内)>824年 (访问未初始化的指针)
产品访问或使用一个指针没有初始化。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。过期的指针- (825)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>119年 (限制不当操作内存缓冲区的边界内)>825年 (过期的指针)
产品取消引用指针包含一个内存位置之前有效,但不再有效。悬空指针
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。不当的验证数组索引- (129)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>129年 (不正确验证数组索引)
产品使用不受信任的输入在计算或使用数组索引,但是产品不验证或不正确验证索引,确保索引引用数组中的一个有效位置。禁止入内的数组索引index-out-of-range数组索引下溢
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。使用外部控制的格式字符串- (134)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>134年 (使用外部控制的格式字符串)
产品使用一个函数,它接受一个格式字符串作为参数,但格式字符串来自外部源。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不返回值- (252)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>252年 (不返回值)
产品不会检查方法或函数返回值,可以防止检测意想不到的状态和条件。
+ 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。不当关机或释放资源- (404)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>404年 (不当资源关闭或释放)
产品不释放或错误发布资源前可以重用。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。失踪之后释放内存有效寿命- (401)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>404年 (不当资源关闭或释放)>401年 (缺少释放内存之后有效的一生)
产品没有足够的跟踪和释放分配的内存后,慢慢消耗剩余的内存。内存泄漏
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。失踪后释放资源的有效寿命- (772)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>404年 (不当资源关闭或释放)>772年 (失踪后释放资源有效的一生)
产品不其有效寿命结束后释放资源,即。后,资源不再需要。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。失踪的文件描述符或处理后有效- (775)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>404年 (不当资源关闭或释放)>775年 (缺少释放文件描述符或处理后有效的一生)
产品没有发布一个文件描述符或处理其有效寿命结束后,即文件描述符/处理后,不再需要。
* 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。保护不当备用路径- (424)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>424年 (备选路径的不当保护)
产品不充分保护所有可能的路径,用户可以访问限制功能或资源。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。无限制上传文件与危险的类型- (434)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>434年 (无限制上传文件与危险的类型)
产品允许攻击者上传或危险的传输文件类型,可以自动处理产品的内环境。不受限制的文件上传
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。使用过时的功能- (477)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>477年 (使用过时的函数)
代码使用过时或陈旧的函数,这意味着没有得到积极检查或维护的代码。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。使用不正确的操作符- (480)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>480年 (使用不正确的操作符)
产品不小心使用了错误的操作符,它改变了逻辑在安全相关的方面。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。反序列化的数据不可信- (502)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>502年 (反序列化不可信的数据)
产品反序列化不可信数据不充分验证结果数据将是有效的。打包,包酸洗,unpicklePHP对象注入
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。表达式总是错误的- (570)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>570年 (表达式总是错误)
产品包含一个表达式,总是计算为false。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。表达式总是正确的- (571)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>571年 (表达式总是正确的)
产品包含一个表达式,总是评估为true。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。检查循环条件的输入- (606)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>606年 (不输入循环条件)
产品不正确检查输入用于循环条件,可能导致拒绝服务或其他后果,因为过度的循环。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。XML外部实体引用的不当限制- (611)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>611年 (不当限制XML外部实体引用)
产品流程一个XML文档,XML可以包含实体的uri解析文档之外的目的范围控制,导致产品不正确的文档嵌入到它的输出。XXE
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不当中和数据在XPath表达式(XPath注入)- (643)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>643年 (中和不当数据在XPath表达式(XPath注入))
产品使用外部输入动态地构建一个XPath表达式用于检索数据从XML数据库,但它不中和或输入错误中和。这允许攻击者控制的结构查询。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不当中和在XQuery表达式的数据(“XQuery注入”)- (652)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>652年 (中和不当数据在XQuery表达式(“XQuery注入”))
产品使用外部输入动态地构建一个XQuery表达式用于检索数据从XML数据库,但它不中和或输入错误中和。这允许攻击者控制的结构查询。
+ 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。不同步- (662)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>662年 (不同步)
该产品利用多个线程或进程允许临时访问共享资源,只能独享一个过程,但这并不正确同步这些动作,这可能导致由多个线程同时访问这个资源或流程。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。调用控制元件在多线程环境中使用最后静态存储或成员元素- (1058)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>662年 (不同步)>1058年 (调用控制元件在多线程情况下不是final静态存储或元素)
代码包含一个函数或方法,运行在多线程环境中,但拥有一个不安全的最后的静态存储数据元素或成员。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。单例类的实例创建没有适当的锁定或同步- (1096)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>662年 (不同步)>1096年 (单例类的实例创建没有适当的锁定或同步)
产品实现了一个单例设计模式,但不使用适当的锁定或其他同步机制来确保单例类只初始化一次。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。在一个线程竞争条件- (366)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>662年 (不同步)>366年 (竞争条件在一个线程)
如果两个线程同时执行的使用资源,存在资源可以使用而无效的可能性,进而使执行未定义的状态。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。使用单例模式没有同步在多线程环境中- (543)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>662年 (不同步)>543年 (使用单例模式没有在多线程同步上下文)
产品使用了单例模式在多线程环境中创建资源时。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。同步多线程访问共享数据上下文- (567)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>662年 (不同步)>567年 (同步多线程访问共享数据上下文)
产品不正确同步共享数据,如跨线程的静态变量,从而导致未定义行为和不可预知的数据变化。
* 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。不适当的锁定- (667)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>662年 (不同步)>667年 (不当锁定)
产品不正确获取或释放资源的锁,导致意想不到的资源状态和行为变化。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。一个关键资源的多个锁- (764)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>662年 (不同步)>764年 (一个关键资源的多个锁)
产品锁关键资源多次,导致系统中一个意想不到的状态。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。失踪的同步- (820)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>662年 (不同步)>820年 (缺少同步)
产品利用共享资源以并行的方式,但不尝试同步访问资源。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不正确的同步- (821)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>662年 (不同步)>821年 (不正确的同步)
产品利用共享资源以并行的方式,但这并不正确同步访问资源。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。死锁- (833)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>662年 (不同步)>833年 (僵局)
产品包含多个线程或可执行的部分,正在等待对方释放必要的锁,导致死锁。
+ 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。不适当的初始化- (665)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>665年 (不适当的初始化)
产品不初始化或不正确地初始化一个资源,这可能会让资源在一个意想不到的状态时访问或使用。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。失踪的初始化一个变量- (456)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>665年 (不适当的初始化)>456年 (没有初始化的变量)
产品不关键变量进行初始化,导致执行环境使用意想不到的价值。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。使用未初始化的变量- (457)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>665年 (不适当的初始化)>457年 (使用未初始化的变量)
代码使用一个变量没有初始化,导致不可预知的或意想不到的结果。
+ 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。过期或释放后操作资源- (672)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>672年 (操作资源后过期或释放)
产品使用、访问或操作资源之后,资源已经过期,释放,或撤销。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。双自由- (415)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>672年 (操作资源后过期或释放)>415年 (双免费)
产品电话免费()两次在同一个内存地址,可能导致修改意想不到的内存位置。双重释放
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。使用后免费- (416)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>672年 (操作资源后过期或释放)>416年 (使用后免费)
引用的内存被释放后可以导致程序崩溃,使用意想不到的价值,或执行代码。悬空指针Use-After-Free
+ 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不正确的数值类型之间的转换- (681)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>681年 (不正确的数值类型之间的转换)
当从一个数据类型转换到另一个,比如长整数,数据可以省略或翻译的方式产生意想不到的价值。如果使用生成的值在一个敏感的情况下,就可能发生危险的行为。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。意想不到的符号扩展- (194)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>681年 (不正确的数值类型之间的转换)>194年 (意想不到的符号扩展)
产品上执行一个操作数,导致它是符号扩展时转变成一个更大的数据类型。当原始号码是负的,这可以产生意想不到的价值,导致合成的弱点。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。签署无符号转换错误- (195)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>681年 (不正确的数值类型之间的转换)>195年 (签署无符号转换错误)
产品使用原始签署和执行一个无符号的原始,可以产生意想不到的价值,如果签署了原始的价值不能使用无符号来表示原始。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。未签名的签名转换错误- (196)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>681年 (不正确的数值类型之间的转换)>196年 (无符号签署转换错误)
产品使用一个无符号的原始原始签署和执行,从而产生出意想不到的价值的价值符号基本数据不能代表使用原始签名。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。数字截断误差- (197)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>681年 (不正确的数值类型之间的转换)>197年 (数字截断误差)
截断误差发生当一个原始的小一号的原始和转换数据丢失。
+ 支柱支柱——一个弱点是最抽象类型的弱点和代表一个主题类/基地/变体相关弱点。支柱是不同于一个类别作为支柱技术上仍然是一种弱点,描述了一个错误,而一个类别代表一个共同特征用于组相关的东西。错误的计算- (682)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>682年 (不正确的计算)
产品执行计算,生成错误或意想不到的结果,后来用于强调安全的决策或资源管理。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。不正确的缓冲区大小的计算- (131)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>682年 (不正确的计算)>131年 (不正确的计算缓冲区大小)
产品不正确计算时使用的大小分配一个缓冲区,这可能会导致缓冲区溢出。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。除以零- (369)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>682年 (不正确的计算)>369年 (除以零)
这个产品值除以零。
* 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。不正确的权限分配的关键资源- (732)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>732年 (不正确的权限分配关键资源)
重要的产品指定权限安全资源的方式允许读取或修改资源意想不到的演员。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。足够的日志- (778)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>778年 (日志记录不足)
强调安全事件发生时,产品没有记录的事件或省略了重要细节事件日志的时候。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。运算符优先级逻辑错误- (783)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>783年 (运算符优先级逻辑错误)
产品使用一个表达式的运算符优先级导致使用错误的逻辑。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。内存分配过多的大小值- (789)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>789年 (内存分配与过度大小值)
基于一个不可信的产品分配内存,大尺寸值,但这并不能保证尺寸在预期范围内,允许任意数量的内存分配。堆栈疲惫
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。中和不当输入在Web页面生成(“跨站点脚本编制”)- (79)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>79年 (中和不当输入在Web页面生成(“跨站点脚本编制”))
产品不中和或错误中和用户可控输入之前放在输出作为web页面使用的其他用户。XSSHTML注入CSS
+ 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。使用硬编码的凭证- (798)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>798年 (使用硬编码的凭证)
产品包含硬编码的凭证,如密码或密钥,这对自己的入站的身份验证,它使用出站通信外部组件,或内部数据的加密。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。使用硬编码的密码- (259)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>798年 (使用硬编码的凭证)>259年 (使用硬编码的密码)
产品包含一个硬编码的密码,它使用的入站出站通信的身份验证或外部组件。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。使用硬编码的加密密钥- (321)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>798年 (使用硬编码的凭证)>321年 (使用硬编码的加密密钥)
硬编码的加密密钥的使用显著增加加密的数据可以恢复的可能性。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。循环和遥不可及的退出条件(无限循环)- (835)
1305年 (方案及质量度量(2020))>1308年 (方案及质量措施,安全)>835年 (循环不可到达的退出条件(无限循环))
产品包含一个迭代或循环的退出条件不能达到,即。,无限循环。
+ 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。方案及质量措施——效率- (1309)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)
这一类的弱点有关方案及质量措施效率。存在这些缺点可以减少软件的效率。
+ 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。不当关机或释放资源- (404)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>404年 (不当资源关闭或释放)
产品不释放或错误发布资源前可以重用。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。失踪之后释放内存有效寿命- (401)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>404年 (不当资源关闭或释放)>401年 (缺少释放内存之后有效的一生)
产品没有足够的跟踪和释放分配的内存后,慢慢消耗剩余的内存。内存泄漏
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。失踪后释放资源的有效寿命- (772)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>404年 (不当资源关闭或释放)>772年 (失踪后释放资源有效的一生)
产品不其有效寿命结束后释放资源,即。后,资源不再需要。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。失踪的文件描述符或处理后有效- (775)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>404年 (不当资源关闭或释放)>775年 (缺少释放文件描述符或处理后有效的一生)
产品没有发布一个文件描述符或处理其有效寿命结束后,即文件描述符/处理后,不再需要。
* 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。保护不当备用路径- (424)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>424年 (备选路径的不当保护)
产品不充分保护所有可能的路径,用户可以访问限制功能或资源。
* 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。单例类的静态成员数据元素以外的元素- (1042)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>1042年 (单例类的静态成员数据元素以外的元素)
代码包含一个元素声明为静态成员(但不是最后一个),在它的父类元素不是一个单例类,也就是说,一个类元素,可以只使用一次”协会的创建操作。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。销售数据元素聚合过于大量的元素- (1043)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>1043年 (数据元素聚合过度销售大量的元素)
产品使用一个数据元素,有一个特别大的数的子元素与结构或聚合等非基本数据类型对象。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。使用字符串连接创建不可变的文本- (1046)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>1046年 (创建不可变的文本使用字符串连接)
产品使用字符串连接操作创建一个不可变的文本字符串。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。过多的数据查询操作在一个大数据表- (1049)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>1049年 (过度数据查询操作在一个大数据表)
产品执行数据查询与大量的连接和大数据表子查询。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。一个循环内过度平台资源消耗- (1050)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>1050年 (过度平台资源消耗在一个循环)
产品有一个循环体或循环条件,包含一个控制元件,直接或间接地消耗平台资源,例如消息传递、会话、锁,或文件描述符。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。预期之外的数据访问操作数据管理器组件- (1057)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>1057年 (预期之外的数据访问操作的数据管理器组件)
产品使用一个专用,中央数据管理器组件根据设计需要,但它包含的代码,执行数据访问操作,不要使用这个数据管理器。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。过多的低效的服务器端数据访问- (1060)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>1060年 (过度数量的低效的服务器端数据访问)
产品执行太多数据查询不使用高效的数据处理功能,如存储过程。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。过度的执行顺序搜索的数据资源- (1067)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>1067年 (过度执行顺序搜索的数据资源)
产品包含一个数据查询SQL表或视图配置的方式不使用索引,可能导致执行顺序搜索。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。数据资源访问,而不使用连接池- (1072)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>1072年 (数据资源访问没有使用连接池)
产品通过一个数据库访问数据资源不使用连接池功能。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。非sql调用控制元件过多的数据资源访问- (1073)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>1073年 (非sql调用控制元素过多的数据资源访问)
产品包含一个客户端与一个函数或方法,包含大量的数据访问/通过数据管理器发送查询,即。不使用高效的数据库功能。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。大数据表与过度数量的指标- (1089)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>1089年 (大数据表与过度数量的指标)
产品使用大数据表,其中包含一个特别大的数的指数。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。没有调用析构函数方法使用的对象- (1091)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>1091年 (使用的对象没有调用析构函数方法)
产品包含一个方法访问一个对象但不后调用finalize /析构函数相关的元素的方法。
* 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。过度的索引范围扫描数据资源- (1094)
1305年 (方案及质量度量(2020))>1309年 (方案及质量度量-效率)>1094年 (过度索引范围扫描数据资源)
产品包含一个索引范围扫描数据表,但扫描可以覆盖很大的行数。
+引用
(ref - 1133)财团信息与软件质量(方案)。“自动化代码质量度量”。2020年。<https://www.omg.org/spec/ASCQM/>。
+查看指标
连续波在这个视图 总连续波
弱点 138年 933年
类别 4 352年
的观点 0 47
142年 1332年
+内容的历史
+提交
提交日期 提交者 组织
2020-08-18 CWE内容团队 主教法冠
更多的信息是可用的,请选择一个不同的过滤器。
页面最后更新:2023年1月31日