Author:
Andarzian Seyed Behnam,Daniele Cristian,Poll Erik
Abstract
AbstractFuzzing is a widely used and effective technique to test software. Unfortunately, certain systems, including network protocols, are more challenging to fuzz than others. An important complication with fuzzing network protocols is that this tends to be a slow process, which is problematic as fuzzing involves many test inputs. This article analyzes the root causes behind the inefficiency of fuzzing network protocols and strategies to avoid them. It extends our earlier work on network protocol fuzzers, which explored some of these strategies, to give a more comprehensive overview of overheads in fuzzing and ways to reduce them.
Funder
Nederlandse Organisatie voor Wetenschappelijk Onderzoek
Publisher
Springer Science and Business Media LLC
Reference34 articles.
1. Schumilo S et al (2022) Nyx-net: network fuzzing with incremental snapshots. Proceedings of the Seventeenth European Conference on Computer Systems
2. Libfuzzer (2023) A library for coverage-guided fuzz testing. Retrieved Feb 2, 2023 from https://llvm.org/docs/LibFuzzer.html
3. Zardus (2023) preeny. Retrieved Jan 6, 2023 from https://github.com/zardus/preeny
4. Google (2022) ClusterFuzz Trophies. Retrieved Feb 12, 2023 from https://google.github.io/clusterfuzz/#trophies
5. Tuveri N (2021) Fuzzing open-SSL. Retrieved Feb 6, 2023 from https://github.com/openssl/openssl/blob/master/fuzz/README.md