使用旧版 Rust 2015

0.1.5 2016年10月23日
0.1.4 2016年9月20日
0.1.3 2016年5月29日
0.1.1 2016年2月1日
0.1.0 2016年1月31日

#6 in #afl

Download history 4/week @ 2024-04-21 1/week @ 2024-04-28 4/week @ 2024-05-19 8/week @ 2024-06-02 5/week @ 2024-06-09 8/week @ 2024-06-16 6/week @ 2024-06-23 5/week @ 2024-06-30 37/week @ 2024-07-07 77/week @ 2024-07-28

114 每月下载量

Apache-2.0

8KB
147

afl.rs logo
afl.rs

使用 AFLplusplusRust 代码进行模糊测试

这是什么?

模糊测试 是一种软件测试技术,通过向软件提供伪随机数据作为输入来发现安全和稳定性问题。 AFLplusplus 是一个基于 AFL 的流行、有效且现代的模糊测试工具。这个库,afl.rs,允许用户在用 Rust 编程语言 编写的代码上运行 AFLplusplus。

文档

文档可以在 Rust Fuzz 书籍 中找到。

它看起来像什么?

Screen recording of afl

AFL 在 Rust 代码上运行的屏幕录制。

提示

在开始模糊测试之前,您应该重新配置系统以实现最佳性能和更好的崩溃检测。这可以通过使用 cargo-afl afl system-config 来完成。但是,这个子命令需要 root 权限,因此它内部使用 sudo。因此,您可能需要输入密码。

默认情况下,AFL++ 的 CMPLOG 功能被激活,这有助于实现良好的代码覆盖率。然而,在两个以上实例上激活 CMPLOG 并没有好处。因此,如果您在模糊测试目标上运行多个 AFL++ 实例,可以通过指定命令行参数 '-c -' 来禁用 CMPLOG。

这份 文档 将使您熟悉 AFL++ 功能,以帮助您成功运行模糊测试活动。

默认情况下,当使用 cargo-afl 构建时,会设置 fuzzing 配置。如果您想防止这种情况,只需在构建时将环境变量 AFL_NO_CFG_FUZZING 设置为 1 即可。

无运行时依赖

~17KB