...
Failing to free memory can result in the exhaustion of system memory resources, which can lead to a denial-of-service attack.
Rule | Severity | Likelihood | Remediation Cost | Priority | Level |
|---|---|---|---|---|---|
MEM31-C | Medium | Probable | Medium | P8 | L2 |
Automated Detection
Tool | Version | Checker | Description | ||||
|---|---|---|---|---|---|---|---|
| Astrée |
|
| Supported, but no explicit checker | |||||||||
| CodeSonar |
| ALLOC.LEAK | Leak | ||||||
| Compass/ROSE |
| RESOURCE_LEAK ALLOC_FREE_MISMATCH | Finds resource leaks from variables that go out of scope while owning a resource | |||||||
| Cppcheck |
| leakReturnValNotUsed | Doesn't use return value of memory allocation function | ||||||
| Klocwork |
|
| LDRA tool suite |
| 50 D | Partially implemented | ||||||
| Parasoft C/C++test |
|
|
| BD-RES-LEAK |
| Implemented |
| Parasoft Insure++ |
| Detects leaks at runtime | |||
| Polyspace Bug Finder | R2016a | Memory leak | Memory allocated dynamically not freed |
| PRQA QA-C | 9.1 | 1771 |
| PRQA QA-C++ | 4.2 | 3337, 3338 |
| SonarQube C/C++ Plugin |
| S3584 |
| Splint |
|
Related Vulnerabilities
Search for vulnerabilities resulting from the violation of this rule on the CERT website.
...
Key here (explains table format and definitions)
Taxonomy | Taxonomy item | Relationship |
|---|---|---|
| ISO/IEC TR 24772:2013 | Memory Leak [XYL] | Prior to 2018-01-12: CERT: Unspecified Relationship |
| ISO/IEC TS 17961 | Failing to close files or free dynamic memory when they are no longer needed [fileclose] | Prior to 2018-01-12: CERT: Unspecified Relationship |
| CWE 2.11 | CWE-401, Improper Release of Memory Before Removing Last Reference ("Memory Leak") | 2017-07-05: CERT: Exact |
| CWE 2.11 | CWE-404 | 2017-07-06: CERT: Rule subset of CWE |
| CWE 2.11 | CWE-459 | 2017-07-06: CERT: Rule subset of CWE |
| CWE 2.11 | CWE-771 | 2017-07-06: CERT: Rule subset of CWE |
| CWE 2.11 | CWE-772 | 2017-07-06: CERT: Rule subset of CWE |
CERT-CWE Mapping Notes
Key here for mapping notes
...
- Failure to free resources besides files or memory chunks, such as mutexes)
Bibliography
| [ISO/IEC 9899:2011] | Subclause 7.22.3, "Memory Management Functions" |
...
...