IoT representan el 30% de todos los puntos finales conectados a la red, lo que introduce nuevos ataques y vulnerabilidades en la cadena de suministro que convierten a muchas empresas en objetivos principales de los ciberdelincuentes. Para hacer frente a esta creciente superficie de amenazas, toda organización que despliegue dispositivos IoT debe considerar la cuestión de las actualizaciones de firmware para sus dispositivos IoT .
Las actualizaciones de firmware son esenciales para corregir errores de software , parchear vulnerabilidades o añadir nuevas funciones de seguridad, pero igual de importante es la práctica de garantizar que estas actualizaciones sean seguras y fiables.
Actualizaciones de firmware inalámbricas
Aunque el firmware de los dispositivos puede actualizarse manualmente, la enorme distribución de dispositivos compatibles con IoT, como coches conectados, marcapasos e incluso aviones, hace que los procesos de actualización manual sean inviables y poco prácticos.
Ahí es donde las actualizaciones por aire (OTA) desempeñan un papel cada vez más importante. Las actualizaciones de firmware OTA consisten en actualizar a distancia el código de los dispositivos IoT conectados e integrados. La actualización se despliega de forma inalámbrica -por el aire- en el dispositivo, sin necesidad de interferir con la base hardware. Las actualizaciones OTA suelen enviarse a través de datos celulares (4G o 5G) o de conexiones a Internet.
La mayor ventaja de las actualizaciones de firmware OTA IoT es que los fabricantes pueden añadir continuamente nuevas funciones, corregir errores de seguridad y mejorar el comportamiento del producto, aunque el dispositivo esté desplegado en entornos dispersos. Además, las actualizaciones OTA son una solución rentable, porque se puede gestionar sin problemas el firmware de cientos de dispositivos conectados desde una interfaz centralizada.
Vulnerabilidades del firmware
A pesar de la importancia de disponer de firmware actualizado para garantizar el funcionamiento seguro y fiable de su flota de dispositivos conectados a IoT , el firmware es una superficie de ataque comúnmente desprotegida que los adversarios aprovechan para introducirse en las redes, comprometer los datos o incluso hacerse con el control de los dispositivos para causar daños o interrupciones. En resumen, un firmware inseguro equivale a un dispositivo IoT inseguro.
Los ciberdelincuentes están ansiosos por explotar los puntos débiles y las lagunas de la seguridad de IoT , no siempre para atacar a los propios dispositivos, sino para lanzar otras acciones maliciosas, como ataques DDoS, distribución de malware o violación y compromiso de datos.
OWASP Top 10 IoT destaca que la falta de un mecanismo seguro de actualización del firmware es una de las principales vulnerabilidades que afectan a la seguridad de IoT :
"Falta de capacidad para actualizar el dispositivo de forma segura. Esto incluye la falta de validación del firmware en el dispositivo, la falta de entrega segura (sin cifrar en tránsito), la falta de mecanismos anti-retroceso y la falta de notificaciones de cambios de seguridad debidos a actualizaciones."
Para mitigar esta vulnerabilidad, es esencial que las empresas se aseguren de que el firmware IoT puede actualizarse mediante actualizaciones OTA de forma fiable, segura y periódica. Sin embargo, existen ciertos factores clave que afectan a la seguridad de las actualizaciones de firmware de IoT , entre ellos:
Firma comprometida: el acceso no autorizado a las claves de firma de código o a los mecanismos de firma de firmware puede permitir a los agresores suplantar la confianza y enviar actualizaciones maliciosas a dispositivos que parecen de confianza. Es esencial reforzar las defensas en torno a las claves de firma de código y asegurarse de que las firmas de firmware se verifican antes de permitir que el código se ejecute en el dispositivo.
Codificación insegura: Los desbordamientos de búfer pueden producirse debido a una programación insegura del dispositivo. Los delincuentes buscan estos fallos de codificación para provocar un comportamiento errático de la aplicación o fallos que pueden conducir a una brecha de seguridad. Los desbordamientos de búfer pueden permitir a los delincuentes acceder remotamente a los dispositivos y pueden convertirse en armas para crear ataques DDoS o de inyección de malware.
Cadena de suministro software insegura: El desarrollo de dispositivos IoT depende en gran medida de las cadenas de suministro software y del uso extensivo de componentes open-source . La falta de procedimientos para asegurar la cadena de suministro da lugar al empleo de componentes open-source inseguros, con vulnerabilidades incorporadas, que los atacantes están ansiosos por explotar. El último ataque a SolarWinds es un buen ejemplo de lo que puede salir mal con cadenas de suministro software inseguras.
Servicios de prueba olvidados en dispositivos de producción: Durante el desarrollo y las pruebas de los dispositivos IoT , los desarrolladores con servicios de depuración y credenciales no deben migrar al dispositivo de producción final, ya que proporcionan un acceso potencialmente fácil a los adversarios.
Consecuencias de las actualizaciones de firmware inseguras
Un firmware inseguro en IoT puede tener consecuencias nefastas para los consumidores de estos dispositivos conectados. Aún más problemático es el hecho de que este tipo de ataques maliciosos no requieren acceso físico, pueden ser empleados a distancia por un atacante sin previo aviso.
He aquí algunos ejemplos de cómo las actualizaciones inseguras dieron lugar a una vulnerabilidad de firmware expuesta o a un ataque de firmware:
- Cerraduras inteligentes: La actualización de firmware OTA programada de una cerradura inteligente contenía una versión corrupta que desconectó las cerraduras inteligentes actualizadas. Estos dispositivos de cerradura se utilizaban en el sector de la hostelería y, como resultado, muchos clientes no pudieron entrar en sus propiedades de alquiler. Debido a que las cerraduras quedaron fuera de línea por la actualización corrupta, tuvieron que ser actualizadas manualmente por el proveedor.
- Marcapasos: Cuando la Administración de Alimentos y Medicamentos de Estados Unidos (FDA) recomendó una actualización del firmware para mitigar una vulnerabilidad de acceso remoto en determinados marcapasos, también señaló en su aviso que existía un riesgo menor de que la actualización del firmware pudiera causar un fallo del dispositivo. La decisión de actualizar el firmware tuvo que sopesarse con la posibilidad de un fallo del dispositivo que hubiera requerido una intervención quirúrgica para sustituirlo.
- Coches conectados: Investigadores de la empresa china Tencent revelaron que podían piratear un Tesla Model S a través de Wi-Fi y activar a distancia el sistema de frenado. Tesla respondió implementando una función de seguridad fundamental -la firma de código- que exigía que cualquier nuevo firmware escrito en componentes del bus CAN estuviera firmado digitalmente para hacer frente al riesgo.
- Equipo de red: Un desarrollador filtró accidentalmente las claves privadas utilizadas para firmar D-Link software en el firmware open-source publicado por la empresa. Se desconoce si las claves fueron utilizadas por un tercero malintencionado, pero el incidente dio lugar a investigaciones y multas por parte de terceros.
Cómo proteger las actualizaciones de firmware de IoT
Hay muchas buenas prácticas que puede seguir para asegurar el firmware de los dispositivos IoT y para minimizar el impacto de una actualización que no salga como estaba previsto. Las empresas deben planificar ambos escenarios.
Para minimizar el impacto de una actualización de firmware corrupta, debe eliminar el almacenamiento de información sensible como credenciales y tokens API en los dispositivos IoT . En su lugar, deberías subir esta información sensible a la nube, donde se pueden gestionar fácilmente sin las limitaciones de los dispositivos IoT de bajo consumo.
Además, los dispositivos IoT deben estar conectados sólo a un posible vector de ataque: a través de datos celulares o a través de Internet. Debe limitar las posibilidades que tienen los atacantes de atacar el dispositivo.
En cuanto al proceso de actualización del firmware, hay que destacar que las actualizaciones periódicas minimizan el número de vectores de ataque en los sistemas operativos, el firmware y las aplicaciones. Es esencial comprobar el origen y la integridad de cada actualización y utilizar únicamente aplicaciones legítimas de proveedores legítimos.
Algunos mecanismos de actualización disponibles carecen de garantías de integridad, lo que los hace vulnerables a ataques MITM y de modificación. El dispositivo IoT también puede utilizar métodos de autenticación de máquina a máquina para autenticar un servidor de actualización antes de descargar una nueva imagen de firmware, lo que añade una capa de protección. De este modo, se garantiza que las actualizaciones del dispositivo procedan únicamente del OEM del dispositivo o de otra fuente de confianza.
La implementación de la identidad única y la firma de código segura con actualizaciones OTA garantiza una actualización sin cambios desde la fuente verificada. Al utilizar el arranque seguro, la validación hash criptográficamente segura garantiza la integridad comprobando el parche antes de almacenarlo en el dispositivo.
Introducción a la seguridad del firmware
Descubra cómo Keyfactor Control permite una seguridad altamente escalable, ágil y rentable, desde la incorporación de identidades únicas en cada dispositivo en el momento del diseño hasta la seguridad del firmware y las actualizaciones de identidad durante todo el ciclo de vida del dispositivo.