Visualization of heap operations.
Switch branches/tags
Nothing to show
Clone or download
wapiflapi Add the possibiility to inject meta-data.
Villoc now parses calls to villoc(msg) in the input as a tip to show msg as
info, this is particularly useful when generating the input logs from something
like a gdb script.
Latest commit d157a15 Jan 31, 2017


Villoc is a heap visualisation tool, it's a python script that renders a static html file. An example can be seen here:, this is villoc running on an exploit of PlaidCTF 2015's challenge PlaidDB.

How to

The easiest way to use villoc is probably to run the following command and open out.html in a browser.

ltrace ./target |& - out.html;

It is probably a good idea to disable ASLR for repeatable results and to use a file to pass the ltrace to villoc because otherwise the target's error output will be interleaved and might confuse villoc sometimes.

setarch x86_64 -R ltrace -o trace ./target; trace out.html;


Which malloc

This has been made with glibc's dl_malloc in mind. But it should work for other implementations, especially if you play with the --header and --footer options to indicate how much overhead the targeted malloc adds to the user data.