Victor Stinner
Sat, 23 Aug 2008 10:12:47 -0700
Fusil 1.0beta1 -------------- This is the first beta of the final Fusil 1.0 release. Please try all fuzzers as much as possible: on different OS, with different CPU, different Python version, etc. ;-) Changes:
* Convert projects to programs so it's possible to execute directly a fuzzer and a fuzzer has its own command line options * Remove all generated files: use --keep-generated-files to keep them * Use ptrace debugger in CreateProcess to watch process signals * Fix "Too many files open" bug: CreateProcess waits until process death to avoid creation of process zombi * Create a shell script (replay.sh) to replay a session, and gdb.sh to replay it in gdb * Create a configuration file, fusil.conf, to choose some global options like using the CPU probe or a debugger * Replace usage of FileWatch.patterns by FileWatch.addRegex() * Create AttachProcessPID() to watch a running process identified by its identifier (instead of its name) * Remove many debug messages: from the Multi Agent System, from the network client and server (don't log data exchange by default), don't show file/process informations * NetworkClient: close socket on session stop * NetworkClient: support non-blocking receive (timeout=0) * Create MangleProcess to simplify the fuzzers using an MangleAgent * A fuzzer is now a Python executable program and a Python module: move all projects from projects/ to fuzzers/, and remove run_fusil.sh script * AutoMangle: use increment operation for aggressivity >= 0.25 * Create FileWatch.fromFilename() static method * Improve Python 3.0 support * Run Fusil as an different user and group to avoid arbitrary file remove or process kill * Rename a session using strings like "abort", "timeout", "invalid_write", ... python-ptrace 0.4.1 ------------------- This version just adds some minor features needed by Fusil 1.0beta1: * The project has a new dedicated website: http://python-ptrace.hachoir.org/ * Create cptrace: optional Python binding of ptrace written in C (faster than ptrace, the Python binding written in Python with ctypes) * Add name attribute to SignalInfo classes * Fixes to help Python 3.0 compatibility: don't use sys.exc_clear() (was useless) in writeBacktrace() * ProcessState: create utime, stime, starttime attributes -- Victor Stinner aka haypo http://www.haypocalc.com/blog/ ---