Kuboid
Open Luck·Kuboid.in
Black Hat2024
Open in YouTube ↗

The Key to Remote Vehicle Control: Autonomous Driving Domain Controller

Black Hat1,214 views32:32over 1 year ago

This talk demonstrates techniques for reverse engineering and exploiting Autonomous Driving Domain Controllers (ADAS) by treating them as IoT devices. The researchers detail methods for extracting firmware from eMMC and UFS storage, bypassing authentication, and gaining root shell access via UART or network interfaces. The presentation highlights the security risks of unhardened ADAS hardware and provides a practical demonstration of deploying automotive-grade AI models on a toy vehicle to illustrate the potential for remote control.

How to Root and Control Modern Autonomous Driving Domain Controllers

TLDR: Modern autonomous driving domain controllers (ADAS) are essentially high-performance IoT devices that lack basic security hardening. Researchers have demonstrated that by treating these units as standard embedded targets, one can extract firmware, bypass authentication, and gain root access via UART or network interfaces. This research proves that the "black box" of automotive hardware is wide open for those with the right hardware tools and a bit of patience.

Automotive security has long been treated as a niche discipline, often relegated to proprietary CAN bus sniffing and basic diagnostic protocol analysis. That era is over. The latest generation of Autonomous Driving Domain Controllers (ADAS) has shifted the paradigm from simple microcontrollers to high-performance computing clusters running complex embedded Linux or QNX environments. These units are now the central nervous system of the vehicle, managing everything from sensor fusion to chassis control. If you can compromise the ADAS, you effectively own the vehicle.

The ADAS as an IoT Target

Treating an ADAS unit as a standard IoT device is the most effective way to approach these targets. These controllers, such as those powered by the Nvidia Orin-X, are essentially powerful computers equipped with multiple network interfaces, high-speed storage, and complex software stacks.

During recent research, the primary goal was to gain root shell access. The attack surface is surprisingly broad. Most of these devices expose physical debug interfaces like UART, JTAG, or DAP. While some manufacturers attempt to disable these, they are frequently left active for production testing or field diagnostics. If you have physical access to the board, you have a direct line to the bootloader or the kernel console.

Firmware Extraction and Analysis

Gaining access to the filesystem is the first step in any serious engagement. These controllers typically use eMMC or UFS storage chips. Extracting the raw data from these chips is a standard procedure for anyone familiar with mobile device forensics. Using a Medusa Programmer or similar hardware interface allows you to dump the entire storage chip to a binary image.

Once you have the image, the real work begins. You need to parse the partition table to mount the filesystem. Many of these devices use standard formats like EXT4, but others use proprietary or heavily customized structures. Tools like binwalk are essential for identifying the file headers and carving out the compressed filesystems. If the device uses a GPT partition table, you can often mount it directly. If not, you are looking at manual reconstruction of the partition offsets.

After mounting the filesystem, you are looking for the usual suspects: /etc/shadow for password hashes, configuration files containing hardcoded credentials, and the binary blobs for the AI models. If the device has SSH enabled, you can often crack the root password using Hashcat. Even if the password is strong, you can often modify the startup scripts in the dumped image, re-flash the chip, and force the device to drop you into a root shell on the next boot.

The AI Model Attack Surface

One of the most fascinating aspects of this research is the exposure of the AI models themselves. These models are often stored as .onnx or .trt (TensorRT) files on the device. Because these models are proprietary and represent significant R&D investment, they are rarely encrypted.

By reverse engineering the libnvinfer.so library or similar inference engines using Ghidra, you can understand how the device loads and executes these models. The researchers demonstrated this by taking a model extracted from a high-end ADAS unit and deploying it onto a $50 toy car equipped with a similar NPU. The toy car was suddenly capable of real-time object detection, proving that the logic governing the vehicle's "vision" is fully portable and accessible.

Real-World Engagement and Impact

For a pentester, an engagement involving an ADAS unit is no longer just about the CAN bus. You are now looking at a full-blown Linux exploitation scenario. You should be scanning for open network ports, analyzing the communication between the T-Box (the vehicle's telematics unit) and the ADAS, and looking for command injection vulnerabilities in the services that handle over-the-air (OTA) updates.

The impact of a successful compromise is severe. Because the ADAS is connected to the powertrain and chassis CAN buses, an attacker with root access can send arbitrary CAN messages. This allows for the manipulation of throttle, steering, and braking systems. While modern vehicles have some safety interlocks, the ADAS is often trusted to make high-level decisions, and bypassing those trust boundaries is the ultimate goal.

Defensive Considerations

Defenders must stop treating the ADAS as a secure, isolated component. The lack of basic hardening—such as encrypted storage, secure boot, and disabled debug interfaces—is a critical failure. Automotive manufacturers need to implement OWASP A06:2021-Vulnerable and Outdated Components and OWASP A07:2021-Identification and Authentication Failures controls as a baseline. If your debug ports are active in production, you have already lost.

The security of autonomous vehicles is currently in a state of rapid evolution. As these systems become more complex, the attack surface will only grow. Researchers and testers should focus on the intersection of embedded hardware security and high-level software exploitation. The next major vulnerability in this space won't be found by sniffing the CAN bus; it will be found by rooting the domain controller and manipulating the AI models that drive the car.

Talk Type
research presentation
Difficulty
advanced
Category
iot security
Has Demo Has Code Tool Released


Black Hat Asia 2024

44 talks · 2024
Browse conference →
Premium Security Audit

We break your app before they do.

Professional penetration testing and vulnerability assessments by the Kuboid Secure Layer team. Securing your infrastructure at every layer.

Get in Touch
Official Security Partner
kuboid.in