In general, an IoT architecture is composed of three layers: physical layer, network layer, and services layer. The physical layer (also called perception layer) constitutes of hardware, namely, sensors, actuators, RFID, etc., that collect data from individuals and their environment. The network layer (also called transport layer) facilitates the interchange and processing of data between the physical and services layer. Examples of technologies used here are: 4G/5G, Wi-Fi, Bluetooth, etc. The services layer (also called application layer) is responsible for processing the received information from the network layer and issuing instructions to be implemented by the equipment in the physical layer. Hereunder, I identify some of the common attacks occurring at the different IoT architecture layers:
Attacks at the Physical Layer
- Denial-of-service: Packets are sent along the routing path to the base station causing network disruption and battery exhaustion of the node.
- False node: Addition of a node to the network which sends malicious data and thereby affecting the availability of a system.
- Integrity: Injection of false sensor measurements and control inputs causing system disruption.
- Node capture: Information leakage caused by taking control over a node that could contain sensitive data such as encryption keys.
- Node outage: Node services are stopped making it rather difficult to extract information from them.
Attacks at the Network Layer
- Jamming: The wireless channel between the sensor nodes and the remote base station becomes obstructed through a signal with the same frequency.
- Selective Forwarding: A compromised node is introduced to drop and discard packets and forward selected packets.
- Sinkhole: The attacking node offers the best routing path for the devices in the network; and hence resulting in congestion (amongst other issues) in the IoT environment.
- Sybil: An attacker can manipulate false identities or misuse pseudo identities to compromise the efficiency of the IoT and even spread spam.
- Wormhole: Creation of information holes in the network by the announcement of false paths through which all the packets are routed.
Attacks at the Services Layer
- Buffer Overflow: The vulnerable features in the software lead to buffer overflow vulnerabilities (where a program while writing data to a buffer overwrites adjacent memory locations) and exploit it to launch attacks.
- Malicious Code: Services are attacked by via malware, worms, virus, adware, and spyware. These can degrade performance or collapse client devices.
- Phishing: This attack aims to capture an individual’s personal information where an attacker appears as legitimate user in the network and gains knowledge about the sensitive information regarding an individual.
In this article, I listed some of the more common security attacks affecting IoT-based systems. The reality, is that there can be more attacks (e.g., man-in-the-middle attacks), and the architecture can be further decomposed into additional layers (e.g., physical layer, data link layer, network layer, transport layer, and application layer).
Given that there is no dictionary, glossary, or list of some kind, that acts as a reference identifying the different IoT security and privacy attacks, from my side I will be working to put one myself. I believe that this will be somewhat useful for both researchers and industry, e.g., as a way to measure the strength of their product or as a tool to assess risks in an IoT-based system.
Stay tuned, as I will be soon having such a list available under the “Projects” section. In the meantime, as always if you want to learn more about IoT attacks, cybersecurity threats, risks, etc. get in touch; and I would be willing to help.