Amenazas en las arquitecturas IoT: Dispositivos - ITCL

Siguiendo la línea de anteriores artículos del Blog de Expertos de ITCL, en el que pudimos analizar la importancia de la ciberseguridad para el IoT o cómo es la arquitectura de una red IoT, os proponemos en esta ocasión, un análisis de algunas de las amenazas o vulnerabilidades que se presentan cuando la superficie de ataque es el propio dispositivo IoT. En futuros artículos trataremos las amenazas en otras superficies de ataque.

Los dispositivos pueden ser el punto de entrada para el ataque a una red IoT. Los elementos de un dispositivo que pueden sufrir un ataque son varios, desde las interfaces físicas hasta su memoria. Es imprescindible conocer sus vulnerabilidades para evitar que los atacantes se aprovechen de ellas.

Algunas de las amenazas en los dispositivos IoT son las siguientes:

Ataques a las entradas

Los dispositivos IoT disponen de elementos físicos que van a actuar como entradas para la electrónica. Estos elementos pueden tener distintos formatos, por ejemplo, un simple interruptor o botón, o algo más complejo como un sensor que mida algún parámetro del entorno (temperatura, humedad, etc.).

Estas entradas pueden estar diseñadas para que la electrónica obtenga algún dato necesario para su funcionamiento, o para que un usuario autorizado habilite el modo de configuración del dispositivo o ajuste algún parámetro, como un umbral o un identificador.

Un atacante podría aprovecharse de las entradas que sean fácilmente accesibles para alterar la configuración del dispositivo o incluso interrumpir su funcionamiento. El ataque dependerá del tipo de entrada, pudiendo ser algo tan sencillo como alterar la posición de un interruptor o manipular/dañar un sensor.

Ataques a los interfaces de comunicación

Es muy habitual encontrar interfaces de comunicación en las electrónicas. Algunos de los más frecuentes son UART, SPI o I2C, utilizados para la comunicación interna entre los componentes de la electrónica, o también con elementos externos a ella. Además, suelen ser fácilmente reconocibles los interfaces utilizados para la programación y depuración del dispositivo, como son JTAG o SWD.

Estos interfaces pueden ser espiados por un tercero utilizando herramientas específicas, como osciloscopios o analizadores lógicos. Mediante este procedimiento sería posible interceptar la información que circula por el bus, que podría ser sensible o crítica, como, por ejemplo, credenciales, certificados o endpoints, entre otros.

En cuanto a los interfaces de programación, también relacionados con los ataques de memoria que se comentan a continuación, podrían ocasionar un ataque de downgrade. Mediante este ataque se pretende instalar una versión anterior y con vulnerabilidades del firmware, para que éstas puedan ser explotadas.

Ataques a la memoria

En la memoria del dispositivo se almacena información muy interesante para un atacante. Alguien puede intentar descargar el contenido de la memoria para obtener el firmware, así como otra información sensible, como cuentas de administración, claves o detalles del funcionamiento del dispositivo. Además, aunque la información esté cifrada, si se tiene acceso a la memoria, todavía puede ser posible obtenerla en texto plano. Esta información, que puede ser confidencial o estar protegida por propiedad intelectual, podría caer en manos de un atacante.

Es posible realizar ataques más avanzados cuando existe una protección deficiente de la memoria del dispositivo. Estos ataques consisten en aprovechar las debilidades de estas protecciones, como cuando algunos registros siguen siendo accesibles o la protección no se activa de inmediato sino tras algunos ciclos de reloj. Mediante técnicas de fault injection es posible saltarse las instrucciones de activación de la protección de memoria.

Ataques al bootloader

El bootloader es un pequeño código que puede encontrarse en algunos dispositivos, el cual es lo primero que se ejecuta tras el arranque y que cuando finaliza su ejecución cede el control al firmware principal. Una de sus funcionalidades puede ser la de facilitar la actualización del firmware a través de algún protocolo de comunicaciones.

Si un dispositivo IoT permite la actualización de su firmware mediante el bootloader, y además el procedimiento es conocido y no implementa mecanismos de seguridad que permitan verificar el origen y la integridad de las nuevas actualizaciones, entonces un atacante podría cargar un firmware malicioso o provocar el malfuncionamiento del dispositivo.

 

En definitiva, las anteriores son sólo algunas de las amenazas a las que están expuestos los dispositivos que forman parte de una arquitectura IoT. Es más común de lo deseado que los dispositivos carezcan de medidas de seguridad para contrarrestar las amenazas. Si un atacante se aprovecha de alguna de estas amenazas, podría afectar al funcionamiento del dispositivo atacado, al del resto de dispositivos de la red e incluso al del sistema IoT completo.

 

Artículos relacionados

ITCL Centro Tecnológico

Importancia de la ciberseguridad IOT

ITCL Centro Tecnológico

Conseguir una arquitectura IOT segura

IRC eficiencia energética en la industria

5 Ciberamenazas a las que se enfrentan las empresas