CWE-667β€”Improper Locking

PUBLISHEDweakness record
released 2008-04-11 Β· last modified 2025-12-11

Metadata

CWE ID:
CWE-667
Abstraction:
Class
Structure:
Simple
Status:
Draft
Release Date:
2008-04-11
Latest Modification Date:
2025-12-11

Weakness Name

Improper Locking

Description

The product does not properly acquire or release a lock on a resource, leading to unexpected resource state changes and behaviors.

Locking is a type of synchronization behavior that ensures that multiple independently-operating processes or threads do not interfere with each other when accessing the same resource. All processes/threads are expected to follow the same steps for locking. If these steps are not followed precisely - or if no locking is done at all - then another process/thread could modify the shared resource in a way that is not visible or predictable to the original process. This can lead to data or memory corruption, denial of service, etc.

Common Consequences

Scope:
Availability
Impact:
DoS: Resource Consumption (CPU)
Notes:
Inconsistent locking discipline can lead to deadlock.

Related Weaknesses