The WinAppDbg python module allows developers to quickly code instrumentation scripts in Python under a Windows environment.
It uses ctypes to wrap many Win32 API calls related to debugging, and provides an object-oriented abstraction layer to manipulate threads, libraries and processes, attach your script as a debugger, trace execution, hook API calls, handle events in your debugee and set breakpoints of different kinds (code, hardware and memory). Additionally it has no native code at all, making it easier to maintain or modify than other debuggers on Windows.
The intended audience are QA engineers and software security auditors wishing to test / fuzz Windows applications with quickly coded Python scripts. Several ready to use utilities are shipped and can be used for this purposes.
Current features also include disassembling x86 native code (using the open source diStorm project, see http://ragestorm.net/distorm/), debugging multiple processes simultaneously and produce a detailed log of application crashes, useful for fuzzing and automated testing.
What's new in this version?
===========================
In a nutshell...
* fully supports Python 2.4 through 2.7
* fully supports Windows XP through Windows 7, 32 and 64 bit editions
* crash report tool now supports MSSQL (requires pyodbc)
* now supports downloading debugging symbols from Microsoft (thanks Neitsa!)
* new tool: sehtest.py (Windows SEH buffer overflow jump address bruteforcer,
inspired by the same tool by Nicolas Economou)
* the tutorial is now available in chm and pdf formats
* now with only one MSI installer for all supported Python versions
* added support for diStorm 3 (falls back to the old version if not found)
* now using cerealizer instead of pickle whenever possible
* added new command to the command line debugger to show the SEH chain
* a few more anti-anti-debug tricks were added, still more to go!
* several improvements to the Window instrumentation classes
* more code examples
* more Win32 API wrappers
* lots of miscellaneous improvements, more documentation and bugfixes as usual!