Main Content

Common Weakness Enumeration (CWE)

List and description of CWE security standard rules supported by Polyspace®

Common Weakness Enumeration (CWE™) is a list of software weakness types that can occur in software architecture, design, code, or implementation. These weaknesses can lead to security vulnerabilities.

Polyspace can check your code against subsets of the CWE list including subsets or weaknesses that are specific to C or C++ code. To activate subsets of the CWE list, use analysis option Check CWE (-cwe). Polyspace supports version 4.12 of the CWE standard.

Polyspace Results

expand all

CWE Rule 14Compiler Removal of Code to Clear Buffers (Since R2023a)
CWE Rule 15External Control of System or Configuration Setting (Since R2024a)
CWE Rule 20Improper Input Validation (Since R2024a)
CWE Rule 22Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') (Since R2024a)
CWE Rule 23Relative Path Traversal (Since R2024a)
CWE Rule 36Absolute Path Traversal (Since R2024a)
CWE Rule 67Improper Handling of Windows Device Names (Since R2024a)
CWE Rule 77Improper Neutralization of Special Elements used in a Command ('Command Injection') (Since R2024a)
CWE Rule 78Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection') (Since R2024a)
CWE Rule 88Improper Neutralization of Argument Delimiters in a Command ('Argument Injection') (Since R2024a)
CWE Rule 114Process Control (Since R2024a)
CWE Rule 119Improper Restriction of Operations within the Bounds of a Memory Buffer (Since R2023a)
CWE Rule 120Buffer Copy without Checking Size of Input ('Classic Buffer Overflow') (Since R2023a)
CWE Rule 121Stack-based Buffer Overflow (Since R2023a)
CWE Rule 122Heap-based Buffer Overflow (Since R2023a)
CWE Rule 123Write-what-where Condition (Since R2023a)
CWE Rule 124Buffer Underwrite ('Buffer Underflow') (Since R2023a)
CWE Rule 125Out-of-bounds Read (Since R2023a)
CWE Rule 126Buffer Over-read (Since R2023a)
CWE Rule 127Buffer Under-read (Since R2023a)
CWE Rule 128Wrap-around Error (Since R2023a)
CWE Rule 129Improper Validation of Array Index (Since R2023a)
CWE Rule 130Improper Handling of Length Parameter Inconsistency (Since R2023a)
CWE Rule 131Incorrect Calculation of Buffer Size (Since R2023a)
CWE Rule 134Use of Externally-Controlled Format String (Since R2023a)
CWE Rule 135Incorrect Calculation of Multi-Byte String Length (Since R2023a)
CWE Rule 170Improper Null Termination (Since R2023a)
CWE Rule 188Reliance on Data/Memory Layout (Since R2023a)
CWE Rule 190Integer Overflow or Wraparound (Since R2024a)
CWE Rule 191Integer Underflow (Wrap or Wraparound) (Since R2023a)
CWE Rule 192Integer Coercion Error (Since R2023a)
CWE Rule 194Unexpected Sign Extension (Since R2023a)
CWE Rule 195Signed to Unsigned Conversion Error (Since R2023a)
CWE Rule 196Unsigned to Signed Conversion Error (Since R2023a)
CWE Rule 197Numeric Truncation Error (Since R2023a)
CWE Rule 198Use of Incorrect Byte Ordering (Since R2024a)
CWE Rule 226Sensitive Information in Resource Not Removed Before Reuse (Since R2024a)
CWE Rule 240Improper Handling of Inconsistent Structural Elements (Since R2024a)
CWE Rule 242Use of Inherently Dangerous Function (Since R2023a)
CWE Rule 243Creation of chroot Jail Without Changing Working Directory (Since R2023a)
CWE Rule 244Improper Clearing of Heap Memory Before Release ('Heap Inspection') (Since R2023a)
CWE Rule 248Uncaught Exception (Since R2023a)
CWE Rule 250Execution with Unnecessary Privileges (Since R2024a)
CWE Rule 252Unchecked Return Value (Since R2023a)
CWE Rule 253Incorrect Check of Function Return Value (Since R2023a)
CWE Rule 273Improper Check for Dropped Privileges (Since R2024a)
CWE Rule 287Improper Authentication (Since R2024a)
CWE Rule 297Improper Validation of Certificate with Host Mismatch (Since R2024a)
CWE Rule 304Missing Critical Step in Authentication (Since R2024a)
CWE Rule 311Missing Encryption of Sensitive Data (Since R2023b)
CWE Rule 312Cleartext Storage of Sensitive Information (Since R2023a)
CWE Rule 316Cleartext Storage of Sensitive Information in Memory (Since R2024a)
CWE Rule 319Cleartext Transmission of Sensitive Information (Since R2023b)
CWE Rule 321Use of Hard-coded Cryptographic Key (Since R2023b)
CWE Rule 322Key Exchange without Entity Authentication (Since R2024a)
CWE Rule 325Missing Cryptographic Step (Since R2024a)
CWE Rule 326Inadequate Encryption Strength (Since R2024a)
CWE Rule 327Use of a Broken or Risky Cryptographic Algorithm (Since R2024a)
CWE Rule 328Use of Weak Hash (Since R2024a)
CWE Rule 329Generation of Predictable IV with CBC Mode (Since R2024a)
CWE Rule 330Use of Insufficiently Random Values (Since R2024a)
CWE Rule 335Incorrect Usage of Seeds in Pseudo-Random Number Generator (PRNG) (Since R2023a)
CWE Rule 336Same Seed in Pseudo-Random Number Generator (PRNG) (Since R2024a)
CWE Rule 337Predictable Seed in Pseudo-Random Number Generator (PRNG) (Since R2024a)
CWE Rule 338Use of Cryptographically Weak Pseudo-Random Number Generator (PRNG) (Since R2023a)
CWE Rule 353Missing Support for Integrity Check (Since R2023a)
CWE Rule 354Improper Validation of Integrity Check Value (Since R2024a)
CWE Rule 362Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition') (Since R2023a)
CWE Rule 364Signal Handler Race Condition (Since R2023a)
CWE Rule 366Race Condition within a Thread (Since R2023a)
CWE Rule 367Time-of-check Time-of-use (TOCTOU) Race Condition (Since R2024a)
CWE Rule 369Divide By Zero (Since R2023a)
CWE Rule 372Incomplete Internal State Distinction (Since R2024a)
CWE Rule 374Passing Mutable Objects to an Untrusted Method (Since R2023b)
CWE Rule 375Returning a Mutable Object to an Untrusted Caller (Since R2023a)
CWE Rule 377Insecure Temporary File (Since R2024a)
CWE Rule 391Unchecked Error Condition (Since R2024a)
CWE Rule 396Declaration of Catch for Generic Exception (Since R2023a)
CWE Rule 397Declaration of Throws for Generic Exception (Since R2023a)
CWE Rule 401Missing Release of Memory after Effective Lifetime (Since R2023a)
CWE Rule 404Improper Resource Shutdown or Release (Since R2024a)
CWE Rule 413Improper Resource Locking (Since R2023a)
CWE Rule 415Double Free (Since R2023a)
CWE Rule 416Use After Free (Since R2023a)
CWE Rule 426Untrusted Search Path (Since R2024a)
CWE Rule 427Uncontrolled Search Path Element (Since R2024a)
CWE Rule 456Missing Initialization of a Variable (Since R2024a)
CWE Rule 457Use of Uninitialized Variable (Since R2023a)
CWE Rule 460Improper Cleanup on Thrown Exception (Since R2023a)
CWE Rule 463Deletion of Data Structure Sentinel (Since R2023a)
CWE Rule 466Return of Pointer Value Outside of Expected Range (Since R2023a)
CWE Rule 467Use of sizeof() on a Pointer Type (Since R2023a)
CWE Rule 468Incorrect Pointer Scaling (Since R2023a)
CWE Rule 469Use of Pointer Subtraction to Determine Size (Since R2023a)
CWE Rule 471Modification of Assumed-Immutable Data (MAID) (Since R2024a)
CWE Rule 474Use of Function with Inconsistent Implementations (Since R2023a)
CWE Rule 475Undefined Behavior for Input to API (Since R2024a)
CWE Rule 476NULL Pointer Dereference (Since R2023a)
CWE Rule 477Use of Obsolete Function (Since R2023a)
CWE Rule 478Missing Default Case in Multiple Condition Expression (Since R2023a)
CWE Rule 479Signal Handler Use of a Non-reentrant Function (Since R2023a)
CWE Rule 480Use of Incorrect Operator (Since R2023a)
CWE Rule 481Assigning instead of Comparing (Since R2023a)
CWE Rule 482Comparing instead of Assigning (Since R2023a)
CWE Rule 483Incorrect Block Delimitation (Since R2023a)
CWE Rule 484Omitted Break Statement in Switch (Since R2023a)
CWE Rule 489Active Debug Code (Since R2023a)
CWE Rule 493Critical Public Variable Without Final Modifier (Since R2023b)
CWE Rule 495Private Data Structure Returned From A Public Method (Since R2023a)
CWE Rule 496Public Data Assigned to Private Array-Typed Field (Since R2023b)
CWE Rule 498Cloneable class containing sensitive information (Since R2023b)
CWE Rule 500Public Static Field Not Marked Final (Since R2023a)
CWE Rule 522Insufficiently Protected Credentials (Since R2023a)
CWE Rule 532Insertion of Sensitive Information into Log File (Since R2024a)
CWE Rule 535Exposure of Information Through Shell Error Message (Since R2024a)
CWE Rule 543Use of Singleton Pattern Without Synchronization in a Multithreaded Context (Since R2024a)
CWE Rule 547Use of Hard-coded, Security-relevant Constants (Since R2023a)
CWE Rule 558Use of getlogin() in Multithreaded Application (Since R2023a)
CWE Rule 560Use of umask() with chmod-style Argument (Since R2023a)
CWE Rule 561Dead Code (Since R2023a)
CWE Rule 562Return of Stack Variable Address (Since R2023a)
CWE Rule 563Assignment to Variable without Use (Since R2023a)
CWE Rule 570Expression is Always False (Since R2023a)
CWE Rule 571Expression is Always True (Since R2023a)
CWE Rule 573Improper Following of Specification by Caller (Since R2024a)
CWE Rule 587Assignment of a Fixed Address to a Pointer (Since R2023a)
CWE Rule 590Free of Memory not on the Heap (Since R2024a)
CWE Rule 606Unchecked Input for Loop Condition (Since R2023b)
CWE Rule 617Reachable Assertion (Since R2023a)
CWE Rule 628Function Call with Incorrectly Specified Arguments (Since R2024a)
CWE Rule 663Use of a Non-reentrant Function in a Concurrent Context (Since R2024a)
CWE Rule 664Improper Control of a Resource Through its Lifetime (Since R2024a)
CWE Rule 665Improper Initialization (Since R2024a)
CWE Rule 666Operation on Resource in Wrong Phase of Lifetime (Since R2024a)
CWE Rule 667Improper Locking (Since R2024a)
CWE Rule 672Operation on a Resource after Expiration or Release (Since R2024a)
CWE Rule 674Uncontrolled Recursion (Since R2024a)
CWE Rule 675Multiple Operations on Resource in Single-Operation Context (Since R2024a)
CWE Rule 676Use of Potentially Dangerous Function (Since R2023a)
CWE Rule 681Incorrect Conversion between Numeric Types (Since R2024a)
CWE Rule 682Incorrect Calculation (Since R2024a)
CWE Rule 683Function Call With Incorrect Order of Arguments (Since R2023b)
CWE Rule 685Function Call With Incorrect Number of Arguments (Since R2023a)
CWE Rule 686Function Call With Incorrect Argument Type (Since R2023b)
CWE Rule 687Function Call With Incorrectly Specified Argument Value (Since R2023b)
CWE Rule 688Function Call With Incorrect Variable or Reference as Argument (Since R2023b)
CWE Rule 690Unchecked Return Value to NULL Pointer Dereference (Since R2023a)
CWE Rule 691Insufficient Control Flow Management (Since R2024a)
CWE Rule 693Protection Mechanism Failure (Since R2024a)
CWE Rule 696Incorrect Behavior Order (Since R2024a)
CWE Rule 703Improper Check or Handling of Exceptional Conditions (Since R2024a)
CWE Rule 704Incorrect Type Conversion or Cast (Since R2023a)
CWE Rule 705Incorrect Control Flow Scoping (Since R2024a)
CWE Rule 710Improper Adherence to Coding Standards (Since R2024a)
CWE Rule 732Incorrect Permission Assignment for Critical Resource (Since R2024a)
CWE Rule 733Compiler Optimization Removal or Modification of Security-critical Code (Since R2023a)
CWE Rule 754Improper Check for Unusual or Exceptional Conditions (Since R2024a)
CWE Rule 755Improper Handling of Exceptional Conditions (Since R2024a)
CWE Rule 758Reliance on Undefined, Unspecified, or Implementation-Defined Behavior (Since R2024a)
CWE Rule 759Use of a One-Way Hash without a Salt (Since R2024a)
CWE Rule 762Mismatched Memory Management Routines (Since R2023a)
CWE Rule 763Release of Invalid Pointer or Reference (Since R2023a)
CWE Rule 764Multiple Locks of a Critical Resource (Since R2024a)
CWE Rule 765Multiple Unlocks of a Critical Resource (Since R2024a)
CWE Rule 766Critical Data Element Declared Public (Since R2023a)
CWE Rule 767Access to Critical Private Variable via Public Method (Since R2023a)
CWE Rule 770Allocation of Resources Without Limits or Throttling (Since R2024a)
CWE Rule 772Missing Release of Resource after Effective Lifetime (Since R2024a)
CWE Rule 780Use of RSA Algorithm without OAEP (Since R2024a)
CWE Rule 783Operator Precedence Logic Error (Since R2023a)
CWE Rule 785Use of Path Manipulation Function without Maximum-sized Buffer (Since R2023a)
CWE Rule 786Access of Memory Location Before Start of Buffer (Since R2024a)
CWE Rule 787Out-of-bounds Write (Since R2023a)
CWE Rule 789Memory Allocation with Excessive Size Value (Since R2023a)
CWE Rule 798Use of Hard-coded Credentials (Since R2023a)
CWE Rule 805Buffer Access with Incorrect Length Value (Since R2023a)
CWE Rule 806Buffer Access Using Size of Source Buffer (Since R2023a)
CWE Rule 822Untrusted Pointer Dereference (Since R2023b)
CWE Rule 823Use of Out-of-range Pointer Offset (Since R2024a)
CWE Rule 824Access of Uninitialized Pointer (Since R2023a)
CWE Rule 825Expired Pointer Dereference (Since R2023a)
CWE Rule 826Premature Release of Resource During Expected Lifetime (Since R2024a)
CWE Rule 828Signal Handler with Functionality that is not Asynchronous-Safe (Since R2024a)
CWE Rule 832Unlock of a Resource that is not Locked (Since R2024a)
CWE Rule 833Deadlock (Since R2024a)
CWE Rule 839Numeric Range Comparison Without Minimum Check (Since R2023a)
CWE Rule 843Access of Resource Using Incompatible Type ('Type Confusion') (Since R2023a)
CWE Rule 908Use of Uninitialized Resource (Since R2024a)
CWE Rule 910Use of Expired File Descriptor (Since R2023a)
CWE Rule 922Insecure Storage of Sensitive Information (Since R2023a)
CWE Rule 1071Empty code block (Since R2023a)
CWE Rule 1335Incorrect Bitwise Shift of Integer (Since R2023a)
CWE Rule 1341Multiple Releases of Same Resource or Handle (Since R2023a)

CWE-658

CWE Rule 14Compiler Removal of Code to Clear Buffers (Since R2023a)
CWE Rule 119Improper Restriction of Operations within the Bounds of a Memory Buffer (Since R2023a)
CWE Rule 120Buffer Copy without Checking Size of Input ('Classic Buffer Overflow') (Since R2023a)
CWE Rule 121Stack-based Buffer Overflow (Since R2023a)
CWE Rule 122Heap-based Buffer Overflow (Since R2023a)
CWE Rule 123Write-what-where Condition (Since R2023a)
CWE Rule 124Buffer Underwrite ('Buffer Underflow') (Since R2023a)
CWE Rule 125Out-of-bounds Read (Since R2023a)
CWE Rule 126Buffer Over-read (Since R2023a)
CWE Rule 127Buffer Under-read (Since R2023a)
CWE Rule 128Wrap-around Error (Since R2023a)
CWE Rule 129Improper Validation of Array Index (Since R2023a)
CWE Rule 130Improper Handling of Length Parameter Inconsistency (Since R2023a)
CWE Rule 131Incorrect Calculation of Buffer Size (Since R2023a)
CWE Rule 134Use of Externally-Controlled Format String (Since R2023a)
CWE Rule 135Incorrect Calculation of Multi-Byte String Length (Since R2023a)
CWE Rule 170Improper Null Termination (Since R2023a)
CWE Rule 188Reliance on Data/Memory Layout (Since R2023a)
CWE Rule 190Integer Overflow or Wraparound (Since R2024a)
CWE Rule 191Integer Underflow (Wrap or Wraparound) (Since R2023a)
CWE Rule 192Integer Coercion Error (Since R2023a)
CWE Rule 194Unexpected Sign Extension (Since R2023a)
CWE Rule 195Signed to Unsigned Conversion Error (Since R2023a)
CWE Rule 196Unsigned to Signed Conversion Error (Since R2023a)
CWE Rule 197Numeric Truncation Error (Since R2023a)
CWE Rule 242Use of Inherently Dangerous Function (Since R2023a)
CWE Rule 243Creation of chroot Jail Without Changing Working Directory (Since R2023a)
CWE Rule 244Improper Clearing of Heap Memory Before Release ('Heap Inspection') (Since R2023a)
CWE Rule 362Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition') (Since R2023a)
CWE Rule 364Signal Handler Race Condition (Since R2023a)
CWE Rule 366Race Condition within a Thread (Since R2023a)
CWE Rule 374Passing Mutable Objects to an Untrusted Method (Since R2023b)
CWE Rule 375Returning a Mutable Object to an Untrusted Caller (Since R2023a)
CWE Rule 401Missing Release of Memory after Effective Lifetime (Since R2023a)
CWE Rule 415Double Free (Since R2023a)
CWE Rule 416Use After Free (Since R2023a)
CWE Rule 457Use of Uninitialized Variable (Since R2023a)
CWE Rule 460Improper Cleanup on Thrown Exception (Since R2023a)
CWE Rule 463Deletion of Data Structure Sentinel (Since R2023a)
CWE Rule 466Return of Pointer Value Outside of Expected Range (Since R2023a)
CWE Rule 467Use of sizeof() on a Pointer Type (Since R2023a)
CWE Rule 468Incorrect Pointer Scaling (Since R2023a)
CWE Rule 469Use of Pointer Subtraction to Determine Size (Since R2023a)
CWE Rule 474Use of Function with Inconsistent Implementations (Since R2023a)
CWE Rule 476NULL Pointer Dereference (Since R2023a)
CWE Rule 478Missing Default Case in Multiple Condition Expression (Since R2023a)
CWE Rule 479Signal Handler Use of a Non-reentrant Function (Since R2023a)
CWE Rule 480Use of Incorrect Operator (Since R2023a)
CWE Rule 481Assigning instead of Comparing (Since R2023a)
CWE Rule 482Comparing instead of Assigning (Since R2023a)
CWE Rule 483Incorrect Block Delimitation (Since R2023a)
CWE Rule 484Omitted Break Statement in Switch (Since R2023a)
CWE Rule 495Private Data Structure Returned From A Public Method (Since R2023a)
CWE Rule 496Public Data Assigned to Private Array-Typed Field (Since R2023b)
CWE Rule 558Use of getlogin() in Multithreaded Application (Since R2023a)
CWE Rule 560Use of umask() with chmod-style Argument (Since R2023a)
CWE Rule 562Return of Stack Variable Address (Since R2023a)
CWE Rule 587Assignment of a Fixed Address to a Pointer (Since R2023a)
CWE Rule 676Use of Potentially Dangerous Function (Since R2023a)
CWE Rule 685Function Call With Incorrect Number of Arguments (Since R2023a)
CWE Rule 688Function Call With Incorrect Variable or Reference as Argument (Since R2023b)
CWE Rule 690Unchecked Return Value to NULL Pointer Dereference (Since R2023a)
CWE Rule 704Incorrect Type Conversion or Cast (Since R2023a)
CWE Rule 733Compiler Optimization Removal or Modification of Security-critical Code (Since R2023a)
CWE Rule 762Mismatched Memory Management Routines (Since R2023a)
CWE Rule 783Operator Precedence Logic Error (Since R2023a)
CWE Rule 785Use of Path Manipulation Function without Maximum-sized Buffer (Since R2023a)
CWE Rule 787Out-of-bounds Write (Since R2023a)
CWE Rule 789Memory Allocation with Excessive Size Value (Since R2023a)
CWE Rule 805Buffer Access with Incorrect Length Value (Since R2023a)
CWE Rule 806Buffer Access Using Size of Source Buffer (Since R2023a)
CWE Rule 839Numeric Range Comparison Without Minimum Check (Since R2023a)
CWE Rule 843Access of Resource Using Incompatible Type ('Type Confusion') (Since R2023a)
CWE Rule 910Use of Expired File Descriptor (Since R2023a)
CWE Rule 1335Incorrect Bitwise Shift of Integer (Since R2023a)
CWE Rule 1341Multiple Releases of Same Resource or Handle (Since R2023a)

CWE-659

CWE Rule 14Compiler Removal of Code to Clear Buffers (Since R2023a)
CWE Rule 119Improper Restriction of Operations within the Bounds of a Memory Buffer (Since R2023a)
CWE Rule 120Buffer Copy without Checking Size of Input ('Classic Buffer Overflow') (Since R2023a)
CWE Rule 121Stack-based Buffer Overflow (Since R2023a)
CWE Rule 122Heap-based Buffer Overflow (Since R2023a)
CWE Rule 123Write-what-where Condition (Since R2023a)
CWE Rule 124Buffer Underwrite ('Buffer Underflow') (Since R2023a)
CWE Rule 125Out-of-bounds Read (Since R2023a)
CWE Rule 126Buffer Over-read (Since R2023a)
CWE Rule 127Buffer Under-read (Since R2023a)
CWE Rule 128Wrap-around Error (Since R2023a)
CWE Rule 129Improper Validation of Array Index (Since R2023a)
CWE Rule 130Improper Handling of Length Parameter Inconsistency (Since R2023a)
CWE Rule 131Incorrect Calculation of Buffer Size (Since R2023a)
CWE Rule 134Use of Externally-Controlled Format String (Since R2023a)
CWE Rule 135Incorrect Calculation of Multi-Byte String Length (Since R2023a)
CWE Rule 170Improper Null Termination (Since R2023a)
CWE Rule 188Reliance on Data/Memory Layout (Since R2023a)
CWE Rule 190Integer Overflow or Wraparound (Since R2024a)
CWE Rule 191Integer Underflow (Wrap or Wraparound) (Since R2023a)
CWE Rule 192Integer Coercion Error (Since R2023a)
CWE Rule 194Unexpected Sign Extension (Since R2023a)
CWE Rule 195Signed to Unsigned Conversion Error (Since R2023a)
CWE Rule 196Unsigned to Signed Conversion Error (Since R2023a)
CWE Rule 197Numeric Truncation Error (Since R2023a)
CWE Rule 242Use of Inherently Dangerous Function (Since R2023a)
CWE Rule 243Creation of chroot Jail Without Changing Working Directory (Since R2023a)
CWE Rule 244Improper Clearing of Heap Memory Before Release ('Heap Inspection') (Since R2023a)
CWE Rule 248Uncaught Exception (Since R2023a)
CWE Rule 362Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition') (Since R2023a)
CWE Rule 364Signal Handler Race Condition (Since R2023a)
CWE Rule 366Race Condition within a Thread (Since R2023a)
CWE Rule 374Passing Mutable Objects to an Untrusted Method (Since R2023b)
CWE Rule 375Returning a Mutable Object to an Untrusted Caller (Since R2023a)
CWE Rule 396Declaration of Catch for Generic Exception (Since R2023a)
CWE Rule 397Declaration of Throws for Generic Exception (Since R2023a)
CWE Rule 401Missing Release of Memory after Effective Lifetime (Since R2023a)
CWE Rule 415Double Free (Since R2023a)
CWE Rule 416Use After Free (Since R2023a)
CWE Rule 457Use of Uninitialized Variable (Since R2023a)
CWE Rule 460Improper Cleanup on Thrown Exception (Since R2023a)
CWE Rule 463Deletion of Data Structure Sentinel (Since R2023a)
CWE Rule 466Return of Pointer Value Outside of Expected Range (Since R2023a)
CWE Rule 467Use of sizeof() on a Pointer Type (Since R2023a)
CWE Rule 468Incorrect Pointer Scaling (Since R2023a)
CWE Rule 469Use of Pointer Subtraction to Determine Size (Since R2023a)
CWE Rule 476NULL Pointer Dereference (Since R2023a)
CWE Rule 478Missing Default Case in Multiple Condition Expression (Since R2023a)
CWE Rule 479Signal Handler Use of a Non-reentrant Function (Since R2023a)
CWE Rule 480Use of Incorrect Operator (Since R2023a)
CWE Rule 481Assigning instead of Comparing (Since R2023a)
CWE Rule 482Comparing instead of Assigning (Since R2023a)
CWE Rule 483Incorrect Block Delimitation (Since R2023a)
CWE Rule 484Omitted Break Statement in Switch (Since R2023a)
CWE Rule 493Critical Public Variable Without Final Modifier (Since R2023b)
CWE Rule 495Private Data Structure Returned From A Public Method (Since R2023a)
CWE Rule 496Public Data Assigned to Private Array-Typed Field (Since R2023b)
CWE Rule 498Cloneable class containing sensitive information (Since R2023b)
CWE Rule 500Public Static Field Not Marked Final (Since R2023a)
CWE Rule 543Use of Singleton Pattern Without Synchronization in a Multithreaded Context (Since R2024a)
CWE Rule 558Use of getlogin() in Multithreaded Application (Since R2023a)
CWE Rule 562Return of Stack Variable Address (Since R2023a)
CWE Rule 587Assignment of a Fixed Address to a Pointer (Since R2023a)
CWE Rule 676Use of Potentially Dangerous Function (Since R2023a)
CWE Rule 690Unchecked Return Value to NULL Pointer Dereference (Since R2023a)
CWE Rule 704Incorrect Type Conversion or Cast (Since R2023a)
CWE Rule 733Compiler Optimization Removal or Modification of Security-critical Code (Since R2023a)
CWE Rule 762Mismatched Memory Management Routines (Since R2023a)
CWE Rule 766Critical Data Element Declared Public (Since R2023a)
CWE Rule 767Access to Critical Private Variable via Public Method (Since R2023a)
CWE Rule 783Operator Precedence Logic Error (Since R2023a)
CWE Rule 785Use of Path Manipulation Function without Maximum-sized Buffer (Since R2023a)
CWE Rule 787Out-of-bounds Write (Since R2023a)
CWE Rule 789Memory Allocation with Excessive Size Value (Since R2023a)
CWE Rule 805Buffer Access with Incorrect Length Value (Since R2023a)
CWE Rule 806Buffer Access Using Size of Source Buffer (Since R2023a)
CWE Rule 839Numeric Range Comparison Without Minimum Check (Since R2023a)
CWE Rule 843Access of Resource Using Incompatible Type ('Type Confusion') (Since R2023a)
CWE Rule 910Use of Expired File Descriptor (Since R2023a)
CWE Rule 1335Incorrect Bitwise Shift of Integer (Since R2023a)
CWE Rule 1341Multiple Releases of Same Resource or Handle (Since R2023a)

API / Function Errors

CWE Rule 242Use of Inherently Dangerous Function (Since R2023a)
CWE Rule 474Use of Function with Inconsistent Implementations (Since R2023a)
CWE Rule 475Undefined Behavior for Input to API (Since R2024a)
CWE Rule 477Use of Obsolete Function (Since R2023a)
CWE Rule 676Use of Potentially Dangerous Function (Since R2023a)

Bad Coding Practices

CWE Rule 478Missing Default Case in Multiple Condition Expression (Since R2023a)
CWE Rule 489Active Debug Code (Since R2023a)
CWE Rule 547Use of Hard-coded, Security-relevant Constants (Since R2023a)
CWE Rule 561Dead Code (Since R2023a)
CWE Rule 562Return of Stack Variable Address (Since R2023a)
CWE Rule 563Assignment to Variable without Use (Since R2023a)
CWE Rule 628Function Call with Incorrectly Specified Arguments (Since R2024a)
CWE Rule 1071Empty code block (Since R2023a)

Behavioral Problems

CWE Rule 480Use of Incorrect Operator (Since R2023a)
CWE Rule 483Incorrect Block Delimitation (Since R2023a)
CWE Rule 484Omitted Break Statement in Switch (Since R2023a)
CWE Rule 733Compiler Optimization Removal or Modification of Security-critical Code (Since R2023a)
CWE Rule 783Operator Precedence Logic Error (Since R2023a)

Concurrency Issues

CWE Rule 366Race Condition within a Thread (Since R2023a)
CWE Rule 367Time-of-check Time-of-use (TOCTOU) Race Condition (Since R2024a)
CWE Rule 663Use of a Non-reentrant Function in a Concurrent Context (Since R2024a)

Credentials Management Errors

CWE Rule 798Use of Hard-coded Credentials (Since R2023a)

Cryptographic Issues

CWE Rule 325Missing Cryptographic Step (Since R2024a)
CWE Rule 328Use of Weak Hash (Since R2024a)

Data Integrity Issues

CWE Rule 353Missing Support for Integrity Check (Since R2023a)
CWE Rule 354Improper Validation of Integrity Check Value (Since R2024a)

Data Neutralization Issues

CWE Rule 78Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection') (Since R2024a)
CWE Rule 170Improper Null Termination (Since R2023a)
CWE Rule 188Reliance on Data/Memory Layout (Since R2023a)
CWE Rule 463Deletion of Data Structure Sentinel (Since R2023a)

Data Processing Errors

CWE Rule 130Improper Handling of Length Parameter Inconsistency (Since R2023a)

Data Validation Issues

CWE Rule 129Improper Validation of Array Index (Since R2023a)
CWE Rule 606Unchecked Input for Loop Condition (Since R2023b)

Error Conditions, Return Values, Status Codes

CWE Rule 248Uncaught Exception (Since R2023a)
CWE Rule 252Unchecked Return Value (Since R2023a)
CWE Rule 253Incorrect Check of Function Return Value (Since R2023a)
CWE Rule 391Unchecked Error Condition (Since R2024a)
CWE Rule 396Declaration of Catch for Generic Exception (Since R2023a)
CWE Rule 397Declaration of Throws for Generic Exception (Since R2023a)
CWE Rule 617Reachable Assertion (Since R2023a)

Expression Issues

CWE Rule 570Expression is Always False (Since R2023a)
CWE Rule 571Expression is Always True (Since R2023a)

File Handling Issues

CWE Rule 22Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') (Since R2024a)
CWE Rule 426Untrusted Search Path (Since R2024a)
CWE Rule 427Uncontrolled Search Path Element (Since R2024a)

Handler Errors

CWE Rule 479Signal Handler Use of a Non-reentrant Function (Since R2023a)

Information Management Errors

CWE Rule 312Cleartext Storage of Sensitive Information (Since R2023a)
CWE Rule 319Cleartext Transmission of Sensitive Information (Since R2023b)
CWE Rule 321Use of Hard-coded Cryptographic Key (Since R2023b)

Initialization and Cleanup Errors

CWE Rule 460Improper Cleanup on Thrown Exception (Since R2023a)

Key Management Errors

CWE Rule 322Key Exchange without Entity Authentication (Since R2024a)

Memory Buffer Errors

CWE Rule 120Buffer Copy without Checking Size of Input ('Classic Buffer Overflow') (Since R2023a)
CWE Rule 123Write-what-where Condition (Since R2023a)
CWE Rule 124Buffer Underwrite ('Buffer Underflow') (Since R2023a)
CWE Rule 125Out-of-bounds Read (Since R2023a)
CWE Rule 131Incorrect Calculation of Buffer Size (Since R2023a)
CWE Rule 786Access of Memory Location Before Start of Buffer (Since R2024a)
CWE Rule 787Out-of-bounds Write (Since R2023a)
CWE Rule 805Buffer Access with Incorrect Length Value (Since R2023a)

Numeric Errors

CWE Rule 128Wrap-around Error (Since R2023a)
CWE Rule 191Integer Underflow (Wrap or Wraparound) (Since R2023a)
CWE Rule 192Integer Coercion Error (Since R2023a)
CWE Rule 197Numeric Truncation Error (Since R2023a)
CWE Rule 369Divide By Zero (Since R2023a)
CWE Rule 681Incorrect Conversion between Numeric Types (Since R2024a)
CWE Rule 839Numeric Range Comparison Without Minimum Check (Since R2023a)

Others

CWE Rule 14Compiler Removal of Code to Clear Buffers (Since R2023a)
CWE Rule 20Improper Input Validation (Since R2024a)
CWE Rule 23Relative Path Traversal (Since R2024a)
CWE Rule 36Absolute Path Traversal (Since R2024a)
CWE Rule 67Improper Handling of Windows Device Names (Since R2024a)
CWE Rule 77Improper Neutralization of Special Elements used in a Command ('Command Injection') (Since R2024a)
CWE Rule 88Improper Neutralization of Argument Delimiters in a Command ('Argument Injection') (Since R2024a)
CWE Rule 114Process Control (Since R2024a)
CWE Rule 119Improper Restriction of Operations within the Bounds of a Memory Buffer (Since R2023a)
CWE Rule 121Stack-based Buffer Overflow (Since R2023a)
CWE Rule 122Heap-based Buffer Overflow (Since R2023a)
CWE Rule 126Buffer Over-read (Since R2023a)
CWE Rule 127Buffer Under-read (Since R2023a)
CWE Rule 190Integer Overflow or Wraparound (Since R2024a)
CWE Rule 194Unexpected Sign Extension (Since R2023a)
CWE Rule 195Signed to Unsigned Conversion Error (Since R2023a)
CWE Rule 196Unsigned to Signed Conversion Error (Since R2023a)
CWE Rule 198Use of Incorrect Byte Ordering (Since R2024a)
CWE Rule 226Sensitive Information in Resource Not Removed Before Reuse (Since R2024a)
CWE Rule 240Improper Handling of Inconsistent Structural Elements (Since R2024a)
CWE Rule 244Improper Clearing of Heap Memory Before Release ('Heap Inspection') (Since R2023a)
CWE Rule 287Improper Authentication (Since R2024a)
CWE Rule 297Improper Validation of Certificate with Host Mismatch (Since R2024a)
CWE Rule 304Missing Critical Step in Authentication (Since R2024a)
CWE Rule 311Missing Encryption of Sensitive Data (Since R2023b)
CWE Rule 316Cleartext Storage of Sensitive Information in Memory (Since R2024a)
CWE Rule 326Inadequate Encryption Strength (Since R2024a)
CWE Rule 327Use of a Broken or Risky Cryptographic Algorithm (Since R2024a)
CWE Rule 329Generation of Predictable IV with CBC Mode (Since R2024a)
CWE Rule 330Use of Insufficiently Random Values (Since R2024a)
CWE Rule 336Same Seed in Pseudo-Random Number Generator (PRNG) (Since R2024a)
CWE Rule 337Predictable Seed in Pseudo-Random Number Generator (PRNG) (Since R2024a)
CWE Rule 362Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition') (Since R2023a)
CWE Rule 377Insecure Temporary File (Since R2024a)
CWE Rule 401Missing Release of Memory after Effective Lifetime (Since R2023a)
CWE Rule 404Improper Resource Shutdown or Release (Since R2024a)
CWE Rule 415Double Free (Since R2023a)
CWE Rule 416Use After Free (Since R2023a)
CWE Rule 456Missing Initialization of a Variable (Since R2024a)
CWE Rule 457Use of Uninitialized Variable (Since R2023a)
CWE Rule 471Modification of Assumed-Immutable Data (MAID) (Since R2024a)
CWE Rule 481Assigning instead of Comparing (Since R2023a)
CWE Rule 482Comparing instead of Assigning (Since R2023a)
CWE Rule 493Critical Public Variable Without Final Modifier (Since R2023b)
CWE Rule 495Private Data Structure Returned From A Public Method (Since R2023a)
CWE Rule 496Public Data Assigned to Private Array-Typed Field (Since R2023b)
CWE Rule 498Cloneable class containing sensitive information (Since R2023b)
CWE Rule 500Public Static Field Not Marked Final (Since R2023a)
CWE Rule 522Insufficiently Protected Credentials (Since R2023a)
CWE Rule 532Insertion of Sensitive Information into Log File (Since R2024a)
CWE Rule 535Exposure of Information Through Shell Error Message (Since R2024a)
CWE Rule 543Use of Singleton Pattern Without Synchronization in a Multithreaded Context (Since R2024a)
CWE Rule 558Use of getlogin() in Multithreaded Application (Since R2023a)
CWE Rule 560Use of umask() with chmod-style Argument (Since R2023a)
CWE Rule 573Improper Following of Specification by Caller (Since R2024a)
CWE Rule 590Free of Memory not on the Heap (Since R2024a)
CWE Rule 664Improper Control of a Resource Through its Lifetime (Since R2024a)
CWE Rule 665Improper Initialization (Since R2024a)
CWE Rule 666Operation on Resource in Wrong Phase of Lifetime (Since R2024a)
CWE Rule 667Improper Locking (Since R2024a)
CWE Rule 672Operation on a Resource after Expiration or Release (Since R2024a)
CWE Rule 674Uncontrolled Recursion (Since R2024a)
CWE Rule 675Multiple Operations on Resource in Single-Operation Context (Since R2024a)
CWE Rule 682Incorrect Calculation (Since R2024a)
CWE Rule 683Function Call With Incorrect Order of Arguments (Since R2023b)
CWE Rule 685Function Call With Incorrect Number of Arguments (Since R2023a)
CWE Rule 686Function Call With Incorrect Argument Type (Since R2023b)
CWE Rule 687Function Call With Incorrectly Specified Argument Value (Since R2023b)
CWE Rule 688Function Call With Incorrect Variable or Reference as Argument (Since R2023b)
CWE Rule 690Unchecked Return Value to NULL Pointer Dereference (Since R2023a)
CWE Rule 691Insufficient Control Flow Management (Since R2024a)
CWE Rule 693Protection Mechanism Failure (Since R2024a)
CWE Rule 696Incorrect Behavior Order (Since R2024a)
CWE Rule 703Improper Check or Handling of Exceptional Conditions (Since R2024a)
CWE Rule 704Incorrect Type Conversion or Cast (Since R2023a)
CWE Rule 705Incorrect Control Flow Scoping (Since R2024a)
CWE Rule 710Improper Adherence to Coding Standards (Since R2024a)
CWE Rule 732Incorrect Permission Assignment for Critical Resource (Since R2024a)
CWE Rule 754Improper Check for Unusual or Exceptional Conditions (Since R2024a)
CWE Rule 755Improper Handling of Exceptional Conditions (Since R2024a)
CWE Rule 758Reliance on Undefined, Unspecified, or Implementation-Defined Behavior (Since R2024a)
CWE Rule 759Use of a One-Way Hash without a Salt (Since R2024a)
CWE Rule 762Mismatched Memory Management Routines (Since R2023a)
CWE Rule 780Use of RSA Algorithm without OAEP (Since R2024a)
CWE Rule 785Use of Path Manipulation Function without Maximum-sized Buffer (Since R2023a)
CWE Rule 789Memory Allocation with Excessive Size Value (Since R2023a)
CWE Rule 806Buffer Access Using Size of Source Buffer (Since R2023a)
CWE Rule 828Signal Handler with Functionality that is not Asynchronous-Safe (Since R2024a)
CWE Rule 922Insecure Storage of Sensitive Information (Since R2023a)
CWE Rule 1335Incorrect Bitwise Shift of Integer (Since R2023a)
CWE Rule 1341Multiple Releases of Same Resource or Handle (Since R2023a)

Permission Issues

CWE Rule 766Critical Data Element Declared Public (Since R2023a)
CWE Rule 767Access to Critical Private Variable via Public Method (Since R2023a)

Pointer Issues

CWE Rule 466Return of Pointer Value Outside of Expected Range (Since R2023a)
CWE Rule 467Use of sizeof() on a Pointer Type (Since R2023a)
CWE Rule 468Incorrect Pointer Scaling (Since R2023a)
CWE Rule 469Use of Pointer Subtraction to Determine Size (Since R2023a)
CWE Rule 476NULL Pointer Dereference (Since R2023a)
CWE Rule 587Assignment of a Fixed Address to a Pointer (Since R2023a)
CWE Rule 763Release of Invalid Pointer or Reference (Since R2023a)
CWE Rule 822Untrusted Pointer Dereference (Since R2023b)
CWE Rule 823Use of Out-of-range Pointer Offset (Since R2024a)
CWE Rule 824Access of Uninitialized Pointer (Since R2023a)
CWE Rule 825Expired Pointer Dereference (Since R2023a)

Privilege Issues

CWE Rule 243Creation of chroot Jail Without Changing Working Directory (Since R2023a)
CWE Rule 250Execution with Unnecessary Privileges (Since R2024a)
CWE Rule 273Improper Check for Dropped Privileges (Since R2024a)

Random Number Issues

CWE Rule 335Incorrect Usage of Seeds in Pseudo-Random Number Generator (PRNG) (Since R2023a)
CWE Rule 338Use of Cryptographically Weak Pseudo-Random Number Generator (PRNG) (Since R2023a)

Resource Locking Problems

CWE Rule 413Improper Resource Locking (Since R2023a)
CWE Rule 764Multiple Locks of a Critical Resource (Since R2024a)
CWE Rule 765Multiple Unlocks of a Critical Resource (Since R2024a)
CWE Rule 832Unlock of a Resource that is not Locked (Since R2024a)
CWE Rule 833Deadlock (Since R2024a)

Resource Management Errors

CWE Rule 770Allocation of Resources Without Limits or Throttling (Since R2024a)
CWE Rule 772Missing Release of Resource after Effective Lifetime (Since R2024a)
CWE Rule 826Premature Release of Resource During Expected Lifetime (Since R2024a)
CWE Rule 908Use of Uninitialized Resource (Since R2024a)
CWE Rule 910Use of Expired File Descriptor (Since R2023a)

Signal Errors

CWE Rule 364Signal Handler Race Condition (Since R2023a)

State Issues

CWE Rule 15External Control of System or Configuration Setting (Since R2024a)
CWE Rule 372Incomplete Internal State Distinction (Since R2024a)
CWE Rule 374Passing Mutable Objects to an Untrusted Method (Since R2023b)
CWE Rule 375Returning a Mutable Object to an Untrusted Caller (Since R2023a)

String Errors

CWE Rule 134Use of Externally-Controlled Format String (Since R2023a)
CWE Rule 135Incorrect Calculation of Multi-Byte String Length (Since R2023a)

Type Errors

CWE Rule 843Access of Resource Using Incompatible Type ('Type Confusion') (Since R2023a)

Topics