Learn the secret craft of building your own fuzzers.
Fuzzing is just throwing random stuff at a system under test (SUT, a super fancy name for a binary). But before we write our first fuzzer, we need to setup some hardware, our environment all in a nice reproducible way. Why reproducibility? Ideally, if you run your fuzzing campaign twice it should uncover the same bugs. Obviously this will never be 100% true, depending on your budget or just the randomness of the evolution algorithms. But nevertheless, we need to make sure that we are always fuzzing with the same underlying system, on the same hardware, and the same version of whatever libraries our SUT will load/require.