CWE-911

Improper Update of Reference Count
AI Translation Available

The product uses a reference count to manage a resource, but it does not update or incorrectly updates the reference count.

Status
incomplete
Abstraction
base
Likelihood
medium
C C++ Not Language-Specific

Reference counts can be used when tracking how many objects contain a reference to a particular resource, such as in memory management or garbage collection. When the reference count reaches zero, the resource can be de-allocated or reused because there are no more objects that use it. If the reference count accidentally reaches zero, then the resource might be released too soon, even though it is still in use. If all objects no longer use the resource, but the reference count is not zero, then the resource might not ever be released.

Common Consequences

availability
Impacts
dos: resource consumption (memory) dos: resource consumption (other) dos: crash, exit, or restart

Potential Mitigations