Weakness classes (CWE)
1,245 pages, showing 801–900, ordered by identifier.
- CWE-474 — Use of Function with Inconsistent Implementations The code uses a function that has inconsistent implementations across operating systems and versions.
- CWE-475 — Undefined Behavior for Input to API The behavior of this function is undefined unless its control parameter is set to a specific value.
- CWE-476 — NULL Pointer Dereference The product dereferences a pointer that it expects to be valid but is NULL.
- CWE-477 — Use of Obsolete Function The code uses deprecated or obsolete functions, which suggests that the code has not been actively reviewed or maintained.
- CWE-478 — Missing Default Case in Multiple Condition Expression The code does not have a default case in an expression with multiple conditions, such as a switch statement.
- CWE-479 — Signal Handler Use of a Non-reentrant Function The product defines a signal handler that calls a non-reentrant function.
- CWE-48 — Path Equivalence: 'file name' (Internal Whitespace) The product accepts path input in the form of internal space ('file(SPACE)name') without appropriate validation,...
- CWE-480 — Use of Incorrect Operator The product accidentally uses the wrong operator, which changes the logic in security-relevant ways.
- CWE-481 — Assigning instead of Comparing The code uses an operator for assignment when the intention was to perform a comparison.
- CWE-482 — Comparing instead of Assigning The code uses an operator for comparison when the intention was to perform an assignment.
- CWE-483 — Incorrect Block Delimitation The code does not explicitly delimit a block that is intended to contain 2 or more statements, creating a logic error.
- CWE-484 — Omitted Break Statement in Switch The product omits a break statement within a switch or similar construct, causing code associated with multiple...
- CWE-485 — 7PK - Encapsulation 7PK - Encapsulation
- CWE-486 — Comparison of Classes by Name The product compares classes by name, which can cause it to use the wrong class when multiple classes can have the same name.
- CWE-487 — Reliance on Package-level Scope Java packages are not inherently closed; therefore, relying on them for code security is not a good practice.
- CWE-488 — Exposure of Data Element to Wrong Session The product does not sufficiently enforce boundaries between the states of different sessions, causing data to be...
- CWE-489 — Active Debug Code The product is released with debugging code still enabled or active.
- CWE-49 — Path Equivalence: 'filename/' (Trailing Slash) The product accepts path input in the form of trailing slash ('filedir/') without appropriate validation, which can...
- CWE-491 — Public cloneable() Method Without Final ('Object Hijack') A class has a cloneable() method that is not declared final, which allows an object to be created without calling...
- CWE-492 — Use of Inner Class Containing Sensitive Data Inner classes are translated into classes that are accessible at package scope and may expose code that the...
- CWE-493 — Critical Public Variable Without Final Modifier The product has a critical public variable that is not final, which allows the variable to be modified to contain...
- CWE-494 — Download of Code Without Integrity Check The product downloads source code or an executable from a remote location and executes the code without sufficiently...
- CWE-495 — Private Data Structure Returned From A Public Method The product has a method that is declared public, but returns a reference to a private data structure, which could...
- CWE-496 — Public Data Assigned to Private Array-Typed Field Assigning public data to a private array is equivalent to giving public access to the array.
- CWE-497 — Exposure of Sensitive System Information to an Unauthorized Control Sphere The product does not properly prevent sensitive system-level information from being accessed by unauthorized actors...
- CWE-498 — Cloneable Class Containing Sensitive Information The code contains a class with sensitive data, but the class is cloneable. The data can then be accessed by cloning...
- CWE-499 — Serializable Class Containing Sensitive Data The code contains a class with sensitive data, but the class does not explicitly deny serialization. The data can be...
- CWE-5 — J2EE Misconfiguration: Data Transmission Without Encryption Information sent over a network can be compromised while in transit. An attacker may be able to read or modify the...
- CWE-50 — Path Equivalence: '//multiple/leading/slash' The product accepts path input in the form of multiple leading slash ('//multiple/leading/slash') without...
- CWE-500 — Public Static Field Not Marked Final An object contains a public static field that is not marked final, which might allow it to be modified in unexpected ways.
- CWE-501 — Trust Boundary Violation The product mixes trusted and untrusted data in the same data structure or structured message.
- CWE-502 — Deserialization of Untrusted Data The product deserializes untrusted data without sufficiently ensuring that the resulting data will be valid.
- CWE-506 — Embedded Malicious Code The product contains code that appears to be malicious in nature.
- CWE-507 — Trojan Horse The product appears to contain benign or useful functionality, but it also contains code that is hidden from normal...
- CWE-508 — Non-Replicating Malicious Code Non-replicating malicious code only resides on the target system or product that is attacked; it does not attempt to...
- CWE-509 — Replicating Malicious Code (Virus or Worm) Replicating malicious code, including viruses and worms, will attempt to attack other systems once it has...
- CWE-51 — Path Equivalence: '/multiple//internal/slash' The product accepts path input in the form of multiple internal slash ('/multiple//internal/slash/') without...
- CWE-510 — Trapdoor A trapdoor is a hidden piece of code that responds to a special input, allowing its user access to resources without...
- CWE-511 — Logic/Time Bomb The product contains code that is designed to disrupt the legitimate operation of the product (or its environment)...
- CWE-512 — Spyware The product collects personally identifiable information about a human user or the user's activities, but the...
- CWE-514 — Covert Channel A covert channel is a path that can be used to transfer information in a way not intended by the system's designers.
- CWE-515 — Covert Storage Channel A covert storage channel transfers information through the setting of bits by one program and the reading of those...
- CWE-52 — Path Equivalence: '/multiple/trailing/slash//' The product accepts path input in the form of multiple trailing slash ('/multiple/trailing/slash//') without...
- CWE-520 — .NET Misconfiguration: Use of Impersonation Allowing a .NET application to run at potentially escalated levels of access to the underlying operating and file...
- CWE-521 — Weak Password Requirements The product does not require that users should have strong passwords.
- CWE-522 — Insufficiently Protected Credentials The product transmits or stores authentication credentials, but it uses an insecure method that is susceptible to...
- CWE-523 — Unprotected Transport of Credentials Login pages do not use adequate measures to protect the user name and password while they are in transit from the...
- CWE-524 — Use of Cache Containing Sensitive Information The code uses a cache that contains sensitive information, but the cache can be read by an actor outside of the...
- CWE-525 — Use of Web Browser Cache Containing Sensitive Information The web application does not use an appropriate caching policy that specifies the extent to which each web page and...
- CWE-526 — Cleartext Storage of Sensitive Information in an Environment Variable The product uses an environment variable to store unencrypted sensitive information.
- CWE-527 — Exposure of Version-Control Repository to an Unauthorized Control Sphere The product stores a CVS, git, or other repository in a directory, archive, or other resource that is stored,...
- CWE-528 — Exposure of Core Dump File to an Unauthorized Control Sphere The product generates a core dump file in a directory, archive, or other resource that is stored, transferred, or...
- CWE-529 — Exposure of Access Control List Files to an Unauthorized Control Sphere The product stores access control list files in a directory or other container that is accessible to actors outside...
- CWE-53 — Path Equivalence: '\multiple\\internal\backslash' The product accepts path input in the form of multiple internal backslash ('multipletrailingslash') without...
- CWE-530 — Exposure of Backup File to an Unauthorized Control Sphere A backup file is stored in a directory or archive that is made accessible to unauthorized actors.
- CWE-531 — Inclusion of Sensitive Information in Test Code Accessible test applications can pose a variety of security risks. Since developers or administrators rarely...
- CWE-532 — Insertion of Sensitive Information into Log File The product writes sensitive information to a log file.
- CWE-535 — Exposure of Information Through Shell Error Message A command shell error message indicates that there exists an unhandled exception in the web application code. In...
- CWE-536 — Servlet Runtime Error Message Containing Sensitive Information A servlet error message indicates that there exists an unhandled exception in the web application code and may...
- CWE-537 — Java Runtime Error Message Containing Sensitive Information In many cases, an attacker can leverage the conditions that cause unhandled exception errors in order to gain...
- CWE-538 — Insertion of Sensitive Information into Externally-Accessible File or Directory The product places sensitive information into files or directories that are accessible to actors who are allowed to...
- CWE-539 — Use of Persistent Cookies Containing Sensitive Information The web application uses persistent cookies, but the cookies contain sensitive information.
- CWE-54 — Path Equivalence: 'filedir\' (Trailing Backslash) The product accepts path input in the form of trailing backslash ('filedir') without appropriate validation, which...
- CWE-540 — Inclusion of Sensitive Information in Source Code Source code on a web server or repository often contains sensitive information and should generally not be...
- CWE-541 — Inclusion of Sensitive Information in an Include File If an include file source is accessible, the file can contain usernames and passwords, as well as sensitive...
- CWE-543 — Use of Singleton Pattern Without Synchronization in a Multithreaded Context The product uses the singleton pattern when creating a resource within a multithreaded environment.
- CWE-544 — Missing Standardized Error Handling Mechanism The product does not use a standardized method for handling errors throughout the code, which might introduce...
- CWE-546 — Suspicious Comment The code contains comments that suggest the presence of bugs, incomplete functionality, or weaknesses.
- CWE-547 — Use of Hard-coded, Security-relevant Constants The product uses hard-coded constants instead of symbolic names for security-critical values, which increases the...
- CWE-548 — Exposure of Information Through Directory Listing The product inappropriately exposes a directory listing with an index of all the resources located inside of the directory.
- CWE-549 — Missing Password Field Masking The product does not mask passwords during entry, increasing the potential for attackers to observe and capture passwords.
- CWE-55 — Path Equivalence: '/./' (Single Dot Directory) The product accepts path input in the form of single dot directory exploit ('/./') without appropriate validation,...
- CWE-550 — Server-generated Error Message Containing Sensitive Information Certain conditions, such as network failure, will cause a server error message to be displayed.
- CWE-551 — Incorrect Behavior Order: Authorization Before Parsing and Canonicalization If a web server does not fully parse requested URLs before it examines them for authorization, it may be possible...
- CWE-552 — Files or Directories Accessible to External Parties The product makes files or directories accessible to unauthorized actors, even though they should not be.
- CWE-553 — Command Shell in Externally Accessible Directory A possible shell file exists in /cgi-bin/ or other accessible directories. This is extremely dangerous and can be...
- CWE-554 — ASP.NET Misconfiguration: Not Using Input Validation Framework The ASP.NET application does not use an input validation framework.
- CWE-555 — J2EE Misconfiguration: Plaintext Password in Configuration File The J2EE application stores a plaintext password in a configuration file.
- CWE-556 — ASP.NET Misconfiguration: Use of Identity Impersonation Configuring an ASP.NET application to run with impersonated credentials may give the application unnecessary privileges.
- CWE-557 — Concurrency Issues Concurrency Issues
- CWE-558 — Use of getlogin() in Multithreaded Application The product uses the getlogin() function in a multithreaded context, potentially causing it to return incorrect values.
- CWE-56 — Path Equivalence: 'filedir*' (Wildcard) The product accepts path input in the form of asterisk wildcard ('filedir*') without appropriate validation, which...
- CWE-560 — Use of umask() with chmod-style Argument The product calls umask() with an incorrect argument that is specified as if it is an argument to chmod().
- CWE-561 — Dead Code The product contains dead code, which can never be executed.
- CWE-562 — Return of Stack Variable Address A function returns the address of a stack variable, which will cause unintended program behavior, typically in the...
- CWE-563 — Assignment to Variable without Use The variable's value is assigned but never used, making it a dead store.
- CWE-564 — SQL Injection: Hibernate Using Hibernate to execute a dynamic SQL statement built with user-controlled input can allow an attacker to modify...
- CWE-565 — Reliance on Cookies without Validation and Integrity Checking The product relies on the existence or values of cookies when performing security-critical operations, but it does...
- CWE-566 — Authorization Bypass Through User-Controlled SQL Primary Key The product uses a database table that includes records that should not be accessible to an actor, but it executes a...
- CWE-567 — Unsynchronized Access to Shared Data in a Multithreaded Context The product does not properly synchronize shared data, such as static variables across threads, which can lead to...
- CWE-568 — finalize() Method Without super.finalize() The product contains a finalize() method that does not call super.finalize().
- CWE-569 — Expression Issues Expression Issues
- CWE-57 — Path Equivalence: 'fakedir/../realdir/filename' The product contains protection mechanisms to restrict access to 'realdir/filename', but it constructs pathnames...
- CWE-570 — Expression is Always False The product contains an expression that will always evaluate to false.
- CWE-571 — Expression is Always True The product contains an expression that will always evaluate to true.
- CWE-572 — Call to Thread run() instead of start() The product calls a thread's run() method instead of calling start(), which causes the code to run in the thread of...
- CWE-573 — Improper Following of Specification by Caller The product does not follow or incorrectly follows the specifications as required by the implementation language,...
- CWE-574 — EJB Bad Practices: Use of Synchronization Primitives The product violates the Enterprise JavaBeans (EJB) specification by using thread synchronization primitives.
- CWE-575 — EJB Bad Practices: Use of AWT Swing The product violates the Enterprise JavaBeans (EJB) specification by using AWT/Swing.
- CWE-576 — EJB Bad Practices: Use of Java I/O The product violates the Enterprise JavaBeans (EJB) specification by using the java.io package.
Browse by topic
Every page in the corpus, grouped. Search finds one page; this shows what else is here.