Description
The software uses the same control element across multiple
architectural layers.
Modes of Introduction:
Related Weaknesses
Consequences
Other: Reduce Maintainability
The software uses the same control element across multiple
architectural layers.
Modes of Introduction:
Other: Reduce Maintainability
The software uses an unnecessarily complex internal representation for its data structures or interrelationships between those structures.
Modes of Introduction:
Other: Reduce Maintainability
Other: Reduce Performance
The software contains an index range scan for a large data table,
but the scan can cover a large number of rows.
Modes of Introduction:
Other: Reduce Performance
The software uses a loop with a control flow condition based on
a value that is updated within the body of the loop.
Modes of Introduction:
Other: Reduce Maintainability
The software implements a Singleton design pattern but does not use appropriate locking or other synchronization mechanism to ensure that the singleton class is only instantiated once.
Modes of Introduction:
Other: Reduce Reliability
The software uses a storable data element that does not have
all of the associated functions or methods that are necessary to support
comparison.
Modes of Introduction:
Other: Reduce Reliability
The code contains a data element with a pointer that does not have an associated copy or constructor method.
Modes of Introduction:
Other: Reduce Reliability
The product’s code, documentation, or other artifacts do not
consistently use the same naming conventions for variables, callables, groups of
related callables, I/O capabilities, data types, file names, or similar types of
elements.
Modes of Introduction:
Debugging messages help attackers learn about the system and plan a form of attack.
ASP .NET applications can be configured to produce debug binaries. These binaries give detailed debugging messages and should not be used in production environments. Debug binaries are meant to be used in a development or testing environment and can pose a security risk if they are deployed to production.
The debug attribute of the tag defines whether compiled binaries should include debugging information. The use of debug binaries causes an application to provide as much information about itself as possible to the user.
Modes of Introduction:
– Implementation
Confidentiality: Read Application Data
Attackers can leverage the additional information they gain from debugging output to mount attacks targeted on the framework, database, or other resources used by the application.
Phase: System Configuration
Description:
Avoid releasing debug binaries into the production environment. Change the debug mode to false when the application is deployed into production.
Validation fields that do not appear in forms they are associated with indicate that the validation logic is out of date.
Modes of Introduction:
– Implementation
Other: Other
It is critically important that validation logic be maintained and kept in sync with the rest of the application. Unchecked input is the root cause of some of today’s worst and most common software security problems. Cross-site scripting, SQL injection, and process control vulnerabilities all stem from incomplete or absent input validation.