Abstract
While the IoT deployments multiply in a wide variety of verticals, the most IoT devices lack a built-in secure firmware update mechanism. Without such a mechanism, however, critical security vulnerabilities cannot be fixed, and the IoT devices can become a permanent liability, as demonstrated by recent large-scale attacks. In this paper, we survey open standards and open source libraries that provide useful building blocks for secure firmware updates for the constrained IoT devices-by which we mean low-power, microcontroller-based devices such as networked sensors/actuators with a small amount of memory, among other constraints. We design and implement a prototype that leverages these building blocks and assess the security properties of this prototype. We present experimental results including first experiments with SUIT, a new IETF standard for secure IoT firmware updates. We evaluate the performance of our implementation on a variety of commercial off-the-shelf constrained IoT devices. We conclude that it is possible to create a secure, standards-compliant firmware update solution that uses the state-of-the-art security for the IoT devices with less than 32 kB of RAM and 128 kB of flash memory.
Highlights
The increasing availability of low-cost hardware, new low-power radio technologies, and real-time operating systems specially designed for these embedded devices makes the Internet of Things (IoT) accessible to a broader range of developers
We focus in particular on firmware update mechanisms that can work on constrained IoT devices
We focus primarily on the fundamental embedded system characteristics and constraints imposed by standard-compliant firmware update onboard constrained IoT devices
Summary
The increasing availability of low-cost hardware, new low-power radio technologies, and real-time operating systems specially designed for these embedded devices makes the Internet of Things (IoT) accessible to a broader range of developers. (1) In Sections II-III, we survey available open standards and open source libraries, which provide useful generic building blocks that can be used to enable IoT firmware updates;. (2) In Section IV, we design and implement a prototype that leverages the building blocks we surveyed. This prototype enables secure firmware updates on a large variety of constrained IoT devices, while entirely avoiding proprietary mechanisms and code;. (5) In Section VII, we measure and compare the performance of several deployment configurations using our prototype, and provide the first experimental evaluation of the IETF SUIT specification;. As we have shown, it is possible today to create a generic, secure firmware update mechanism that complies with open standards, and we provide recommendations for future work
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have