HeapLocker is a new tool I’m releasing to mitigate heap spray attacks. But be patient, don’t use this version (V0.0.0.2) yet for other reasons than experimenting! I’m still testing newer versions that I’ll release soon.
HeapLocker uses 5 mitigation techniques.
1) Like EMET, HeapLocker will pre-allocate virtual memory pages to protect the addresses often used in exploits with heap sprays. HeapLocker can go one step further than EMET: it can inject its own shellcode to warn the user in case of an attack:
2) HeapLocker can also pre-allocate memory page zero, like EMET.
3) To detect heap sprays in action, HeapLocker monitors private memory usage:
4) HeapLocker can monitor the application’s memory for NOP-sleds:
5) The last technique, monitoring the application’s memory for specific strings, proved to be very successful to detect malicious PDF documents:
I will detail these techniques in upcoming posts.