OSS-Fuzz-Gen 项目教程

OSS-Fuzz-Gen 项目教程

oss-fuzz-genLLM powered fuzzing via OSS-Fuzz.项目地址:https://gitcode.com/gh_mirrors/os/oss-fuzz-gen

项目介绍

OSS-Fuzz-Gen 是一款基于大型语言模型(LLM)的模糊测试对象生成与评估框架。该工具旨在帮助研究人员和开发者使用多种大语言模型生成真实场景中的 C/C++ 项目,以执行模糊测试。通过自动化生成模糊测试对象,OSS-Fuzz-Gen 能够显著提高代码覆盖率,并发现潜在的安全漏洞。

项目快速启动

克隆项目

首先,将 OSS-Fuzz-Gen 项目源码克隆至本地:

git clone https://github.com/google/oss-fuzz-gen.git
cd oss-fuzz-gen

生成并评估模糊测试对象

使用以下命令生成并评估一个模糊测试对象:

./generate_fuzz_target.sh <项目名称>
./evaluate_fuzz_target.sh <项目名称>

执行基准测试

执行基准测试以验证生成的模糊测试对象的有效性:

./run_benchmark.sh <项目名称>

应用案例和最佳实践

案例一:TinyXML2 项目

在 TinyXML2 项目中,OSS-Fuzz-Gen 成功地将模糊测试的行覆盖率从 38% 提升至 69%,而无需任何人工干预。这表明 OSS-Fuzz-Gen 能够有效地提高代码覆盖率,并发现潜在的漏洞。

案例二:OpenSSL 项目

针对 OpenSSL 项目,OSS-Fuzz-Gen 从发现过去未被模糊测试覆盖的漏洞的角度出发,成功地生成了一个类似的模糊测试对象,并重新发现了这些漏洞。

典型生态项目

OSS-Fuzz

OSS-Fuzz 是一个持续模糊测试平台,支持超过 1000 个开源项目。通过与 OSS-Fuzz 集成,OSS-Fuzz-Gen 能够为现有项目提供免费的覆盖率提升,并自动化新项目的加入过程。

libFuzzer 和 AFL

OSS-Fuzz-Gen 生成的模糊测试对象可以与 libFuzzer 和 AFL 等模糊测试引擎结合使用,实现覆盖率导向的模糊测试,从而进一步提高代码质量和安全性。

通过以上步骤和案例,您可以快速上手并充分利用 OSS-Fuzz-Gen 项目,提升您的开源项目的代码质量和安全性。

oss-fuzz-genLLM powered fuzzing via OSS-Fuzz.项目地址:https://gitcode.com/gh_mirrors/os/oss-fuzz-gen

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

何媚京

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值