🧩

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
121
1121
Base
Excessive McCabe Cyclomatic Complexity
The code contains McCabe cyclomatic complexity that exceeds a desirable maximum.
122
1122
Base
Excessive Halstead Complexity
The code is structured in a way that a Halstead complexity measure exceeds a desirable maximum.
123
1123
Base
Excessive Use of Self-Modifying Code
The product uses too much self-modifying code.
124
1124
Base
Excessively Deep Nesting
The code contains a callable or other code grouping in which the nesting / branching is too deep.
125
1125
Base
Excessive Attack Surface
The product has an attack surface whose quantitative measurement exceeds a desirable maximum.
126
1126
Base
Declaration of Variable with Unnecessarily Wide Scope
The source code declares a variable in one scope, but the variable is only used within a narrower scope.
127
1127
Base
Compilation with Insufficient Warnings or Errors
The code is compiled without sufficient warnings enabled, which may prevent the detection of subtle bugs or quality issues.
113
113
Variant
Improper Neutralization of CRLF Sequences in HTTP Headers ('HTTP Request/Respon…
The product receives data from an HTTP agent/component (e.g., web server, proxy, browser, etc.), but it does not neutralize or incorrectly neutralize…
114
114
Class
Process Control
Executing commands or loading libraries from an untrusted source or in an untrusted environment can cause an application to execute malicious command…
115
115
Base
Misinterpretation of Input
The product misinterprets an input, whether from an attacker or another product, in a security-relevant fashion.
116
116
Class
Improper Encoding or Escaping of Output
The product prepares a structured message for communication with another component, but encoding or escaping of the data is either missing or done in…
164
1164
Class
Irrelevant Code
The product contains code that is not essential for execution, i.e. makes no state changes and has no side effects that alter data or con…
117
117
Base
Improper Output Neutralization for Logs
The product constructs a log message from external input, but it does not neutralize or incorrectly neutralizes special elements when the message is …
173
1173
Base
Improper Use of Validation Framework
The product does not use, or incorrectly uses, an input validation framework that is provided by the source language or an independent library.
174
1174
Variant
ASP.NET Misconfiguration: Improper Model Validation
The ASP.NET application does not use, or incorrectly uses, the model validation framework.
176
1176
Class
Inefficient CPU Computation
The product performs CPU computations using algorithms that are not as efficient as they could be for the needs of the developer, i…
177
1177
Class
Use of Prohibited Code
The product uses a function, library, or third party component that has been explicitly prohibited, whether by the developer or the custo…
118
118
Class
Incorrect Access of Indexable Resource ('Range Error')
The product does not restrict or incorrectly restricts operations within the boundaries of a resource that is accessed using an index or pointer, suc…
187
1187
Base
DEPRECATED: Use of Uninitialized Resource
This entry has been deprecated because it was a duplicate of CWE-908. All content has been transferred to CWE-908.
188
1188
Base
Initialization of a Resource with an Insecure Default
The product initializes or sets a resource with a default that is intended to be changed by the administrator, but the default is not secure.
189
1189
Base
Improper Isolation of Shared Resources on System-on-a-Chip (SoC)
The System-On-a-Chip (SoC) does not properly isolate shared resources between trusted and untrusted agents.
119
119
Class
Improper Restriction of Operations within the Bounds of a Memory Buffer
The product performs operations on a memory buffer, but it reads from or writes to a memory location outside the buffer's intended boundary. This may…
190
1190
Base
DMA Device Enabled Too Early in Boot Phase
The product enables a Direct Memory Access (DMA) capable device before the security configuration settings are established, which allows an attacker …
191
1191
Base
On-Chip Debug and Test Interface With Improper Access Control
The chip does not implement or does not correctly perform access control to check whether users are authorized to access internal registers and test …
192
1192
Base
Improper Identifier for IP Block used in System-On-Chip (SOC)
The System-on-Chip (SoC) does not have unique, immutable identifiers for each of its components.
193
1193
Base
Power-On of Untrusted Execution Core Before Enabling Fabric Access Control
The product enables components that contain untrusted firmware before memory and fabric access controls have been enabled.
12
12
Variant
ASP.NET Misconfiguration: Missing Custom Error Page
An ASP .NET application must enable custom error pages in order to prevent attackers from mining information from the framework's built-in responses.
120
120
Base
Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')
The product copies an input buffer to an output buffer without verifying that the size of the input buffer is less than the size of the output buffer…
204
1204
Base
Generation of Weak Initialization Vector (IV)
The product uses a cryptographic primitive that uses an Initialization Vector (IV), but the product does not generate IVs that are sufficiently…
209
1209
Base
Failure to Disable Reserved Bits
The reserved bits in a hardware design are not disabled prior to production. Typically, reserved bits are used for future capabilities and should not…
121
121
Variant
Stack-based Buffer Overflow
A stack-based buffer overflow condition is a condition where the buffer being overwritten is allocated on the stack (i.e., is a local variable or, ra…
122
122
Variant
Heap-based Buffer Overflow
A heap overflow condition is a buffer overflow, where the buffer that can be overwritten is allocated in the heap portion of memory, generally meanin…
220
1220
Base
Insufficient Granularity of Access Control
The product implements access controls via a policy or other feature with the intention to disable or restrict accesses (reads and/or writes) to asse…
221
1221
Base
Incorrect Register Defaults or Module Parameters
Hardware description language code incorrectly defines register defaults or hardware Intellectual Property (IP) parameters to insecure values.
222
1222
Variant
Insufficient Granularity of Address Regions Protected by Register Locks
The product defines a large address region protected from modification by the same register lock control bit. This results in a conflict between the …
223
1223
Base
Race Condition for Write-Once Attributes
A write-once register in hardware design is programmable by an untrusted software component earlier than the trusted software component, resulting in…
224
1224
Base
Improper Restriction of Write-Once Bit Fields
The hardware design control register 'sticky bits' or write-once bit fields are improperly implemented, such that they can be reprogrammed by softwar…
229
1229
Class
Creation of Emergent Resource
The product manages resources or behaves in a way that indirectly creates a new, distinct resource that can be used by attackers in violation of the …
123
123
Base
Write-what-where Condition
Any condition where the attacker has the ability to write an arbitrary value to an arbitrary location, often as the result of a buffer overflow.
230
1230
Base
Exposure of Sensitive Information Through Metadata
The product prevents direct access to a resource containing sensitive information, but it does not sufficiently limit access to metadata that is deri…
231
1231
Base
Improper Prevention of Lock Bit Modification
The product uses a trusted lock bit for restricting access to registers, address regions, or other resources, but the product does not prevent the va…
232
1232
Base
Improper Lock Behavior After Power State Transition
Register lock bit protection disables changes to system configuration once the bit is set. Some of the protected registers or lock bits become progra…
233
1233
Base
Security-Sensitive Hardware Controls with Missing Lock Bit Protection
The product uses a register lock bit protection mechanism, but it does not ensure that the lock bit prevents modification of system registers or cont…
234
1234
Base
Hardware Internal or Debug Modes Allow Override of Locks
System configuration protection may be bypassed during debug mode.
235
1235
Base
Incorrect Use of Autoboxing and Unboxing for Performance Critical Operations
The code uses boxed primitives, which may introduce inefficiencies into performance-critical operations.
236
1236
Base
Improper Neutralization of Formula Elements in a CSV File
The product saves user-provided information into a Comma-Separated Value (CSV) file, but it does not neutralize or incorrectly neutralizes special el…
239
1239
Variant
Improper Zeroization of Hardware Register
The hardware product does not properly clear sensitive information from built-in registers when the user of the hardware block changes.
124
124
Base
Buffer Underwrite ('Buffer Underflow')
The product writes to a buffer using an index or pointer that references a memory location prior to the beginning of the buffer.
240
1240
Base
Use of a Cryptographic Primitive with a Risky Implementation
To fulfill the need for a cryptographic primitive, the product implements a cryptographic algorithm using a non-standard, unproven, or disallowed/non…
241
1241
Base
Use of Predictable Algorithm in Random Number Generator
The device uses an algorithm that is predictable and generates a pseudo-random number.
CWE ID
Title
Type
Action
1121
Excessive McCabe Cyclomatic Complexity
Base
View
1122
Excessive Halstead Complexity
Base
View
1123
Excessive Use of Self-Modifying Code
Base
View
1124
Excessively Deep Nesting
Base
View
1125
Excessive Attack Surface
Base
View
1126
Declaration of Variable with Unnecessarily Wide Scope
Base
View
1127
Compilation with Insufficient Warnings or Errors
Base
View
113
Improper Neutralization of CRLF Sequences in HTTP Headers ('HTTP Request/Respon…
Variant
View
114
Process Control
Class
View
115
Misinterpretation of Input
Base
View
116
Improper Encoding or Escaping of Output
Class
View
1164
Irrelevant Code
Class
View
117
Improper Output Neutralization for Logs
Base
View
1173
Improper Use of Validation Framework
Base
View
1174
ASP.NET Misconfiguration: Improper Model Validation
Variant
View
1176
Inefficient CPU Computation
Class
View
1177
Use of Prohibited Code
Class
View
118
Incorrect Access of Indexable Resource ('Range Error')
Class
View
1187
DEPRECATED: Use of Uninitialized Resource
Base
View
1188
Initialization of a Resource with an Insecure Default
Base
View
1189
Improper Isolation of Shared Resources on System-on-a-Chip (SoC)
Base
View
119
Improper Restriction of Operations within the Bounds of a Memory Buffer
Class
View
1190
DMA Device Enabled Too Early in Boot Phase
Base
View
1191
On-Chip Debug and Test Interface With Improper Access Control
Base
View
1192
Improper Identifier for IP Block used in System-On-Chip (SOC)
Base
View
1193
Power-On of Untrusted Execution Core Before Enabling Fabric Access Control
Base
View
12
ASP.NET Misconfiguration: Missing Custom Error Page
Variant
View
120
Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')
Base
View
1204
Generation of Weak Initialization Vector (IV)
Base
View
1209
Failure to Disable Reserved Bits
Base
View
121
Stack-based Buffer Overflow
Variant
View
122
Heap-based Buffer Overflow
Variant
View
1220
Insufficient Granularity of Access Control
Base
View
1221
Incorrect Register Defaults or Module Parameters
Base
View
1222
Insufficient Granularity of Address Regions Protected by Register Locks
Variant
View
1223
Race Condition for Write-Once Attributes
Base
View
1224
Improper Restriction of Write-Once Bit Fields
Base
View
1229
Creation of Emergent Resource
Class
View
123
Write-what-where Condition
Base
View
1230
Exposure of Sensitive Information Through Metadata
Base
View
1231
Improper Prevention of Lock Bit Modification
Base
View
1232
Improper Lock Behavior After Power State Transition
Base
View
1233
Security-Sensitive Hardware Controls with Missing Lock Bit Protection
Base
View
1234
Hardware Internal or Debug Modes Allow Override of Locks
Base
View
1235
Incorrect Use of Autoboxing and Unboxing for Performance Critical Operations
Base
View
1236
Improper Neutralization of Formula Elements in a CSV File
Base
View
1239
Improper Zeroization of Hardware Register
Variant
View
124
Buffer Underwrite ('Buffer Underflow')
Base
View
1240
Use of a Cryptographic Primitive with a Risky Implementation
Base
View
1241
Use of Predictable Algorithm in Random Number Generator
Base
View
1 2 3 4 5 ... 39