Beningo Embedded Group

Overview

Automated input-generation testing (libFuzzer, AFL++, honggfuzz) adapted to firmware. Typically done by extracting parsers and protocol handlers and running them on host with sanitizers, or by fuzzing on-target through QEMU/Renode/Unicorn. Increasingly common for protocol stacks, file parsers, and bootloaders.

Benefits

Limitations & Risks

Recommended Actions

Pick one or two security-critical parsers in your firmware (BLE GATT, USB descriptors, CoAP, OTA image headers), build a host-side libFuzzer harness with AddressSanitizer, and run it on every PR through CI.

Additional Notes

Strongly complements Property-Based Testing and DevSecOps. Many CRA-relevant vulnerabilities surface first in fuzzing rather than functional tests.

References & Links