dangling pointer


Also found in: Wikipedia.

dangling pointer

(programming)
A reference that doesn't actually lead anywhere. In C and some other languages, a pointer that doesn't actually point at anything valid. Usually this happens because it formerly pointed to something that has moved or disappeared, e.g. a heap-allocated block which has been freed and reused.

Used as jargon in a generalisation of its technical meaning; for example, a local phone number for a person who has since moved is a dangling pointer.
Mentioned in ?
References in periodicals archive ?
In this case, the pointer of "button" object was a dangling pointer [9], as shown in Fig.
Definition 1 The pointer variable p is a dangling pointer, if and only if (x := allocate(size) | 0 [less than or equal to] x [less than or equal to] [2.
Definition 2 A program crash is UAF vulnerability, if and only if the dangling pointer is generated and reused during the execution process of the program.
It should be noted that not all the dangling pointers generated by program will cause crash, only the key dangling pointer (noted KDP) which cause crash is concerned.
To exploit UAF vulnerability, "memory occupying" should be carried out, that is, before the dangling pointer is reused, the pointed memory area is first filled as the controllable data.
According to Definition 1, the dangling pointer must be a released one, and according to Property 1, the crash context will restore the information of the KDP.
Electric Fence tool [19] and PageHeap technique [20] use a new page for each allocation and rely on page protection mechanisms to detect dangling pointer uses, but it can hardly locate the root of the dangling pointer.
Based on the method of dynamic taint analysis [11], Undangle [12] tracks the allocations and releases of all pointers in the program, and is effective in finding and eliminating the dangling pointers.
In certain circumstances, properties in the plugin instance's parameter array could be freed prematurely leaving a dangling pointer that the plugin could execute, potentially calling into attacker-controlled memory," the security update states.
The developers say that, "In certain circumstances, properties in the plug-in instance's parameter array could be freed prematurely leaving a dangling pointer that the plug-in could execute, potentially calling into attacker-controlled memory.
Dynamic Memory Allocation (A): Dynamic memory management is a common source of programming flaws that can lead to heap-buffer overflows, dangling pointers, double-free issues, and other security problems.
Dynamic Memory Allocation (A) concerns: Dynamic memory management is a common source of programming flaws that can lead to security issues such as heap-buffer overflows, dangling pointers, and double-free issues.