El problema de las actualizaciones en las redes IoT
A study on third party updates in IoT networks
Ver/ Abrir
Identificadores
URI: https://hdl.handle.net/10902/30795Registro completo
Mostrar el registro completo DCAutoría
Bernáldez Pereda, Ángel LuisFecha
2023-09Derechos
© Ángel Luis Bernáldez Pereda
Disponible después de
2028-09-08
Palabras clave
Internet-of-things
Matter
Connectivity standard alliance
Firmware
Software supply chain
Modular updates
Over-the-air software updates
Resumen/Abstract
Matter is a standard of interconnection and management of IoT devices created the Connectivity Standard Alliance (CSA) with the goal of improving the interoperability between IoT devices, allowing to control devices from different manufacturers sharing the same application in a Smart Home environment. In addition, Matter offers solutions for the management and update of these devices in a secure way, controlling which entities can publish updates for different devices and certifying the origin and integrity of published firmware updates.
A first problem that we will address in this thesis is that the Matter system only allows to publish firmware to the original manufacturer of each device. If a manufacturer stops maintaining a product for whatever reason, it will be totally neglected, since the current standard does not allow a third party to take over the updates. This can be a major problem if vulnerabilities are found in the device, leaving vulnerable products unattended. A second problem we will address is the lack of modularity in the secure software updates because the capability of being able to distribute modular software updates can improve the performance and agility to deal with security vulnerabilities in modules issued by different parties. A functionality that is currently missing in Matter.
In this thesis, we extend the proposed procedures in Matter to distribute software updates to address these problems. Firstly, we design a mechanism by which the manufacturer of a device can designate another manufacturer, giving it permissions to release firmware updates for a given device type and instructing the device to accept updates from that manufacturer. Secondly, we design a mechanism to allow module developers to publish module images and allow authorized parties, e.g., a manufacturer or a party operating a Matter system, to accept module updates from the selected module developers in contrast of a traditional and costly update, for those devices that use or require the updated module.
The designs are tailored to the Matter system, and thus, it is easily integrable with minimum performance impact. The behaviour of both proposed solutions has been tested by a proof of concept that simulates the environment for the update system implemented in Matter and demonstrates that these solutions are feasible through the modifications proposed in this document. Our conclusion is that the inclusion of these solutions in Matter standard will benefit with greater robustness and performance. The implementation presents an improved way to deal with security vulnerabilities in out-of-life devices and offers greater flexibility by allowing modular updates, which translates into better device security and Quality-of-Service for end users.
Matter es un standard de interconexión y gestión de dispositivos IoT, creado por la asociación de fabricantes llamada Connectivity Standard Alliance (CSA) con el objetivo de mejorar la interoperabilidad entre dispositivos IoT, permitiendo controlar los dispositivos de distintos fabricantes desde una misma aplicación en un entorno Smart Home. Además, Matter ofrece soluciones para la gestión y actualización de estos dispositivos de forma segura, controlando qué entidades pueden publicar actualizaciones para los distintos dispositivos y certificando el origen y la integridad de las actualizaciones de firmware publicadas
El primer problema que abordaremos en esta tesis es que el sistema Matter solo permite publicar firmware al fabricante de cada dispositivo. Si un fabricante detiene el mantenimiento de un producto, por cualquier razón, este quedara totalmente abandonado, ya que el estándar actual no permite a un tercero hacerse cargo de las actualizaciones. Esto podría ser un problema mayor si se descubren vulnerabilidades en el dispositivo, dejando productos vulnerables desatendidos. Un segundo problema que abordaremos será la falta de modularidad en las actualizaciones de software, debido a que la capacidad de distribuir actualizaciones de software modulares puede mejorar el rendimiento y la agilidad para hacer frente a las vulnerabilidades de seguridad en los módulos emitidos por diferentes partes. Una funcionalidad que actualmente no existe en Matter.
En esta tesis, extenderemos los procedimientos de Matter en la distribución de actualizaciones de software para abordar estos problemas. Primero, diseñaremos un mecanismo mediante el cual el fabricante de un dispositivo pueda designar a otro fabricante como proveedor de actualizaciones, permitiéndole publicar actualizaciones de firmware para un determinado tipo de dispositivo, e indicando al dispositivo que ha de aceptar las actualizaciones emitidas por ese fabricante. Segundo, diseñaremos un mecanismo por el cual los desarrolladores de módulos puedan publicar imágenes del módulo, permitiendo que las partes autorizadas, por ejemplo, un fabricante o un operador de un sistema Matter, acepten actualizaciones de módulos que provengan de los desarrolladores de módulos seleccionados, para aquellos dispositivos que usan o requieren el módulo actualizado.
Los diseños realizados se adaptan al sistema Matter y, por lo tanto, es fácilmente integrable con un impacto mínimo en el rendimiento. El comportamiento de las soluciones propuestas ha sido comprobado mediante pruebas de concepto, que simulan el entorno del sistema de actualizaciones implementado en Matter, demostrando que estas soluciones son factibles mediante las modificaciones propuestas en este documento. La inclusión de las soluciones propuestas en el estándar Matter, ofrecerían mayor robustez y una mejor forma de tratar las vulnerabilidades de seguridad en dispositivos descontinuados, dando la posibilidad de una mayor flexibilidad, al permitir actualizaciones modulares. Esto se traduce en, una mejor seguridad de los dispositivos y una mejor calidad de servicio para los usuarios finales.