10 IoT Cyber Security
475
10.2 A Complex Threat Environment
We borrow from the domain of Systems Engineering and the Systems Engineering
Body of Knowledge (SEBoK) [1] to define an IoT system as a “system-of-systems.”
According to the SEBoK, a system-of-systems has unique engineering and design
considerations when compared to a standard “system.” These include dynamic
and reconfigurable boundaries and interfaces, complex performance measurements
given the need to operate across different stakeholder systems, and metrics that are
often difficult to define and quantify given independent management of component
systems. For purposes of simplicity, we will use “system-of-system” and system
interchangeably in this chapter.
Complex IoT system-of-systems incorporate sensors and actuators, gateways,
attached storage devices, mobile applications, enterprise applications, cloud analytics, workflow management, notification systems, and various cloud services. IoT
systems also incorporate Application Programming Interfaces (APIs) and Software
Development Kits (SDKs) that allow users to mix-and-match capabilities within a
network. The use of these APIs and SDKs makes it easy for an enterprise to create
new features based on machine-to-machine interactions that were not previously
intended by the IoT product manufacturer.
IoT systems also rely upon multiple points of integration. Dozens of communication protocols exist to bind together devices and applications over both wireless and
wired networks. Messaging protocols such as the Constrained Application Protocol
(CoAP) or Message Queue Telemetry Transport (MQTT) protocol provide IoT
systems with the ability to pass data in a standardized format. Even legacy bus
protocols such as ModBus or a vehicle’s CAN Bus can be seen as components
within an IoT system.
Mobile applications play a vital role in most IoT systems. Mobile apps can be
used to interface directly with IoT products or the gateways and cloud services
that support those products. These might connect via protocols such as Bluetooth
or Wi-Fi. Cloud services also interact with IoT products. APIs collect data and
communicate management commands to and from devices at the edge.
As IoT systems begin to provide new autonomous capabilities across different
industries, their reliance on sensor inputs becomes critical. Autonomous vehicles
(AV), for example, rely upon a suite of cameras, sensors, radar, lidar, Global
Positioning System (GPS), and vehicle-to-vehicle communications in order to
support critical functions such as mission planning, behavioral planning, and motion
planning. These inputs can be spoofed and denied resulting in unexpected and even
dangerous behavior from the vehicle.
This web of components and interfaces makes the job of cyber security professionals difficult at best. A malicious actor needs to only identify and exploit a
weakness in a single component of this system-of-systems to gain a foothold into
the IoT. A weakness left open in a single insecure product, network device, cloud
service, mobile application, or even protocol can leave the door wide open to an
attacker gaining access. Once inside, bad actors can begin moving toward higher
475
10.2 A Complex Threat Environment
We borrow from the domain of Systems Engineering and the Systems Engineering
Body of Knowledge (SEBoK) [1] to define an IoT system as a “system-of-systems.”
According to the SEBoK, a system-of-systems has unique engineering and design
considerations when compared to a standard “system.” These include dynamic
and reconfigurable boundaries and interfaces, complex performance measurements
given the need to operate across different stakeholder systems, and metrics that are
often difficult to define and quantify given independent management of component
systems. For purposes of simplicity, we will use “system-of-system” and system
interchangeably in this chapter.
Complex IoT system-of-systems incorporate sensors and actuators, gateways,
attached storage devices, mobile applications, enterprise applications, cloud analytics, workflow management, notification systems, and various cloud services. IoT
systems also incorporate Application Programming Interfaces (APIs) and Software
Development Kits (SDKs) that allow users to mix-and-match capabilities within a
network. The use of these APIs and SDKs makes it easy for an enterprise to create
new features based on machine-to-machine interactions that were not previously
intended by the IoT product manufacturer.
IoT systems also rely upon multiple points of integration. Dozens of communication protocols exist to bind together devices and applications over both wireless and
wired networks. Messaging protocols such as the Constrained Application Protocol
(CoAP) or Message Queue Telemetry Transport (MQTT) protocol provide IoT
systems with the ability to pass data in a standardized format. Even legacy bus
protocols such as ModBus or a vehicle’s CAN Bus can be seen as components
within an IoT system.
Mobile applications play a vital role in most IoT systems. Mobile apps can be
used to interface directly with IoT products or the gateways and cloud services
that support those products. These might connect via protocols such as Bluetooth
or Wi-Fi. Cloud services also interact with IoT products. APIs collect data and
communicate management commands to and from devices at the edge.
As IoT systems begin to provide new autonomous capabilities across different
industries, their reliance on sensor inputs becomes critical. Autonomous vehicles
(AV), for example, rely upon a suite of cameras, sensors, radar, lidar, Global
Positioning System (GPS), and vehicle-to-vehicle communications in order to
support critical functions such as mission planning, behavioral planning, and motion
planning. These inputs can be spoofed and denied resulting in unexpected and even
dangerous behavior from the vehicle.
This web of components and interfaces makes the job of cyber security professionals difficult at best. A malicious actor needs to only identify and exploit a
weakness in a single component of this system-of-systems to gain a foothold into
the IoT. A weakness left open in a single insecure product, network device, cloud
service, mobile application, or even protocol can leave the door wide open to an
attacker gaining access. Once inside, bad actors can begin moving toward higher
