Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Passing a pointer value to a deallocation function that was not previously obtained by the matching allocation function results in undefined behavior, which can lead to exploitable vulnerabilities.

Rule

Severity

Likelihood

Detectable

RepairableRemediation Cost

Priority

Level

MEM56-CPP

High

Likely

No

MediumNo

P18P9

L1L2

Automated Detection

V1006

Tool

Version

Checker

Description

Astrée

Include Page
Astrée_V
Astrée_V

dangling_pointer_use

Axivion Bauhaus Suite

Include Page
Axivion Bauhaus Suite_V
Axivion Bauhaus Suite_V

CertC++-MEM56
Helix QAC

Include Page
Helix QAC_V
Helix QAC_V

DF4721, DF4722, DF4723


Klocwork
Include Page
Klocwork_V
Klocwork_V
CERT.MEM.SMART_PTR.OWNED
CERT.MEM.SMART_PTR.OWNED.THIS


Parasoft C/C++test

Include Page
Parasoft_V
Parasoft_V

CERT_CPP-MEM56-a

Do not store an already-owned pointer value in an unrelated smart pointer

Polyspace Bug Finder

Include Page
Polyspace Bug Finder_V
Polyspace Bug Finder_V

CERT C++: MEM56-CPPChecks for use of already-owned pointers (rule fully covered)

PVS-Studio

Include Page
PVS-Studio

6.22

_V
PVS-Studio_V

V1006


Security Reviewer - Static Reviewer

Include Page
Security Reviewer - Static Reviewer_V
Security Reviewer - Static Reviewer_V

va_start_subsequentCalls

Fully implemented

Related Vulnerabilities

Search for other vulnerabilities resulting from the violation of this rule on the CERT website.

...