TRUST.IO: Protecting Physical Interfaces on Cyber-physical Systems


Chad Spensky, Aravind Machiry, Marcel Busch, Kevin Leach, Rick Housley, Christopher Kruegel, Giovanni Vigna


2020 IEEE Conference on Communications and Network Security (CNS) (IEEE CNS 2020), June 2020


Cyber-physical systems (CPSes) have been replacing their mechanical counterparts in many safety- and security- critical applications (e.g., door locks, automobiles, and critical infrastructure). However, this paradigm shift has introduced a new software-based attack vector into these historically isolated systems. In many cases, the ultimate goal of the software on these devices is to simply control a general purpose input/output (GPIO) interface (i.e., turning something on or off) or read a sensor value (e.g., temperature, speed of a motor, or physical position). Interacting with these physical interfaces from software is typically as easy as reading from, or writing to memory. Since many of these devices are networked, their physical interfaces are vulnerable to both remote and local attackers. We present TRUST.IO, a framework that automatically, and transparently, hardens these physical interfaces against all software-based exploits. More precisely, TRUST.IO ensures that the software on the device cannot access any protected GPIO interfaces without the approval from a trusted external client. TRUST.IO leverages the fact that users rarely interact directly with these embedded devices. Instead, users interact with a remote system (e.g., a car key, smart hub, or control system) that ultimately issues commands to the single-purpose embedded device. Thus, TRUST.IO leverages modern embedded processor features to ensure that these critical physical interactions will be performed if and only if the command was issued by an authorized external device. We demonstrate that TRUST.IO can be easily applied to existing CPSes, both bare-metal and Linux-based, with minimal runtime overhead and minimal code modifications.


  title        = {{TRUST.IO: Protecting Physical Interfaces on Cyber-physical Systems}},
  author       = {Spensky, Chad and Machiry, Aravind and Busch, Marcel and Leach, Kevin and Housley, Rick and Kruegel, Christopher and Vigna, Giovanni},
  booktitle    = {2020 IEEE Conference on Communications and Network Security (CNS) (IEEE CNS 2020)},
  month        = {June},
  year         = {2020},
  address      = {Avignon, France},
  organization = {USENIX Association}