跳转到主要内容
此内容尚未提供您的语言版本,正在以英文显示。

LibFuzzer

技能 已验证 活跃

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

目的

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.

功能

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

使用场景

  • 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.

非目标

  • 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.

工作流

  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.

先决条件

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

安装

请先添加 Marketplace

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

质量评分

已验证
95 /100
1 day ago 分析

信任信号

最近提交3 days ago
星标5.2k
许可证CC-BY-SA-4.0
状态
查看源代码

类似扩展