oCANada: A Generation-Based Fuzzer for ECUs over CAN
Electronic Control Units are embedded devices that control various critical features of an automobile. Consequently, it is crucial to develop tools that enable penetration testers to identify security vulnerabilities within these ECUs as efficiently as possible. Fuzzing, a widely-used technique, can help uncover vulnerabilities in various types of applications. Fuzzing can then be applied to test ECUs through their communication protocols, the most common being the Controller Area Network (CAN). We present oCANada, a generation-based fuzzer which can be utilized in order to craft CAN messages for fuzzing.Many existing CAN fuzzers rely on simple mutation-based fuzzing, which involves randomly changing bits in the CAN payload. This paper introduces a novel generation-based fuzzing approach that leverages CAN database files (DBCs) in order to craft syntactically correct messages. oCANada also incorporates State-of-the-Art CAN reverse engineering techniques in order to enable syntax-aware fuzzing even when DBCs are not available. Additionally, this paper discusses test oracle techniques employed for fuzzing ECUs over CAN in both greybox and blackbox environments. Finally, we present our results while running the tool which we used two CANoe simulations, a Gateway ECU, and a modified version of the instrument cluster simulator ICSim. In these results, we also compare our fuzzer to the well-known CaringCaribou fuzzer.
Authors
- Tiago Santos (ORCID: https://orcid.org/0000-0003-2706-7531)
- Hugo Pacheco (ORCID: https://orcid.org/0000-0003-0720-7744)
- Patrick Grümer
- Reza Parsamehr
Institutions
- Universidade do Porto (PT)
Publication Details
- Published
- 2025-06-02
- DOI
- https://doi.org/10.1109/vnc64509.2025.11054197
- Primary Topic
- Vehicular Ad Hoc Networks (VANETs)
- Type
- article
- Field-Weighted Citation Impact
- 0.00