...
Reading a pointer to deallocated memory is undefined because the pointer value is indeterminate and may can have a trap representation . In the latter case, doing so may cause a hardware trap.
...
Search for vulnerabilities resulting from the violation of this rule on the CERT website.
Related Guidelines
CERT C++ Secure Coding Standard: MEM30-CPP. Do not access freed memory
Bibliography
unmigrated-wiki-markup
\[[ISO/IEC 9899:1999|AA. Bibliography#ISO/IEC 9899-1999]\] Section 7.20.3.2, "The {{free
}} function"
\[[
ISO/IEC PDTR 24772|AA. Bibliography#ISO/IEC PDTR 24772]\] TR 24772 "DCM Dangling references to stack frames" and "XYK Dangling Reference to Heap"
MISRA Rule 17.6
MITRE CWE: CWE-416, "Use After Free"
Bibliography
Wiki Markup |
---|
Heap" \[[Kernighan 1988|AA. Bibliography#Kernighan 88]\] Section 7.8.5, "Storage Management" \[[MISRA 2004|AA. Bibliography#MISRA 04]\] Rule 17.6 \[[MITRE 2007|AA. Bibliography#MITRE 07]\] [CWE ID 416|http://cwe.mitre.org/data/definitions/416.html], "Use After Free" \[[OWASP Freed Memory|AA. Bibliography#OWASP Freed Memory]\] \[[Seacord 2005a|AA. Bibliography#Seacord 05]\] Chapter 4, "Dynamic Memory Management" \[[Viega 2005|AA. Bibliography#Viega 05]\] Section 5.2.19, "Using freed memory" \[[xorl 2009|AA. Bibliography#xorl 2009]\] ["CVE-2009-1364: LibWMF Pointer Use after free()"|http://xorl.wordpress.com/2009/05/05/cve-2009-1364-libwmf-pointer-use-after-free/] |
...