Write safe software
with fully automated test coverage

Let our cloud trudge through the boring parts, so you and your team can focus on what matters. As our automated process works its way through your code, your program will become more robust, safer, and perhaps also a bit happier.

Our fuzzing service works 24/7 on automatically increasing your test coverage - almost like adding new unit tests every day. It prevents regressions, by remembering each interesting test case and by testing all pull requests and commits against it. As a bonus, our experts will manage and configure the state-of-the-art fuzzer toolchains behind the scenes.

Our service makes fuzz testing a cheap and accessible part of your continuous integration workflow, so you can focus on fixing the bugs instead of finding them.

Interested?

Our fuzzing service does several things at the same time

So what is fuzz testing?

Fuzz testing is a randomized testing strategy that builds experience over time. More fuzzing yields more insights into your particular program.

Fuzz testing attempts to uncover subtle bugs and unexpected program behaviour. It works by trying millions (or billions) of randomly generated program inputs. Modern fuzzing relies on advanced heuristics when choosing these inputs. This has proven to be surprisingly effective in practice.

It is crucial that interesting inputs are not lost over time. Our service takes care of the details, so you can focus on your product.

Beta testers

As a startup, we are keen to learn more about deal-breakers or wanted features from potential users, which is why we are setting up an early adopter's private beta program.

We currently support C and C++ through LibFuzzer, which is part of LLVM, and Rust through cargo-fuzz. The service will pull your project repository every day and rebuild it with the latest changes.

Our service will then run your fuzz tests continuously on our infrastructure. In the free beta period, we will run a limited number of shared CPU cores and your project will get a piece of these. The current results will be available through our website, along with any program inputs that triggered crashes.

The private beta program is suitable for teams that already have, or are in the process of setting up, supported fuzz tests. For customers accepted into the program, we will do our best to help and address feedback and any questions or issues that may arise.

To be considered for the private beta, please fill out the form on this page. We look forward to hearing from you :-)

Future plans

Improving fuzzing end-to-end through transparency, effectiveness and easier APIs.

  • Better metrics for how the test inputs interact with your code, e.g. coverage reports with download links for test inputs that exercise specific code lines.
  • Alerting developers when their fuzzers get stuck, and help them figure out why, where, and how to fix it.
  • Working directly with a single byte buffer is tedious (especially if you need multiple values of different types). We are prototyping ideas for improving this situation while giving the fuzzer more information.
  • Run experiments across many projects to benchmark individual fuzzer heuristics on real-world data.
  • Support for fuzzing stateful programs, such as client-server setups, state machines, and multi-threaded programs.

Do you have ideas, comments, or feedback? Then reach out through the form on this page or at hello@seasoned.software.