1 使用 cargo-fuzz 进行模糊测试

cargo-fuzz 与 libFuzzer

译文 · 基于 Rust Fuzz Book

使用 cargo-fuzz 进行模糊测试

原文链接: https://rust-fuzz.github.io/book/cargo-fuzz.html

cargo-fuzz 是模糊测试 Rust 代码的推荐工具。

cargo-fuzz 本身不是模糊器,而是调用模糊器的工具。目前它仅支持 libFuzzer(通过 libfuzzer-sys crate),但未来可扩展以支持其他模糊器。


1.1 安装

cargo-fuzz 安装与环境要求

1.2 教程

使用 cargo-fuzz 模糊测试 rust-url

1.3 指南

cargo-fuzz 命令与配置

1.4 结构感知模糊测试

结构化输入与自定义变异器

1.5 编写会访问数据的测试预言机

在 harness 中验证引用有效性

1.6 代码覆盖率

生成与可视化覆盖率报告

1.7 目标集合

社区维护的 fuzz 目标

1.8 在 Windows 上模糊测试

Windows 与 MSVC AddressSanitizer

1.9 在 CI 中模糊测试

GitHub Actions 冒烟测试

最后修改 August 23, 2026: 更新 (499855b16)