Modern vehicles are governed by a network of Electronic Control Units (ECUs), which are programmed to sense inputs from the driver and the environment, to process these inputs, and to control actuators that, e.g., regulate the engine or even control the steering system. ECUs within a vehicle communicate via automotive bus systems such as the Controller Area Network (CAN), and beyond the vehicles boundaries through upcoming vehicle-to-vehicle and vehicle-to-infrastructure channels. Approaches to manipulate the communication between ECUs for the purpose of security testing and reverse-engineering of vehicular functions have been presented in the past, all of which struggle with automating the detection of system change in response to message injection. In this paper we present our findings with fuzzing CAN networks, in particular while observing individual ECUs with a sensor harness. The harness detects physical responses, which we then use in a oracle functions to inform the fuzzing process. We systematically define fuzzers, fuzzing configurations and oracle functions for testing ECUs. We evaluate our approach based on case studies of commercial instrument clusters and with an experimental framework for CAN authentication. Our results show that the approach is capable of identifying interesting ECU states with a high level of automation. Our approach is applicable in distributed cyber-physical systems beyond automotive computing.
翻译:现代车辆由电子控制单位网络(ECUs)管理,电子控制单位网络的设计目的是感知驱动器和环境的投入,处理这些投入,控制动力器,例如调节发动机或甚至控制方向系统。在车辆内部,ECUs通过汽车公共汽车系统(如Control地区网络(CAN))进行通信,在车辆边界以外通过即将到来的车辆对车辆和车辆对基础设施的渠道进行通信;过去曾提出过为安全测试和反向设计车辆功能而操纵ECUs之间的通信的方法,所有这些方法都与自动检测因电文注入而导致的系统变化进行斗争。在本文件中,我们用模糊的CAN网络介绍我们的调查结果,特别是用传感器对单个ECUs进行观测时; 利用该工具探测物理反应,我们随后在一种或一些电文的功能中用来为烟雾过程提供信息。我们系统地界定了用于测试ECUs的模糊器、模糊配置和或电文功能。我们根据对商业仪器集群群群的案例研究,用一个可应用的计算机化高标准来评估我们的方法。我们用一个有趣的电子自动化认证系统显示我们系统的结果。