Fusil

Software screenshot:
Fusil
Dettagli del software:
Versione: 1.4
Data di caricamento: 12 May 15
Sviluppatore: Victor Stinner
Licenza: Libero
Popolarità: 24

Rating: nan/5 (Total Votes: 0)

progetto Fusil è un programma di fuzzing. Attualmente, è specifico per programmi da linea di comando di Linux, ma il codice è stato progettato per essere utilizzato con qualsiasi tipo di progetto (processo remoto, finto server HTTP, socket di rete fuzz, ecc). Fusil progetto si basa su un sistema multi-agente invece di un'architettura monolitica.
Fusil è un progetto opensource scritto in Python con licenza GNU GPL.
Prova fusil
Vai alla directory principale fusil e iniziare a progetto xterm fuzzing:
fusil --project progetto / xterm.py
Risultato in uscita:
$ Cd fusil
$ Fusil progetto -p / xterm.py
[Session # 1] Inizia la sessione
[Processo xterm] Timeout! (1,0 secondi)
(...)
[Session # 8] Inizia la sessione
*** Glibc rilevato *** / usr / bin / xterm: doppio libero o corruzione (prec!): 0x080ad2b8 ***
======= Backtrace: =========
/lib/tls/i686/cmov/libc.so.6[0xb7b957cd]
(...)
[Processo orologio] Processo stato terminato dal segnale SIGIOT
[Session # 8] punteggio Sessione: 100,0%
[Domanda] Successo con seduta # 8

Cosa c'è di nuovo in questa versione:

  • Python 3 supporto
  • fusil-python:
  • migliorare la funzione che elenca tutti i moduli Python: utilizzare sys.builtin_module_names e pkgutil.iter_modules ()
  • lista nera più moduli, classi e funzioni

Cosa c'è di nuovo nella versione 1.3.2:

  • replay.py: impostare sys.path per facilitare l'utilizzo di Fusil senza installarlo
  • Fix fusil-gettext: ignorare gli errori strace a locateMO ()
  • fusil-python:
  • avvertimenti nascondere Python
  • listAllModules () comprende moduli incorporate
  • nuova opzione --only-c per testare solo moduli scritti in C
  • perdita di memoria fix: moduli di scaricamento testato
  • getFunctions fix (): uso isclass anche () per rilevare le classi
  • limite processo Disattiva Fusil memoria massima

Cosa c'è di nuovo nella versione 1.3.1:

  • fusil-python: autodiscover tutti i moduli invece di usare un elenco statico di moduli, cattura ogni eccezione durante il caricamento di un modulo, Fuzz solo funzioni pubbliche (modulo uso .__ tutto __)
  • FileWatch: ignorare parti duplicati sessione rename
  • Rimuovi parti di nome di sessione duplicati (ad esempio, & quot;. Sottaceto-error-error & quot; = & gt; & quot; picke-errore & quot;)
  • replay.py: non reindirizzare stdin a / dev / null se --ptrace viene utilizzato
  • sonda CPU: impostare la durata massima da 3 a 10 secondi (rinominare la sessione in caso di successo)

Cosa c'è di nuovo nella versione 1.3:

  • Crea fusil-gimp
  • Rimuovi charset da WriteCode: utilizzare builtin open () invece codecs.open () perché i file creati da open () sono molto più veloci
  • Ottimizza FileWatch: non ricompilare i modelli ad ogni sessione
  • fusil ora dipende da python-ptrace 0.6
  • Non utilizzare close_fds argomento subprocess.Popen () in Windows
  • lettore configurazione Fix: normal_calm_load, normal_calm_sleep, slow_calm_load, chiavi slow_calm_sleep opzioni globali del flottante, non interi
  • FileWatch utilizza il modello per rinominare la sessione

Cosa c'è di nuovo nella versione 1.2.1:

  • Fissare agente mangano dell'Immagine Magick fuzzer
  • Fissare AttachProcessPID sonda (): fermare la sonda all'uscita processo

Cosa c'è di nuovo nella versione 1.2:

  • User cambiamenti visibili:
  • Fusil ora richiede Python 2.5
  • Documentazione: scrivere un indice (index.rst) e un manuale d'uso (usage.rst)
  • copione Replay: copia ambiente HOME per GDB e prendere setuid () Errore
  • fusil-firefox: supportare più formati di file (bmp, gif, ico, png, SVG), creare --test linea di comando, scrivere la pagina HTML in file index.html
  • fusil-python: scrivere gli errori stderr (invece di stdout) per evitare errori unicode (soprattutto con python3)
  • FileWatch: rinominare la sessione con & quot; long_output & quot; se il programma ha scritto più di linee max_nbline
  • fusil-python: posix.fork blacklist () per evitare falsi positivi
  • Se il processo viene ucciso da un segnale, rinominare la sessione utilizzando il nome del segnale (già lavorato se il debugger è stato disattivato)
  • modifiche Sviluppatore:
  • MangleAgent supporta i file di input multipli
  • Crea DummyMangle: agente con MangleFile API, ma non toccare il contenuto del file per verificare il fuzzer
  • Rete: close () di NetworkClient e uso ServerClient shutdown (SHUT_RDWR)
  • NetworkServer utilizza un arretrato di 5 clienti per socket.listen () (invece di 1)
  • Bugfix:
  • Fix Directory.rmtree () e sceneggiatura riproduzione per Python 3.0
  • ServerClient.sendBytes Fix (): uso socket.send () risultato per ottenere compensare i dati successivi

Cosa c'è di nuovo nella versione 1.0 finale:

  • Questa release aggiunge vlc e fuzzer zzuf, un replay. sceneggiatura py con molte opzioni (es --valgrind), e l'opzione --force-unsafe (come --unsafe ma senza la conferma).
  • Si utilizza sempre un dispositivo null come stdin per processi figli per evitare di bloccare il fuzzer se il processo si legge stdin.
  • L'identificatore processo creato è scritto nei registri.

Cosa c'è di nuovo nella versione 1.0 Beta 3:

  • La sessione viene rinominato utilizzando lo stato di uscita di processo ( codice di uscita o il segnale). Viene visualizzato il progresso di esecuzione.
  • Il numero totale di processi è limitata (per la protezione contro le bombe forcella) e un core dump è permesso.
  • Bugs introdotte dal cambio utente sono state fissate.
  • La compatibilità con Python 3000 e FreeBSD è stato migliorato.

Requisiti

  • Python
  • GCC

Altri software di sviluppo Victor Stinner

IPy
IPy

11 Apr 15

IPy
IPy

12 May 15

python-ptrace
python-ptrace

11 May 15

Commenti a Fusil

I commenti non trovato
Aggiungi commento
Accendere le immagini!