feat: Create fuzzer for R language parser #3329
Labels
enhancement
New feature or request
hacktoberfest
good issue for hacktoberfest participation
security
public security-related issues.
Description
cve-bin-tool has an existing fuzz testing setup which is based on Google Atheris. One of the areas it doesn't yet cover is the files used by the language list parsers. These are typically lists of 3rd party components/requirements written in a format to a specific packaging tool for a specific programming language. These may be lists of requirements generated by a human, or they could be generated by a tool.
This particular request is to fuzz the R language parser which uses
renv.lock
files, but I'll be filing requests for the other parsers as well. You can see which ones are listed under the security tag.Why?
Regular fuzz testing can help us find bugs and potential security issues in parsing . While we hope users aren't going to be regularly scanning malicious
renv.lock
files we'd still like to be able to handle things correctly if a file is really malformed.How should I do this?
renv.lock
files and add them to our proto files directory: https://github.com/intel/cve-bin-tool/tree/main/fuzz/proto_files. It's ok to have tests against files that are completely garbage, but probably the most interesting bugs will come from files that mostly look correct, and the proto setup will help you do that. If you're not sure how any of this works, you may find it useful to read this primer on structure-aware fuzzingHacktoberfest
I'm filing this with the intention of it being a bug for hacktoberfest 2023. If you're intending to do it as part of that contest, make sure you follow their rules. I believe we have to accept/merge your PR between Oct 1-31 for it to count, and you'll need to register after September 28 but probably before we merge anything. You may be able to open a draft PR earlier. Do let me know if you need something to count for hacktoberfest.
New Contributor Tips
Since this is marked as a hacktoberfest issue there's a good chance whoever does it will be new to cve-bin-tool, so here's the tips we usually put on new contributor friendly bugs
Short tips for new contributors:
Claiming issues:
The text was updated successfully, but these errors were encountered: