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
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.
1076
Class
Insufficient Adherence to Expected Conventions
The product's architecture, source code, design, documentation,
or other artifact does not follow required conventions.
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…
1078
Class
Inappropriate Source Code Style or Formatting
The source code does not follow
desired style or formatting for indentation, white
space, comments, etc.
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
Variant
Struts: Unvalidated Action Form
Every Action Form must have a corresponding validation form.
1080
Base
Source Code File with Excessive Number of Lines of Code
A source code file has too many lines of
code.
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.
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…
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.
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.
1086
Base
Class with Excessive Number of Child Classes
A class contains an unnecessarily large number of
children.
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.
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
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…
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.
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.
1092
Base
Use of Same Invokable Control Element in Multiple Architectural Layers
The product uses the same control element across multiple
architectural layers.
1093
Class
Excessively Complex Data Representation
The product uses an unnecessarily complex internal representation for its data structures or interrelationships between those structures.
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.
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.
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…
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…
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.
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
Variant
ASP.NET Misconfiguration: Creating Debug Binary
Debugging messages help attackers learn about the system and plan a form of attack.
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.
1100
Base
Insufficient Isolation of System-Dependent Functions
The product or code does not isolate system-dependent
functionality into separate standalone modules.
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.
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…
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.
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…
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…
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.
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…
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
…
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
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…
1110
Base
Incomplete Design Documentation
The product's design documentation does not adequately describe
control flow, data flow, system initialization, relationships between tasks,
…
1111
Base
Incomplete I/O Documentation
The product's documentation does not adequately define inputs,
outputs, or system/software interfaces.
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.
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.
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.
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…
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…
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…
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…
1119
Base
Excessive Use of Unconditional Branching
The code uses too many unconditional branches (such as
'goto').
112
Base
Missing XML Validation
The product accepts XML from an untrusted source but does not validate the XML against the proper schema.
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