🧩

Common Weakness Enumeration

Explore the comprehensive database of software security weaknesses. CWE provides a unified, measurable set of software weaknesses that enables more effective discussion, description, selection, and use of software security tools and services.

1935
Total CWEs
075
1075
Base
Unconditional Control Flow Transfer outside of Switch Block
The product performs unconditional control transfer (such as a 'goto') in code outside of a branching structure such as a switch block.
076
1076
Class
Insufficient Adherence to Expected Conventions
The product's architecture, source code, design, documentation, or other artifact does not follow required conventions.
077
1077
Variant
Floating Point Comparison with Incorrect Operator
The code performs a comparison such as an equality test between two float (floating point) values, but it uses comparison operators t…
078
1078
Class
Inappropriate Source Code Style or Formatting
The source code does not follow desired style or formatting for indentation, white space, comments, etc.
079
1079
Base
Parent Class without Virtual Destructor Method
A parent class contains one or more child classes, but the parent class does not have a virtual destructor method.
108
108
Variant
Struts: Unvalidated Action Form
Every Action Form must have a corresponding validation form.
080
1080
Base
Source Code File with Excessive Number of Lines of Code
A source code file has too many lines of code.
082
1082
Base
Class Instance Self Destruction Control Element
The code contains a class instance that calls the method or function to delete or destroy itself.
083
1083
Base
Data Access from Outside Expected Data Manager Component
The product is intended to manage data access through a particular data manager component such as a relational or non-SQL database, but it contains c…
084
1084
Base
Invokable Control Element with Excessive File or Data Access Operations
A function or method contains too many operations that utilize a data manager or file resource.
085
1085
Base
Invokable Control Element with Excessive Volume of Commented-out Code
A function, method, procedure, etc. contains an excessive amount of code that has been commented out within its body.
086
1086
Base
Class with Excessive Number of Child Classes
A class contains an unnecessarily large number of children.
087
1087
Base
Class with Virtual Method without a Virtual Destructor
A class contains a virtual method, but the method does not have an associated virtual destructor.
088
1088
Base
Synchronous Access of Remote Resource without Timeout
The code has a synchronous call to a remote resource, but there is no timeout for the call, or the timeout is set to infinite.
109
109
Variant
Struts: Validator Turned Off
Automatic filtering via a Struts bean has been turned off, which disables the Struts Validator and custom validation logic. This exposes the applicat…
090
1090
Base
Method Containing Access of a Member Element from Another Class
A method for a class performs an operation that directly accesses a member element from another class.
091
1091
Base
Use of Object without Invoking Destructor Method
The product contains a method that accesses an object but does not later invoke the element's associated finalize/destructor method.
092
1092
Base
Use of Same Invokable Control Element in Multiple Architectural Layers
The product uses the same control element across multiple architectural layers.
093
1093
Class
Excessively Complex Data Representation
The product uses an unnecessarily complex internal representation for its data structures or interrelationships between those structures.
094
1094
Base
Excessive Index Range Scan for a Data Resource
The product contains an index range scan for a large data table, but the scan can cover a large number of rows.
095
1095
Base
Loop Condition Value Update within the Loop
The product uses a loop with a control flow condition based on a value that is updated within the body of the loop.
096
1096
Variant
Singleton Class Instance Creation without Proper Locking or Synchronization
The product implements a Singleton design pattern but does not use appropriate locking or other synchronization mechanism to ensure that the singleto…
097
1097
Base
Persistent Storable Data Element without Associated Comparison Control Element
The product uses a storable data element that does not have all of the associated functions or methods that are necessary to support compar…
098
1098
Base
Data Element containing Pointer Item without Proper Copy Control Element
The code contains a data element with a pointer that does not have an associated copy or constructor method.
099
1099
Base
Inconsistent Naming Conventions for Identifiers
The product's code, documentation, or other artifacts do not consistently use the same naming conventions for variables, callables, groups of …
11
11
Variant
ASP.NET Misconfiguration: Creating Debug Binary
Debugging messages help attackers learn about the system and plan a form of attack.
110
110
Variant
Struts: Validator Without Form Field
Validation fields that do not appear in forms they are associated with indicate that the validation logic is out of date.
100
1100
Base
Insufficient Isolation of System-Dependent Functions
The product or code does not isolate system-dependent functionality into separate standalone modules.
101
1101
Base
Reliance on Runtime Component in Generated Code
The product uses automatically-generated code that cannot be executed without a specific runtime support component.
102
1102
Base
Reliance on Machine-Dependent Data Representation
The code uses a data representation that relies on low-level data representation or constructs that may vary across different processors, p…
103
1103
Base
Use of Platform-Dependent Third Party Components
The product relies on third-party components that do not provide equivalent functionality across all desirable platforms.
104
1104
Base
Use of Unmaintained Third Party Components
The product relies on third-party components that are not actively supported or maintained by the original developer or a trusted proxy for…
105
1105
Base
Insufficient Encapsulation of Machine-Dependent Functionality
The product or code uses machine-dependent functionality, but it does not sufficiently encapsulate or isolate this functionality from the r…
106
1106
Base
Insufficient Use of Symbolic Constants
The source code uses literal constants that may need to change or evolve over time, instead of using symbolic constants.
107
1107
Base
Insufficient Isolation of Symbolic Constant Definitions
The source code uses symbolic constants, but it does not sufficiently place the definitions of these constants into a more centralized or i…
108
1108
Base
Excessive Reliance on Global Variables
The code is structured in a way that relies too much on using or setting global variables throughout various points in the code, instead of …
109
1109
Base
Use of Same Variable for Multiple Purposes
The code contains a callable, block, or other code element in which the same variable is used to control more than one unique task or store …
111
111
Variant
Direct Use of Unsafe JNI
When a Java application uses the Java Native Interface (JNI) to call code written in another programming language, it can expose the application to w…
110
1110
Base
Incomplete Design Documentation
The product's design documentation does not adequately describe control flow, data flow, system initialization, relationships between tasks, …
111
1111
Base
Incomplete I/O Documentation
The product's documentation does not adequately define inputs, outputs, or system/software interfaces.
112
1112
Base
Incomplete Documentation of Program Execution
The document does not fully define all mechanisms that are used to control or influence how product-specific programs are executed.
113
1113
Base
Inappropriate Comment Style
The source code uses comment styles or formats that are inconsistent or do not follow expected standards for the product.
114
1114
Base
Inappropriate Whitespace Style
The source code contains whitespace that is inconsistent across the code or does not follow expected standards for the product.
115
1115
Base
Source Code Element without Standard Prologue
The source code contains elements such as source files that do not consistently provide a prologue or header that has been standardized fo…
116
1116
Base
Inaccurate Comments
The source code contains comments that do not accurately describe or explain aspects of the portion of the code with which the comment is a…
117
1117
Base
Callable with Insufficient Behavioral Summary
The code contains a function or method whose signature and/or associated inline documentation does not sufficiently describe the callable's inpu…
118
1118
Base
Insufficient Documentation of Error Handling Techniques
The documentation does not sufficiently describe the techniques that are used for error handling, exception processing, or similar mechanis…
119
1119
Base
Excessive Use of Unconditional Branching
The code uses too many unconditional branches (such as 'goto').
112
112
Base
Missing XML Validation
The product accepts XML from an untrusted source but does not validate the XML against the proper schema.
120
1120
Class
Excessive Code Complexity
The code is too complex, as calculated using a well-defined, quantitative measure.
CWE ID
Title
Type
Action
1075
Unconditional Control Flow Transfer outside of Switch Block
Base
View
1076
Insufficient Adherence to Expected Conventions
Class
View
1077
Floating Point Comparison with Incorrect Operator
Variant
View
1078
Inappropriate Source Code Style or Formatting
Class
View
1079
Parent Class without Virtual Destructor Method
Base
View
108
Struts: Unvalidated Action Form
Variant
View
1080
Source Code File with Excessive Number of Lines of Code
Base
View
1082
Class Instance Self Destruction Control Element
Base
View
1083
Data Access from Outside Expected Data Manager Component
Base
View
1084
Invokable Control Element with Excessive File or Data Access Operations
Base
View
1085
Invokable Control Element with Excessive Volume of Commented-out Code
Base
View
1086
Class with Excessive Number of Child Classes
Base
View
1087
Class with Virtual Method without a Virtual Destructor
Base
View
1088
Synchronous Access of Remote Resource without Timeout
Base
View
109
Struts: Validator Turned Off
Variant
View
1090
Method Containing Access of a Member Element from Another Class
Base
View
1091
Use of Object without Invoking Destructor Method
Base
View
1092
Use of Same Invokable Control Element in Multiple Architectural Layers
Base
View
1093
Excessively Complex Data Representation
Class
View
1094
Excessive Index Range Scan for a Data Resource
Base
View
1095
Loop Condition Value Update within the Loop
Base
View
1096
Singleton Class Instance Creation without Proper Locking or Synchronization
Variant
View
1097
Persistent Storable Data Element without Associated Comparison Control Element
Base
View
1098
Data Element containing Pointer Item without Proper Copy Control Element
Base
View
1099
Inconsistent Naming Conventions for Identifiers
Base
View
11
ASP.NET Misconfiguration: Creating Debug Binary
Variant
View
110
Struts: Validator Without Form Field
Variant
View
1100
Insufficient Isolation of System-Dependent Functions
Base
View
1101
Reliance on Runtime Component in Generated Code
Base
View
1102
Reliance on Machine-Dependent Data Representation
Base
View
1103
Use of Platform-Dependent Third Party Components
Base
View
1104
Use of Unmaintained Third Party Components
Base
View
1105
Insufficient Encapsulation of Machine-Dependent Functionality
Base
View
1106
Insufficient Use of Symbolic Constants
Base
View
1107
Insufficient Isolation of Symbolic Constant Definitions
Base
View
1108
Excessive Reliance on Global Variables
Base
View
1109
Use of Same Variable for Multiple Purposes
Base
View
111
Direct Use of Unsafe JNI
Variant
View
1110
Incomplete Design Documentation
Base
View
1111
Incomplete I/O Documentation
Base
View
1112
Incomplete Documentation of Program Execution
Base
View
1113
Inappropriate Comment Style
Base
View
1114
Inappropriate Whitespace Style
Base
View
1115
Source Code Element without Standard Prologue
Base
View
1116
Inaccurate Comments
Base
View
1117
Callable with Insufficient Behavioral Summary
Base
View
1118
Insufficient Documentation of Error Handling Techniques
Base
View
1119
Excessive Use of Unconditional Branching
Base
View
112
Missing XML Validation
Base
View
1120
Excessive Code Complexity
Class
View
1 2 3 4 ... 39