ispras/oss-sydr-fuzz

GitHub: ispras/oss-sydr-fuzz

该项目基于OSS-Fuzz分支,通过结合模糊测试与动态符号执行技术,为多种编程语言的开源软件提供混合模糊测试能力以发现深层漏洞。

Stars: 146 | Forks: 40

# OSS-Sydr-Fuzz:开源软件的混合 Fuzzing 本仓库是 [OSS-Fuzz](https://github.com/google/oss-fuzz) 项目的一个分支。OSS-Sydr-Fuzz 包含了面向 sydr-fuzz 的开源软件目标,它结合了 fuzzing([libFuzzer](https://www.llvm.org/docs/LibFuzzer.html)、[AFL++](https://github.com/AFLplusplus/AFLplusplus))与 动态符号执行([Sydr](https://sydr-fuzz.github.io)) 的强大能力。 ## 项目结构 每个开源目标项目提供: * libFuzzer 的 Fuzz 目标 * AFL++ 的 Fuzz 目标 * Sydr 的 Fuzz 目标 * 使用 llvm-cov 构建的目标 * 构建脚本 * 字典 * 初始种子语料库 * Dockerfile,用于安装依赖、构建目标、创建初始语料库等。 * sydr-fuzz 的混合 Fuzzing 配置文件 * 启动混合 Fuzzing 的说明 注意:上述列出的部分文件可能不存在,或者可以从外部仓库获取。 ## 支持的开源项目 支持的项目位于[此处](projects)。除了 C/C++ 项目外,Sydr-Fuzz 目前还支持: * Rust:capstone-rs、image-rs、goblin、libhtp-rs、vector-rs、rust-regex、serde-json、gdb-command; * Go:image-go、ollama、fyne; * Python:crunch、h5py、msgspec、pillow、pytorch-py、ruamel-yaml、tensorflow-py、ultrajson、langchain; * Java:hsqldb、json-sanitizer、java-diff-utils、gson、fuzzywuzzy、joda-time、janino; * JavaScript:fast-xml-parser、node-xml2js; * С#:yamldotnet、cppsharp; * Lua:xml2lua。 ## 贡献 欢迎支持新的 Fuzz 目标。工作流程如下: 1. 编写 libFuzzer 和 Sydr 的目标。 2. 准备构建脚本。 3. 构建包含所有目标的 Dockerfile。 4. 提供 sydr-fuzz 配置文件。 5. 编写 README,其中包含运行 Fuzzing 的命令。 ## 成果 发现的漏洞列表可以在[这里](TROPHIES.md)找到。 ## 引用我们 ### Sydr-Fuzz: Continuous Hybrid Fuzzing and Dynamic Analysis for Security Development Lifecycle \[[论文](https://arxiv.org/abs/2211.11595)\] \[[演示](https://vishnya.xyz/vishnyakov-isprasopen2022.webm)\] \[[幻灯片](https://vishnya.xyz/vishnyakov-isprasopen2022.pdf)\] Vishnyakov A., Kuts D., Logunova V., Parygina D., Kobrin E., Savidov G., Fedotov A. Sydr-Fuzz: Continuous Hybrid Fuzzing and Dynamic Analysis for Security Development Lifecycle. 2022 Ivannikov ISPRAS Open Conference (ISPRAS), IEEE, 2022, pp. 111-123. DOI: [10.1109/ISPRAS57371.2022.10076861](https://www.doi.org/10.1109/ISPRAS57371.2022.10076861) ``` @inproceedings{vishnyakov22-sydr-fuzz, title = {{{Sydr-Fuzz}}: Continuous Hybrid Fuzzing and Dynamic Analysis for Security Development Lifecycle}, author = {Vishnyakov, Alexey and Kuts, Daniil and Logunova, Vlada and Parygina, Darya and Kobrin, Eli and Savidov, Georgy and Fedotov, Andrey}, booktitle = {2022 Ivannikov ISPRAS Open Conference (ISPRAS)}, pages = {111--123}, year = {2022}, publisher = {IEEE}, doi = {10.1109/ISPRAS57371.2022.10076861}, } ```
标签:AFL++, ASN解析, C/C++, CMS安全, Docker, Go, IPv6支持, JavaScript, JS文件枚举, libFuzzer, llvm-cov, Lua, OSS-Fuzz, Python, Ruby工具, Rust, SDLC, Sydr, Sydr-Fuzz, TLS抓取, UML, 中间件漏洞, 事务性I/O, 代码生成, 代码覆盖率, 动态符号执行, 可视化界面, 安全开发生命周期, 安全防御评估, 客户端加密, 开源框架, 持续集成, 无后门, 日志审计, 混合模糊测试, 渗透测试工具, 漏洞分析, 符号执行, 网络流量审计, 请求拦截, 路径探测, 软件安全, 逆向工具