Avec la version 1.0, Fusil peut maintenant être utilisé sans risque. Il utilise un utilisateur dédié pour créer les processus fils et limite leurs ressources (mémoire, nombre total de processus, etc.). L'ajout d'un débogueur, python-ptrace, aide à la classification des erreurs (lecture/écriture invalide en mémoire, division par zéro, dépassement de la pile, ...) en renommant le dossier de travail du fuzzer.
Cette version étant une version béta, elle doit être testée au maximum sur différentes architectures et systèmes d'exploitations. N'hésitez pas à remonter des bugs !
Le développement de la version 1.0 (actuellement en phase béta) aura nécessité environ un an de développement. Le projet est distribué sous licence GPLv2, écrit en Python et packagé pour Debian, Mandriva et OpenEmbedded. Bien que le développement soit essentiellement réalisé sous Linux, Fusil fonctionne bien sous FreeBSD et devrait fonctionner sur n'importe quel système POSIX (UNIX et BSD en particulier).
- Site web de Fusil : fusil.hachoir.org
- Site web de python-ptrace : python-ptrace.hachoir.org
- Lire aussi la précédente dépêche : Fusillez vos applications avec Fusil 0.6 (décembre 2007).
Pour l'installation, vous aurez besoin de python-ptrace et d'un utilisateur système « fusil » (et d'un groupe « fusil »). Un fuzzer s'exécute simplement en tapant son nom : « fusil-gettext » par exemple. Chaque fuzzer a ses propres options, n'hésitez pas à essayer l'option « --help ».
Pour la documentation, consultez le dossier doc/. Des exemples simples sont disponibles dans le dossier examples/.
python-ptrace ne fonctionne correctement que sous Linux (i386, x86_64, PPC32) et FreeBSD (i386). Si vous avez des problèmes avec une autre architecture/système d'exploitation, vous pouvez le désactiver avec le fichier de configuration de Fusil (~/.config/fusil.conf) :
[debugger]
use_debugger = False
Consultez doc/configuration.rst pour connaître les autres options de Fusil.
Au passage, si vous ne connaissez pas python-ptrace, sachez qu'il est écrit intégralement en Python et inclut les programmes strace.py et gdb.py (clones de strace et gdb). strace.py est très proche de strace, mais possède plus d'options et fonctionne sous FreeBSD sans émulation Linux (dossier /proc). Au contraire, gdb.py est très limité, il ne gère ni les threads ni les symboles par exemple.
# Je vais tester
Posté par palm123 (site web personnel) . Évalué à 5.
ウィズコロナ
[^] # Re: Je vais tester
Posté par Victor STINNER (site web personnel) . Évalué à 8.
[^] # Re: Je vais tester
Posté par Xavier Maillard . Évalué à 2.
# Un outil pour générer des bugs ?
Posté par Toto . Évalué à 3.
Un programme qui rajoute des bugs ? super !
La phrase est un peu tendancieuse, même si facilement compréhensible. Mais j'aurais plutot dit "détecter".
Sinon, cet outil est vraiment interressant et puissant pour le peu que j'ai eu à l'utiliser. Toutes mes félicitations à son auteur
[^] # Re: Un outil pour générer des bugs ?
Posté par 🚲 Tanguy Ortolo (site web personnel) . Évalué à 2.
[^] # Re: Un outil pour générer des bugs ?
Posté par YLD . Évalué à 1.
[^] # Re: Un outil pour générer des bugs ?
Posté par Victor STINNER (site web personnel) . Évalué à 2.
# Suicide
Posté par anakin . Évalué à 3.
[^] # Re: Suicide
Posté par Victor STINNER (site web personnel) . Évalué à 2.
# et aussi dans archlinux
Posté par Sebastien . Évalué à 1.
http://aur.archlinux.org/packages.php?ID=19609
[^] # Re: et aussi dans archlinux
Posté par Victor STINNER (site web personnel) . Évalué à 2.
[^] # Re: et aussi dans archlinux
Posté par Sebastien . Évalué à 1.
http://aur.archlinux.org/packages.php?ID=19629
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.