1604
The view-1000 subtree that is associated with this weakness needs additional work. Several
entries will likely be created in this branch. Currently the focus is on free() of memory, but delete
and other related release routines may require the creation of intermediate entries that are not
specific to a particular function. In addition, the role of other types of invalid pointers, such as
an expired pointer, i.e. CWE-415 Double Free and release of uninitialized pointers, related to
CWE-457.
Taxonomy Mappings
Mapped Taxonomy Name Node ID Fit Mapped Node Name
Software Fault Patterns SFP12 Faulty Memory Release
References
[REF-657]"boost C++ Library Smart Pointers". < https://www.boost.org/doc/libs/1_38_0/libs/
smart_ptr/smart_ptr.htm >.2023-04-07.
[REF-480]"Valgrind". < http://valgrind.org/ >.
CWE-764: Multiple Locks of a Critical Resource
Weakness ID : 764
Structure : Simple
Abstraction : Base
Description
The product locks a critical resource more times than intended, leading to an unexpected state in
the system.
Extended Description
When a product is operating in a concurrent environment and repeatedly locks a critical resource,
the consequences will vary based on the type of lock, the lock's implementation, and the resource
being protected. In some situations such as with semaphores, the resources are pooled and
extra locking calls will reduce the size of the total available pool, possibly leading to degraded
performance or a denial of service. If this can be triggered by an attacker, it will be similar to an
unrestricted lock (CWE-412). In the context of a binary lock, it is likely that any duplicate locking
attempts will never succeed since the lock is already held and progress may not be possible.
Relationships
The table(s) below shows the weaknesses and high level categories that are related to this
weakness. These relationships are defined as ChildOf, ParentOf, MemberOr and give insight to
similar items that may exist at higher and lower levels of abstraction. In addition, relationships such
as PeerOf and CanAlsoBe are defined to show similar weaknesses that may want to be explored.
Relevant to the view "Research Concepts" (CWE-1000)
Nature Type ID Name Page
ChildOf 675 Multiple Operations on Resource in Single-Operation
Context