IoT Security Challenges
It is impossible to realize the potential of IoT without addressing policy, security, and privacy concerns. It is everyone’s job to secure and defend the IoT devices that are most important to our systems, data, and privacy. Every product must have security and privacy as features.
What is the Internet of Things?
The Internet of things that are enabling advanced services by interconnecting physical and virtual things based on existing and evolving interoperable information and communication technologies. This network consists of a broad variety of devices, from everyday used items like smartphones, home appliances, and cars to more specialized devices used in manufacturing, healthcare, and other sectors. The IoT has the potential to revolutionize the way we live and work by enabling new levels of automation, efficiency, and convenience in a wide range of industries and applications.
What is IoT Security?
“In addition to networks and IT security, “IoT security deals with protecting connected devices, both real and virtual, for the Internet of things.”
Role of IoT security
Security is one of the most important considerations while designing an IoT solution.
During the exchange data is on the communication network and at the control center where it is collected for the intended use.
The IoT architecture will include measures to ensure the security of data at different modes like IoT security devices, communications, and also service providers/operations.
Service providers must consider the privacy of their consumers and develop privacy management interfaces that are integrated into both the endpoint of IoT applications and devices
Each device is known digitally by a fingerprint. This fingerprint is composed of addresses, serial numbers, and cryptographic identities that are unique to specific devices.
The communication between different clouds must be secured and the users must have trust in the destination cloud which will process their data. This can happen with the help of certificates directly between parties.
IoT Security Threats
Security risks are minimal in closed networks. But, as IoT Embedded Systems become IP-enabled and interconnected the attack surface becomes open to threats.
The IoT devices to IoT applications establish the need for trusted security credentials to secure connections with each other.
People hesitate to add security features like proactive monitoring as this could slow down the performance of IoT devices and applications.
The same also applies to embedded systems devices as CPU, battery life, and memory all take priority and design choices are often made that favor speed of rollout over security.
The intelligent software applications may have centralized servers that can be accessible to the internet, causing an increase in attacks.
The distributed computers may have wireless access through which they can interact with either the smart applications or the sensors behind them, leading to an increased vulnerability.
The IoT sensors themselves may have physical connections that can be compromised.
Threats also come from software libraries (inherited or custom), operating systems and packages, third-party communications, and application porting from the cell or Wi-Fi ecosystem.
IoT Security Challenges
IoT security challenges can broadly be depicted by the figure below showing security challenges in various aspects of IoT such as authentication, confidentiality, privacy, access control, etc.
The IoT is where the Internet meets the physical world. A major disruption of the traditional model for the new brings its own set of challenges. The following lists some security challenges and considerations in designing and building IoT devices:
- Typically small, inexpensive devices with little or no physical security.
- Though inexpensive, every device still has to compute something and also has some security features. Also, it should not add to latency in processing.
- Computing platforms, constrained in memory and compute resources, may not support complex and evolving security algorithms due to the following factors:
- Limited security computing capabilities
- Low CPU cycles vs. effective encryption
- Designed to operate autonomously in the field with no backup connectivity, if the primary connection is lost.
- Mostly installed before network availability which increases the overall onboarding time.
- Requires secure remote management, updating during and after onboarding.
- Scalability and management of billions of entities in the IoT ecosystem.
- Identification of endpoints in a scalable manner, Sometimes the location may be more important than the individual identifier (ID).
- Management of Multi-Party Networks.
- Crypto algorithms have a limited lifetime before they are broken
- Physical Protection:
- Mobile devices can be stolen
- Fixed devices can be moved
At the heart of the secure IoT framework is the authentication layer, which is used to provide and verify IoT devices’ identity information. When connected IoT devices (e.g. embedded sensors and actuators or endpoints) need access to the IoT infrastructure, the trust relationship is initiated based on the device’s identity. The way identity information is stored and represented can be significantly different for IoT devices. Note that in typical enterprise networks, the endpoints can be identified by a human credential (e.g., username and password, token, or biometrics).
The IoT devices must be marked by means that do not require human interaction. These identifiers include radio frequency identification (RFID), shared secret key, X.509 certificates, the device’s MAC address, or some type of immutable hardware-based root of trust. Establishing identity through X.509 certificates provides a strong authentication system.
However, in the IoT domain, many devices may not have enough memory to store a certificate, or may not even have the CPU power required to perform the cryptographic operations to validate the X.509 certificates (or any type of performed public-key operation.
Existing identity footprints such as 802.1AR and IEEE 802.1X authentication protocols can be leveraged for devices that can manage both CPU load and memory to store strong credentials.
However, the challenges of the new form factors as well as new modalities create the opportunity for further research to define credentials with smaller footprints and less computationally intensive cryptographic constructs and authentication protocols.
The second layer of this framework is an authorization which controls a device’s access throughout the network. This layer builds upon the core authentication layer by leveraging the identity information of a device. With authentication and authorization components, a trust relationship is established between IoT devices to exchange appropriate information. For example, a car may establish a trust alliance with another car from the same vendor.
That trust relationship, however, may only allow cars to exchange their safety capabilities. When a trusted alliance is established between the same car and its dealer’s network, the car may be allowed to share additional information such as its odometer reading, last maintenance record, etc. Fortunately, current policy mechanisms to both manage and control access to consumer and enterprise networks map extremely well to IoT needs.
The big challenge will be to build an architecture that can scale to handle billions of IoT devices with varying trust relationships in the fabric.
Identification: Identification of objects/things is a prerequisite for the safety and security of the IoT ecosystem.
Trust: Each organization must individually certify that every other participating organization is worthy of its trust.
Privacy is one of the key importance nowadays. People are concerned about their personal data that is on the internet.
Privacy can be divided into a few categories that have unique technical aspects:
- Communication Privacy
- Position privacy (Location privacy)
- Path privacy
- Identity privacy (Personal privacy)
- Personal data (use crypto for data protection)
An imperative aspect of IoT technology is its ability to connect the physical world to the digital world.
For some IoT applications, the user will be required to be able to control the amount of personal information exposed to third parties, for instance in maintaining privacy while exposing personal records in healthcare applications.
On the other end, other IoT applications may require that some of that information is available in case of necessity, for instance with IoT vehicular applications in case of traffic accidents.
IoT Security Threats and Risks
Reducing the Risks
The four guidelines that embedded software teams should follow to help protect critical IoT systems against failure and malicious attacks are:
- Address security early: Threat modeling
- Reduce security risk
- Build security
- Secure analytics: Visibility and control
1) Address Security Early: Threat Modeling
Securing an IoT system starts with understanding the potential threats. Threat modeling involves thinking about the system or device that needs protection and identifying how it can be compromised, either by remote attack or by a malicious insider. Threat modeling, therefore, begins in the software architecture stage and continues through the design phase.
Once the risks are understood, proactive measures to reduce the risk. When conducting this activity, it is important to remember that threats are not vulnerabilities. Vulnerabilities can be fixed; threats exist in perpetuity and are the attacker’s goal. Considering potential use and abuse cases will help you to determine threats and attack vectors on which to base a threat model. These include:
- Data: Consider not only the data on the device but also the data in connected systems that the device can access.
- Input Sources: Study the various input sources that could be used to attack a device. This may include wired and wireless networking, Bluetooth, GPS signals, cellular voice/data, remote controls, etc.
- Environment: Look at how to protect data. Should there be the physical presence of an adversary? Or should the device be used outside of normal expectations?
2) Reducing Security Risk
The entire collection of entry points into a system or device defines its attack surface. The larger the attack surface, the greater the potential security risk. Analyzing the attack surface allows engineers to gauge risk and uncover potential avenues of attack.
The quantity of attack vectors or entry points into an embedded system is automatically constrained by reducing the attack surface.
The secure design of IoT embedded systems relies heavily on several crucial elements being applied at the development stage:
- Enforce Boundaries: Isolate code to enforce strict boundaries between the operating system and the process.
- Protect Data: Encrypt data in transit. Protect data at rest using the underlying file system encryption features and employ separate keys.
- Enforce Least Privilege: least privilege by making sure that each application and user of the system uses the fewest possible privileges to carry out their tasks.
- Authenticate: Make authentication strong and manage it centrally to ensure inputs are from trusted sources.
3) Build Security
Build security at the development stage by finding and fixing code vulnerabilities with static analysis and code review.
4) Secure Analytics: Visibility and Control
This secure layer of analytics defines the services through which all elements (endpoints and network infrastructure, including data centers) can participate to provide telemetry to gain visibility and ultimately control the IoT ecosystem.
By implementing these IoT security solutions, you can help ensure the safety and security of your IoT devices and networks.