9Improving Fuzz Testing Coverage by Using Agent Instrumentation

AUDI, VIDE, TACE

This chapter presents an approach for improving fuzz testing coverage by using Agent instrumentation. As described in Section 7.3, a fuzz testing environment contains three parts: fuzz engine, injector, and monitor. Similar to Chapter 8, the focus of this chapter is on the monitor part. The main difference is that the SUT (system under test) in Chapter 8 is a typical embedded ECU (electronic control unit) communicating over an automotive network such as controller area network (CAN) or controller area network flexible data‐rate (CAN‐FD), whereas the SUT considered in this chapter is a rich operating system (OS) embedded system such as an in‐vehicle infotainment system or a telematics unit communicating over multiple different protocols including Wi‐Fi and Bluetooth. Please note that the fuzz testing environment presented in this chapter is built on using Agents running on the SUT that are responsible for providing external instrumentation, which is explained in more detail in Section 7.3.3. To quickly recap, external instrumentation means that the SUT is monitored using external means besides the protocol or interface being fuzzed in order to detect exceptions on the SUT.

With the rapid development in areas of the connected car and autonomous driving, more complex software is being developed and used in vehicles. Moreover, since these vehicles contain communication interfaces to communicate with ...

Get Building Secure Cars now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.