Top 10 IoT vulnerabilities
Everyone knows security is a big issue for the Internet of Things, but what specifically should we be afraid of?
- Weak, guessable, or hardcoded passwords
“Use of easily brute-forced, publicly available, or unchangeable credentials, including backdoors in firmware or client software that grants unauthorized access to deployed systems.
Frankly, this issue is so obvious that I can hardly believe it’s still something we have to think about. I don’t care how cheap or innocuous an IoT device or application may be, there’s never an excuse for this kind of laziness.
- Insecure network
“Unneeded or insecure network services running on the device itself, especially those exposed to the internet, that compromise the confidentiality, integrity/authenticity, or availability of information or allow unauthorized remote control.”
This makes sense, but it’s a bit more of a gray area, as it’s not always clear whether those network services are “unneeded or insecure.”
- Insecure ecosystem interfaces
“Insecure web, backend API, cloud, or mobile interfaces in the ecosystem outside of the device that allows compromise of the device or its related components. Common issues include a lack of authentication/authorization, lacking or weak encryption, and a lack of input and output filtering.”
Again, it’s not always obvious whether the interfaces are actually allowing compromise, but authentication, encryption, and filtering are always good ideas.
- Lack of secure update mechanisms
“Lack of ability to securely update the device. This includes lack of firmware validation on a device, lack of secure delivery (un-encrypted in transit), lack of anti-rollback mechanisms, and lack of notifications of security changes due to updates.”
This is an ongoing issue for IoT applications, as many vendors and enterprises don’t bother to think through the future of their devices and implementations. In addition, it’s not always a technology issue. In some cases, the physical location of IoT devices makes updating—and repair/replacement—a significant annoying unnecessary task.
- Use of insecure or outdated components
“Use of deprecated or insecure software components/libraries that could allow the device to be compromised. This includes insecure customization of operating system platforms and the use of third-party software or hardware components from a compromised supply chain.”
Come on, folks, there’s no excuse for this kind of problem. Stop being cheap and do things right.
- Insufficient privacy protection
“User’s personal information stored on the device or in the ecosystem that is used insecurely, improperly, or without permission.”
Obviously, personal information needs to be dealt with appropriately. But the key here is “permission.” Almost nothing you do with someone’s personal info is OK unless you have their permission.
- Insecure data transfer and storage
“Lack of encryption or access control of sensitive data anywhere within the ecosystem, including at rest, in transit, or during processing.”
While many IoT vendors pay attention to secure storage, making sure data remains secure during transfer is too often ignored.
- Lack of device management
“Lack of security support on devices deployed in production, including asset management, update management, secure decommissioning, systems monitoring, and response capabilities.”
IoT devices may be small, inexpensive, and deployed in large numbers, but that doesn’t mean you don’t have to manage them. In fact, it makes managing them more important than ever. Even if that’s not always easy, cheap, or convenient.
- Insecure default settings
“Devices or systems shipped with insecure default settings or lack the ability to make the system more secure by restricting operators from modifying configurations.”
Sheesh. Another problem that shouldn’t be happening in 2019. Everyone knows this is an issue, and they know how to avoid it. So, let’s just make it happen… every time.
- Lack of physical hardening
“Lack of physical hardening measures, allowing potential attackers to gain sensitive information that can help in a future remote attack or take local control of the device.”
The IoT is made up of “things.” This shouldn’t be a surprise; it’s right there in the name. It’s important to remember the physical nature of the IoT and take steps to secure the actual devices involved.