cargo-fuzz
cargo-fuzz
Catalogue généré le 2026-05-11
En une phrase
cargo-fuzz isest thel'outil deofficiel factopour fuzzingfuzzer toolun forprojet Rust projects: usingil bombarde tes fonctions Rust avec des entrées aléatoires pour trouver les bugs cachés, en une seule commande Cargo.
Quand l'utiliser
UseFuzzerforunfuzzingprojet Rust qui utilise Cargo (l'outil de build standard).
unsafe (sensibles à la mémoire).
Tester un parseur Rust ou une fonction de désérialisation.
Quand tu veux activer un sanitizer (AddressSanitizer) facilement avec Rust.
Comment l'invoquer
- Slash command :
/cargo-fuzz(si exposé dans ton CLI) - Phrases déclencheurs (texte) :
voir"fuzzlaRustdescriptionproject",complète"cargoci-dessousfuzz target", "Rust fuzzing" - Auto-invocation :
surSur demande explicite
Description complètedétaillée
cargo-fuzzfuzz, isc'est thele standard de factofait fuzzingpour toolfuzzer fordu code Rust projectsquand usingtu Cargo.utilises UseCargo for(le fuzzinggestionnaire de paquets et de build de Rust). Il s'utilise comme une sous-commande Cargo : cargo fuzz init, cargo fuzz run mon_test, et voilà. Sous le capot, il utilise libFuzzer comme moteur, mais tout est branché automatiquement avec les bons flags de compilation pour Rust.
Rust est censé être un langage "memory safe" par défaut, donc tu pourrais te dire "à quoi bon fuzzer ?". Réponse : Rust empêche les bugs mémoire classiques, mais il reste plein d'autres bugs possibles. Tes parseurs peuvent paniquer sur une entrée tordue, ta logique de validation peut avoir des trous, et si tu utilises des blocs unsafe, là toutes les protections sautent. cargo-fuzz t'aide à trouver tout ça.
Tu écris un petit fichier fuzz_target! qui reçoit des bytes aléatoires, tu lances la commande, et l'outil tourne en boucle en générant des entrées de plus en plus exotiques jusqu'à trouver un crash. Le support des sanitizers (comme AddressSanitizer) est intégré, ce qui est très utile pour le code with libFuzzer backend.unsafe.
Pour aller plus loin
cargo-fuzz
Pour
cargo-fuzzles isexemples theconcrets, options de factoconfiguration choiceet forpatterns fuzzing Rust projects when using Cargo. It uses libFuzzer as the backend and provides a convenient Cargo subcommand that automatically enables relevant compilation flags for your Rust project, including support for sanitizers like AddressSanitizer.
When to Use
cargo-fuzz is currently the primary and most mature fuzzing solution for Rust projects using Cargo.
Choose cargo-fuzz when:
Quick Start
(extrait —avancés, voir le SKILL.md complet pour la suite)original.
Source
- Plugin :
trailofbits/testing-handbook-skills - Nom interne :
cargo-fuzz - Fichier :
/home/thymon/.claude/plugins/cache/trailofbits/testing-handbook-skills/1.0.1/skills/cargo-fuzz/SKILL.md