Heap feng shui
In computer security, heap feng shui (also known as heap grooming[1]) is a technique used in exploits to facilitate arbitrary code execution.[2] The technique attempts to manipulate the layout of the heap by making heap allocations of carefully selected sizes. It is named after feng shui, an ancient Chinese system of aesthetics that involves the selection of precise alignments in space.
Operation
The term is general and can be used to describe a variety of techniques for bypassing heap protection strategies. The paper often credited with naming the technique, "Heap Feng Shui in JavaScript",[3] used it to refer to an exploit in which a dangling pointer was aligned with a portion of an attacker-controlled chunk. However, it has also found usage in capture the flag events to describe attacks that exploit characteristics of heap layout, such as the spacing between chunks.[4]
See also
References
- "What is a "good" memory corruption vulnerability?". Google Project Zero. June 26, 2015. Retrieved 2020-11-11.
- "Heaps and Bounds". Trend Micro. September 3, 2007. Retrieved 2009-08-10.
- "Heap Feng Shui in Javascript" (PDF). BlackHat. Black Hat Europe. Retrieved 11 October 2018.
- Keith, Bruno. "Baby Feng Shui". Retrieved 19 June 2018.
External links
- Heap Feng Shui in JavaScript - Whitepaper by Alexander Sotirov
- Heap Feng Shui in JavaScript - Slides of the BlackHat presentation on this subject.