Skip to main content

libafl

libafl

Catalogue généré le 2026-05-11

En une phrase

LibAFL isest aune modular"boîte fuzzingà libraryoutils" foren buildingRust custompour fuzzers.construire ton propre fuzzer sur mesure quand les fuzzers tout faits (libFuzzer, AFL++) ne suffisent plus pour ton cas tordu.

Quand l'utiliser

  • UseConstruire forun advancedfuzzer personnalisé avec ses propres stratégies de mutation.
Fuzzer une cible exotique (architecture rare, format de données très spécifique). Faire de la recherche académique en fuzzing needs,(nouvelles customtechniques). mutators,Avoir orle non-standardcontrôle fin sur chaque composant du fuzzing targets.(feedback, scheduler...). Remplacer libFuzzer en gardant le même code mais avec plus de puissance.

Comment l'invoquer

  • Slash command : /libafl (si exposé dans ton CLI)
  • Phrases déclencheurs (texte) : voir"custom lafuzzer", description"advanced complètefuzzing", ci-dessous"LibAFL research"
  • Auto-invocation : surSur demande explicite

Description complètedétaillée

LibAFL isn'est apas modularun fuzzingfuzzer library"clé foren buildingmain" customcomme fuzzers.libFuzzer Useou forAFL++. advancedC'est fuzzingplutôt needs,une custombibliothèque mutators,Rust ormodulaire non-standardqui fuzzingte targets.donne tous les bouts d'un fuzzer (l'observer de couverture, le mutateur, le scheduler, le feedback…) et te laisse les assembler comme un Lego. Tu as donc une liberté quasi totale sur le comportement de ta machine à tester.

C'est l'outil pour les cas avancés. Par exemple : tu veux tester un firmware embarqué sur une puce inhabituelle, ou tu veux inventer une nouvelle stratégie de mutation qui n'existe nulle part ailleurs. Avec libFuzzer ou AFL++, tu serais coincé. Avec LibAFL, tu codes ce qu'il te faut. La contrepartie : la courbe d'apprentissage est raide (il faut connaître Rust et comprendre comment marche un fuzzer en interne).

Bon plan : LibAFL peut servir de "drop-in replacement" pour libFuzzer. Tu gardes ton harness existant, mais tu profites des features modernes (multi-cœur, mutations avancées) sans tout réécrire. C'est l'outil que les chercheurs en sécurité utilisent pour leurs papiers académiques et les pentesters pour leurs cibles les plus difficiles.

Pour aller plus loin

LibAFL

Pour

LibAFLles isexemples aconcrets, modularoptions fuzzingde libraryconfiguration thatet implementspatterns features from AFL-based fuzzers like AFL++. Unlike traditional fuzzers, LibAFL provides all functionality in a modular and customizable way as a Rust library. It can be used as a drop-in replacement for libFuzzer or as a library to build custom fuzzers from scratch.

When to Use

Fuzzer Best For Complexity libFuzzer Quick setup, single-threaded Low AFL++ Multi-core, general purpose Medium LibAFL Custom fuzzers, advanced features, research High

Choose LibAFL when:

    You need custom mutation strategies or feedback mechanisms Standard fuzzers don't support your target architecture You want to implement novel fuzzing techniques You need fine-grained control over fuzzing components You're conducting fuzzing research

    Quick Start

    LibAFL can be used as a drop-in replacement for libFuzzer with minimal setup:

    (extrait —avancés, voir le SKILL.md complet pour la suite)original.

    Source

    • Plugin : trailofbits/testing-handbook-skills
    • Nom interne : libafl
    • Fichier : /home/thymon/.claude/plugins/cache/trailofbits/testing-handbook-skills/1.0.1/skills/libafl/SKILL.md