I'm interested in performing (dynamic) binary instrumentation using Python to be able to analyze the binary by instructions during execution for
Windows
Linux
Can someone suggest such tool/framework? Does it even exist or possible?
I'm interested in performing (dynamic) binary instrumentation using Python to be able to analyze the binary by instructions during execution for
Windows
Linux
Can someone suggest such tool/framework? Does it even exist or possible?
From https://code.google.com/p/processtap/ -
ProcessTap is a dynamic tracing framework for analyzing closed source-applications. ProcessTap is inspired by DTrace and SystemTap, but it is specific for analyzing closed-source user-space applications. ProcessTap leverages dynamic binary instrumentation to intercept the events of interest (e.g., function calls, system call, memory accesses, and conditional control transfers). Although the current implementation relies on PinTool, alternative back-ends for instrumentation (e.g., Valgrind, Qemu, or DynamoRIO) can be used. The language used in ProcessTap for writing scripts to instrument applications is Python.
Despite being an afternoon hack, this static binary instrumenter might get you part way there. However, consider these crucial limitations:
gc
directory and Makefile
). There isn't a good way of connecting instrumentation to that code, except by perhaps declaring and using an extern
symbol whose mangled name you know.BUT, it is in python ;-)