OneFuzz Architecture

Ville Laitila on September 18, 2020

Right after OneFuzz was open sourced, we analyzed it and are providing following architectural views on OneFuzz.

OneFuzz contains CLI (written in Python, located in src/cli, with around 4 KLOC code). Rest (and the beef) of the system is written in Rust.

 

Supervisor is located at agent/onefuzz-supervisor and holds e.g. scheduler and coordinator.

onefuzz-directory under agent has the very substance of fuzzing like libfuzzer and blob.

onefuzz cli

 

Example view on how Radamsa is wrapped as part of onefuzz cli.

If interested in fuzzing, please also see an article on OSS-Fuzz Architecture.

In case you'd like to browse around source code in Softagram Desktop and take a deeper study on these kind of architecture models, feel free to register at opensource.softagram.com, a free service for open source analysis and visualization.

Later, we'll be releasing also a comparison against OSS-Fuzz. 

Read more