I think fuzzing is a really promising practice we should integrate into our
CI pipeline to figure out certain defects. Here is my elevator pitch:

   1. Fuzzing or fuzz testing <https://en.wikipedia.org/wiki/Fuzzing> is an
   automated software testing technique that involves providing invalid,
   unexpected, or random data as inputs to a computer program.
   2. Jazzer <https://github.com/CodeIntelligenceTesting/jazzer> is a
   fuzzer for JVM applications and open-sourced by Code Intelligence.
   3. OSS-Fuzz <https://github.com/google/oss-fuzz> is Google's automated
   platform (including Google-provided build nodes!) to fuzz some noteworthy
   F/OSS projects.
   4. [2021-04-10] OSS-Fuzz adds Jazzer support
   <https://security.googleblog.com/2021/03/fuzzing-java-in-oss-fuzz.html>.
   5. [2021-12-13] Fabian Meumertzheim of Code Intelligence detects Log4j
   CVE-2021-44228 in ~5 min with a one-line fuzz target
   <https://twitter.com/fhenneke/status/1470377931230875650?s=20>.
   6. [2021-12-15] OSS-Fuzz adds Log4j to their suite
   <https://github.com/google/oss-fuzz/pull/7016>.

Though this is just the beginning. Somebody needs to spend some serious
amount of time to enrich the fuzz tests and cover as many Log4j entry
points as possible.

I am tinkering with the idea of a Kickstarter-like initiative to sign up
for this. Maybe as a 2-months-long gig?

Thoughts?

Reply via email to