21次发布
0.15.10 | 2024年7月19日 |
---|---|
0.15.8 | 2024年6月11日 |
0.15.4 | 2024年3月11日 |
0.15.1 | 2023年12月16日 |
0.0.0 | 2023年3月27日 |
#197 in 测试
每月3,974次下载
5MB
122K SLoC
包含 (ELF exe/lib, 21KB) persistent_target,(ELF exe/lib, 17KB) persistent_target_x86_64,(ELF exe/lib, 18KB) simple_target_x86_64,(ELF exe/lib, 17KB) persistent_target_x86_64,(ELF exe/lib, 18KB) simple_target_x86_64,(静态库, 1KB) small_archive.a 以及更多。
afl.rs
使用AFLplusplus进行Rust代码模糊测试
这是什么?
模糊测试 是一种软件测试技术,通过向软件提供伪随机数据作为输入来发现安全和稳定性问题。 AFLplusplus 是基于 AFL 的流行、有效且现代的模糊测试工具。这个库 afl.rs 允许用户在 Rust编程语言 编写的代码上运行AFLplusplus。
文档
文档可以在 Rust Fuzz 书籍 中找到。
看起来像什么?
AFL在Rust代码上运行的屏幕录制。
提示
在开始模糊测试之前,您应该为系统进行重新配置以优化性能和更好的崩溃检测。这可以通过使用 cargo-afl afl system-config
完成。但这个子命令需要root权限,因此它内部使用sudo。因此,您可能需要输入您的密码。
默认情况下,AFL++的CMPLOG功能已被激活,这有助于实现良好的代码覆盖率。然而,在两个以上实例上激活CMPLOG并不利。因此,如果您在模糊测试目标上运行多个AFL++实例,可以通过指定命令行参数'-c -'来禁用CMPLOG。
本文档将使您熟悉AFL++功能,以帮助您成功运行模糊测试活动。
默认情况下,当使用cargo-afl
进行构建时,会设置fuzzing
配置。如果您想防止这种情况,只需在构建时将环境变量AFL_NO_CFG_FUZZING
设置为1
即可。
依赖项
~5–15MB
~218K SLoC