Too Long; Didn't Read
<a href="http://lcamtuf.coredump.cx/afl/" target="_blank">American Fuzzy Lop (AFL)</a> is awesome. It’s easily the best thing out there for quickly doing cutting-edge fuzzing analysis on command line applications. But what about the situations where accessing the stuff you want to fuzz via command line isn’t so simple? Lots of times you can write a test harness (or maybe use <a href="https://llvm.org/docs/LibFuzzer.html" target="_blank">libFuzzer</a> instead), but what if you could just emulate the parts of the code that you want to fuzz and still get all the coverage-based advantages of AFL? For example, maybe you want to fuzz a parsing function from an embedded system that receives input via RF and isn’t easily debugged. Maybe the code you’re interested in is buried deep within a complex, slow <a href="https://hackernoon.com/tagged/program" target="_blank">program</a> that you can’t easily fuzz through any traditional <a href="https://hackernoon.com/tagged/tools" target="_blank">tools</a>.