SkillsScout
ENG-QUALITY / 工程效率与代码质量

libfuzzer-trailofbits-skills

收录日期 2026-08-04·来源仓库 ↗
受欢迎程度
8
可用程度与相关性
9
安全性
9
8.7SCOUT SCORE

1. 基本信息

项目 内容
名称 libfuzzer-trailofbits-skills
作者/维护者 Trail of Bits(官方安全研究团队)
来源链接 https://github.com/trailofbits/skills/tree/main/plugins/testing-handbook-skills/skills/libfuzzer
许可证 CC-BY-SA-4.0(GitHub API,仓库级)
GitHub Stars 6,419(仓库整体,GitHub API;合集仓库星数不代表本子技能个体热度,见第 6 章)
Forks 555(GitHub API)
最新版本 无正式 release 标签;本子技能所在路径最近一次提交 2026-06-05(GitHub API)
安装方式 /plugin install trailofbits/skills/plugins/testing-handbook-skills

2. 功能介绍与亮点

libFuzzer 是 LLVM 项目内置的进程内覆盖率引导模糊测试工具,官方教程将其定位为 C/C++ 模糊测试的“推荐起点”。这份技能把从零搭建到真实漏洞复现的完整链路整理成一份可直接照抄的手册:

3. 适用场景

所属分类:工程效率与代码质量(产出物是编写模糊测试入口代码、完成编译与运行这一具体工程实践,对应规则 B 问 4;不是安全审计报告本身,判定依据见第 7 步审计留痕)。

适用于刚决定给 C/C++ 项目引入模糊测试、需要从零搭建 libFuzzer 环境的开发者;已用其他 fuzzer 但想要一个更简单起点、后续再平滑迁移到 AFL++ 的工程师;需要在接入 OSS-Fuzz 等持续模糊测试基础设施前,先在本地验证 harness 能正常运行的团队。

4. 跨 Agent 兼容性

5. 推荐理由

libFuzzer 是 C/C++ 模糊测试事实上的入门工具,但官方 LLVM 文档分散在多个页面,且默认读者已有一定 fuzzing 背景。这份技能把“装 Clang、编译出第一个 fuzzer、喂语料、看崩溃、上 sanitizer、生成覆盖率报告”整条链路串成一份可直接照抄的手册,还附了一个用 libpng 复现真实内存漏洞的端到端案例——新手不需要东拼西凑官方文档与博客教程,跟着走一遍就能得到一个真正在跑的 fuzzer。

6. 评分

维度 分数 说明
受欢迎程度 8 官方 Trail of Bits 出品;仓库整体 6,419 stars(合集仓库星数不计入个体评分);第三方渠道 skills.sh 与 SKILL Leaderboard 均显示该子技能安装量约 3.9K
可用性 9 一条命令安装插件;文档给出三平台安装步骤、可直接复制的 harness 与编译命令、完整的 libpng 端到端案例、9 类故障排查表,内容详实且可操作;仓库整体近一天内仍有提交,维护活跃
安全性 9 见下方安全检查清单

安全检查清单

检查项 结果
① Shell 命令执行范围 内容为编译器与 fuzzer 命令示例(apt installclang++、运行本地生成的 fuzz 二进制),均为用户在自有开发环境中主动执行的标准构建流程,无隐藏破坏性操作
② 运行时联网外发 纯本地方法论与命令参考,仅含指向 LLVM 官方文档等资源的说明性链接,无自动网络外发行为
③ API Key/凭据 不涉及任何凭据或密钥
④ 可疑指令 未发现 prompt injection 或混淆代码迹象
⑤ 作者信誉 Trail of Bits 为知名安全研究公司,官方仓库出品,无造假迹象
⑥ License CC-BY-SA-4.0,明确
⑦ 最近维护 所在仓库最近一次提交为 2026-08-03,活跃维护中

7. 跟同类 Skills 相比的优势

项目 定位 与本技能的差异
fuzzing-obstacles(同插件) 针对 fuzzer 被 checksum、全局状态等障碍卡住这一具体问题,给出条件编译绕过手法 是流程跑通后遇到瓶颈才用到的进阶补丁技巧,不覆盖从安装到出结果的完整入门流程
address-sanitizer(同插件) 专讲 ASan 本身的配置、常见坑与 ASAN_OPTIONS 调优 不涉及如何搭建 fuzzer 或语料库,是本技能“Sanitizer Integration”一节引用的更深入版本,两者是配套关系
AFL++(libFuzzer 教程自身对比表中提及的同类工具) 多核变异策略更丰富,适合大规模并行模糊测试 配置复杂度更高;libFuzzer 的 harness 可直接复用给 AFL++,本技能把 libFuzzer 定位为“更简单的起点,后续可平滑迁移”
OSS-Fuzz(Google 持续模糊测试托管服务) 把已写好的 fuzzer 接入云端持续运行、自动生成 bug 报告的基础设施产品 不教如何从零写第一个 fuzzer;本技能覆盖的是接入此类服务之前的本地开发阶段

8. 用户评价

该技能目前在第三方平台(skills.sh、SKILL Leaderboard)均只显示安装量,尚无具名用户评价。

9. 其他补充

libfuzzer 与同插件的 harness-writing(编写模糊测试入口代码)、coverage-analysis(覆盖率分析)、fuzzing-dictionary(补充字典)构成互补组合,可按“写 harness → 用 libFuzzer 起步 → 测覆盖率 → 补字典”的顺序组合使用;单独使用本技能也可独立完成一轮 C/C++ 项目的模糊测试环境搭建与首次运行。

10. 安装使用方式

/plugin install trailofbits/skills/plugins/testing-handbook-skills

安装后无需重启,直接输入 /libfuzzer 即可触发;技能会引导用户确认目标代码是否用 Clang 编译、协助完成安装验证、生成 harness 模板,并给出对应平台的编译与运行命令。

11. 注意事项