Zum Hauptinhalt springen
Dieser Inhalt ist noch nicht in Ihrer Sprache verfügbar und wird auf Englisch angezeigt.

LibFuzzer

Skill Verifiziert Aktiv

Coverage-guided fuzzer built into LLVM for C/C++ projects. Use for fuzzing C/C++ code that can be compiled with Clang.

Zweck

To guide developers in quickly setting up and effectively using libFuzzer for fuzzing C/C++ code, enabling them to find bugs and improve code security.

Funktionen

  • Coverage-guided fuzzing with libFuzzer
  • Detailed harness writing guidance
  • Compilation instructions with sanitizers
  • Corpus management and optimization strategies
  • Running fuzzing campaigns and interpreting results

Anwendungsfälle

  • When needing to set up fuzzing for a C/C++ project compiled with Clang.
  • When wanting a simple, integrated fuzzing solution for quick setup.
  • When transitioning from libFuzzer to more advanced fuzzers.
  • When aiming to find memory errors and undefined behavior in C/C++ code.

Nicht-Ziele

  • Providing alternative fuzzers like AFL++ or LibAFL as the primary solution.
  • Fuzzing code not compatible with Clang.
  • Guiding advanced custom fuzzer development beyond standard libFuzzer usage.

Workflow

  1. Understand libFuzzer's purpose and when to use it.
  2. Install prerequisites (LLVM/Clang).
  3. Write a fuzzing harness (LLVMFuzzerTestOneInput).
  4. Compile the target code with fuzzing instrumentation.
  5. Manage the corpus (initial seeds, minimization).
  6. Run fuzzing campaigns and interpret results/crashes.

Voraussetzungen

  • LLVM/Clang compiler
  • Optional: LLVM tools for coverage analysis

Installation

Zuerst Marketplace hinzufügen

/plugin marketplace add trailofbits/skills
/plugin install testing-handbook-skills@trailofbits

Qualitätspunktzahl

Verifiziert
95 /100
Analysiert about 20 hours ago

Vertrauenssignale

Letzter Commit3 days ago
Sterne5.2k
LizenzCC-BY-SA-4.0
Status
Quellcode ansehen

Ähnliche Erweiterungen