openvpn
openvpn copied to clipboard
Fuzzing improvements
trafficstars
This commit consists of fuzzing improvements as part of Trail of Bits audit that we want to contribute.
Summary of changes:
- harnesses moved from oss-fuzz to this repository
- fixed the harnesses so they build with the current code
- expanded coverage of the existing harnesses
- added two new harnesses:
fuzz_mssandfuzz_parse_argv - changed OpenVPN code to use the
FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTIONmacro instead of ad-hoc patching as recommended by the libFuzzer documentation - added a simple python script to run fuzzing straight from OpenVPN repo and to generate coverage reports
After integrating those changes we recommend doing the following next steps:
- integrate building harnesses into CI to ensure they don't break with OpenVPN code changes
- update the OpenVPN project in oss-fuzz to use the harnesses from OpenVPN repository