La recherche de vulnérabilités en passant par le fuzzing nécessite souvent une bonne préparation en amont afin de ne pas perdre un temps fou pour en définitive ne rien trouver. Cet article va présenter quelques techniques particulières à American Fuzzy Lop, célèbre pour avoir trouvé une quantité impressionnante de vulnérabilités dans des programmes tels que GNU bash, Perl, le kernel d'OpenBSD et bien d’autres.
Introduction
American Fuzzy Lop, activement développé par lcamtuf (Michal Zalewski), est un célèbre outil de fuzzing qui a notamment réussi à trouver des bugs dans une grande quantité de programmes. En témoigne le joli tableau maintenu sur la page du projet [1], dont une partie provient notamment du « fuzzing project » [2]. On retrouve la dernière version de celui-ci via une archive élégamment nommée afl-latest.gz et toutes les versions antérieures avec un numéro de version maintenu manuellement.
Pour celui qui chercherait une introduction générale à afl ainsi qu’à ces concepts, techniques d’instrumentation de code, stratégies de mutation, et tous les petits détails qui font d’afl un outil incontournable, Kevin Denis a publié un article sur ce sujet dans le hors-série MISC n°11 consacré aux outils de sécurité. Aussi, et d’une manière générale pour ce qui va être traité dans cet article, la documentation présente dans les...
- 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