Pratiquer le fuzzing avec Fusil

Magazine
Marque
MISC
Numéro
39
Mois de parution
septembre 2008
Spécialité(s)


Résumé

Cet article est la suite de l'article « Comment réaliser un fuzzer » (MISC 36). Maintenant que les bases sont posées, voyons la mise en pratique. Fusil le fuzzer est une boîte à outils libre pour écrire ses propres fuzzers. Nous allons voir comment mettre en place l'environnement pour fuzzer une application, puis comment faire muter un fichier ou bien générer des données. Les sondes et le fonctionnement de Fusil seront détaillés pour bien comprendre ce qui se passe. Pour finir, l'exécution du fuzzer Python sera expliquée.


1. Mise en place l'environnement de test

Destiné initialement aux programmes Linux en ligne de commande, les types de cibles de Fusil sont divers et variés. Pour des questions pratiques (facilité à scripter), on peut souvent se ramener au cas d'un programme en ligne de commande. Plutôt que de lancer une interface graphique lourde comme Kpdf, on peut par exemple utiliser le programme en ligne de commande pdftotext : ces deux applications reposent sur la bibliothèque PDF poppler. Un crash de pdftotext a de fortes chances d'être reproductible avec avec Kpdf.

1.1 Créer un processus

Avant de pouvoir attaquer une cible, il faut préparer son environnement : mettre en place des variables d'environnement, créer une ligne de commande, lancer un ou plusieurs processus, etc. Comme c'est une tâche récurrente, Fusil dispose d'une collection d'outils pour répondre à ce besoin :

- AttachProcess surveille un processus en cours d'exécution,…

La suite est réservée aux abonnés. Il vous reste 93% à découvrir.
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Envie de lire la suite ? Rejoignez Connect
Je m'abonne maintenant


Article rédigé par

Par le(s) même(s) auteur(s)

Nouveautés de Python 3

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
40
Mois de parution
janvier 2009
Spécialité(s)
Résumé

Guido Van Rossum a lancé le projet Python 3, également appelé Python 3.0 ou Python 3000, en mars 2006, en créant une nouvelle branche Subversion. Ce projet vise à améliorer la conception du langage en se permettant des modifications incompatibles avec Python 2.x. Depuis la création de Python en 1991, ça sera la seconde version majeure brisant la compatibilité (la précédente est Python 2.0 qui date de 2000).Python 2.6 et Python 3 ont été développés en même temps pour limiter les différences entre ces deux versions. Python 3.0 bénéficie donc de l'ensemble des améliorations de Python 2.6.

Ctypes et Python

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
40
Mois de parution
janvier 2009
Spécialité(s)
Résumé

Ctypes est une bibliothèque qui sert de glu entre les langages Python et C. Elle permet d'appeler des fonctions de bibliothèques externes écrites en C, de définir des types, des structures et des callbacks Python.

Trucs et astuces

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
40
Mois de parution
janvier 2009
Spécialité(s)
Résumé

Python comme beaucoup de langages est très riche en fonctionnalités. Certaines d’entre elles sont méconnues ou trop rarement utilisées. Voici une petite sélection de trucs et astuces qui vous permettront sans doute de gagner du temps dans vos développements.

Les listes de lecture

Sécurité Windows : Active Directory

11 article(s) - ajoutée le 01/07/2020
Clé de voûte d'une infrastructure Windows, Active Directory est l'une des cibles les plus appréciées des attaquants. Les articles regroupés dans cette liste vous permettront de découvrir l'état de la menace, les attaques et, bien sûr, les contre-mesures.

Sécurité des mobiles

8 article(s) - ajoutée le 13/10/2020
Découvrez les méthodologies d'analyse de la sécurité des terminaux mobiles au travers d'exemples concrets sur Android et iOS.

Cryptographie appliquée

10 article(s) - ajoutée le 13/10/2020
Vous retrouverez ici un ensemble d'articles sur les usages contemporains de la cryptographie (whitebox, courbes elliptiques, embarqué, post-quantique), qu'il s'agisse de rechercher des vulnérabilités ou simplement comprendre les fondamentaux du domaine.
Plus de listes de lecture