CWE-667: Improper Locking
The product does not properly acquire or release a lock on a resource, leading to unexpected resource state changes and behaviors.
Last updated
Overview
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.
Real-world CVEs
146 recorded CVEs are caused by CWE-667 (Improper Locking), including 2 in CISA's KEV (Known Exploited Vulnerabilities) catalog. KEVs are shown first. 8 new CWE-667 CVEs have been recorded so far in 2026 (79 in 2025).