Dangling pointers and/or use-after-free pointers are gateways to exploits for software such as browsers, operating systems, etc. To forestall attacks that rely on dangling or use-after-free (UaF) pointers, ordinary pointers in source code can be replaced by secure pointers. However, secure pointers are generally applicable to the heap, not to the stack. In the stack, there may remain dangling or UaF pointers. This disclosure describes techniques to deterministically scan the stack such that objects referenced from on-stack pointers remain unfreed, thereby preventing their conversion to use-after-free pointers.
Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 License.
Hara, Kentaro, "Deterministic Stack Scanning to Prevent Dangling or Use-after-Free Pointers", Technical Disclosure Commons, (January 06, 2021)