I'm trying to learn about heap overflows for this exploitation challenge I have to solve.
In short, the program allocates 3 consecutive buffers on the heap, and I have access to write whatever I want to all of them. Even though I write over the pointers used by the heap manager, which are located at the end of each buffer, no exception is raised when the buffers are HeapFree()d.
Why is that so? Shouldn't an exception be raised? How can I check on this further on?