[fusil] python-ptrace 0.5 and Fusil 1.0 final released |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/fusil Archives
]
\o/ Fusil 1.0 \o/
Fusil 1.0 final
---------------
Visiable changes:
* Create fusil-zzuf fuzzer (use the zzuf library)
* Create fusil-vlc fuzzer (VLC media player)
* For each session, generate a Python script (replay.py) to replay the
session. The script can run the target in gdb, valgrind or gdb.py
(python-ptrace debugger), with many options (--user, --limit, etc.)
* Create --force-unsafe option, like --unsafe with without the confirmation
* CreateProcess is now a probe (witch a score): if the debugger catchs a
fatal signal, the session stops
* Always use a null device as stdin for child processes to avoid blocking the
fuzzer if the process reads stdin (eg. call getchar())
* Write the created process identifier in the logs
Developer:
* Create EnvVarIntegerRange: environment variable with an integer value
in a fixed range
* Changes to get a minimal Windows support: disable "change user/group"
feature on Windows; remove log file before removing the project directory;
use ":NUL" instead of /dev/null for null input/output
* On setupProject() error, make sure that the project is cleaned
* Close stdout files (input and output) at process exit (fix needed
by Windows)
* Rename long2raw() to uint2bytes(), and bytes2long() to bytes2uint()
* Normalize score that make sure that a probe score is in range [-1; +1]
and so that score*weight is in range[-weight; +weight]
* CodeC: remove method lines(), writeCode() is renamed writeIntoFile(),
use unicode strings (instead of byte strings)
* Remove StdoutFile class, code merged in CreateProcess
python-ptrace 0.5 (2008-09-13)
------------------------------
Visible changes:
* Write an example (the most simple debugger) and begin to document the code
* gdb.py: create "dbginfo" command
* Parse socket syscalls on FreeBSD
* On invalid memory access (SIGSEGV), eval the dereference expression to get
the fault address on OS without siginfo (eg. FreeBSD)
* Fixes to get minimal Windows support: fix imports, fix locateProgram()
Other changes:
* Break the API:
- Rename PtraceDebugger.traceSysgood() to PtraceDebugger.enableSysgood()
- Rename PtraceDebugger.trace_sysgood to PtraceDebugger.use_sysgood
- Remove PtraceProcess.readCode()
* Create createChild() function which close all files except stdin,
stdout and stderr
* On FreeBSD, on process exit recalls waitpid(pid) to avoid zombi process
--
Victor Stinner aka haypo
http://www.haypocalc.com/blog/
---