As devices and technologies connecting us to the world evolve, cybercriminals are evolving their methods to attack and compromise critical systems across the Internet of Things (IoT). Building IoT products that can withstand the test of time against cyber threats requires security controls built into your software development life cycle and supply chains, consistently. Any critical security flaw in the overall supply chain can lead to a breach. Securing IoT requires diligence in secure development and secure hardware design throughout the product life cycle while performing resilience testing and analysis of system components to detect issues that may manifest at runtime, prior to production.
IoT is challenging from a security perspective because of its diverse supply chain and large attack surface. Understanding an IoT ecosystem and all the various interfaces requires the comprehension of risk and how the presented interfaces may affect the overall system if compromised. As vulnerabilities within different layers of the stack may undermine other security controls, testing IoT for security often requires specialized domain knowledge of many technologies. For example, in most cases if a Trusted Platform Module (TPM) is compromised, it is a game-over vulnerability for a product or device regardless of how secure your code is.
It's important for security teams to simplify the implementation of architecturally complex security tasks through a tightly integrated technology stack in order to help development teams establish a secure foundation before addressing other security flaws within their design. Performing architectural analysis and threat modeling of hardware, software, and infrastructure early in development to determine where security controls are weak and could introduce security bugs or design flaws is critical for keeping security debt low as the product is built.
Performing fuzzing and automated testing as components are developed and assembled helps identify issues quickly and identifies potential edge cases that could be more difficult to detect during peer reviews. Building security coverage into your development practices early is important for keeping security top of mind and not falling behind in later cycles or releases.
Another challenging aspect of IoT is the broad and deep skill set required for assessments. Skills required include an understanding of hardware internals, electrical engineering, software development expertise, and custom low-level networking protocols, but are not limited to just these. Effective assessments should successfully identify weaknesses in an entire IoT architecture, including software, API, web, and mobile components. IoT reviews should include source code review, software and hardware testing, forensic analysis, and reverse engineering.
Organizations also need to have a deep understanding of how their systems behave when they encounter failures. Chaos and resilience testing ensure that self-healing capabilities are built into software and infrastructure so that attacks do not have a cascading effect against your system. If a safety-critical service fails in a way that causes contagion to other components, often this can be identified only within a fully deployed end-to-end stack.
It is the inevitable truth that organizations will encounter many challenges in their quest to secure IoT. There is no simple formula or answer; however, there are several key measures that organizations can implement to protect against the increasingly sophisticated cyber threats we face today, such as taking the time to develop a deep understanding and awareness of the security features of the IoT technology they regularly use. Performing consistent and periodic reviews of the software and infrastructure architecture, which houses critical data, is also essential to IoT security.
- 7 Steps to IoT Security in 2020
- How the Rise of IoT Is Changing the CISO Role
- Over 80% of Medical Imaging Devices Run on Outdated Operating Systems
- Report: Shadow IoT Emerging as New Enterprise Security Problem