Compartir vía


Arquitectura de seguridad para soluciones de IoT

Al diseñar y diseñar una solución de IoT, es importante comprender las posibles amenazas e incluir las defensas adecuadas. Comprender cómo un atacante podría poner en peligro un sistema le ayuda a asegurarse de que las mitigaciones adecuadas están en vigor desde el principio.

Modelado de amenazas

Microsoft recomienda usar un proceso de modelado de amenazas como parte del diseño de la solución de IoT. Si no está familiarizado con el modelado de amenazas y el ciclo de vida de desarrollo seguro, consulte:

Seguridad de IoT

Resulta útil dividir la arquitectura de IoT en varias zonas como parte del ejercicio de modelado de amenazas:

  • Dispositivo
  • Puerta de enlace de campo
  • Puerta de enlace en la nube
  • Service

A menudo, cada una de las zonas tiene sus propios datos y requisitos de autenticación y autorización. También puede usar zonas para aislar los daños y restringir el impacto de las zonas de confianza baja en zonas de confianza superior.

Cada zona está separada por un límite de confianza, que se muestra como una línea roja punteada en el siguiente diagrama. Representa una transición de datos de un origen a otro. Durante esta transición, los datos podrían estar sujetos a las siguientes amenazas:

  • Suplantación de identidad
  • Alteración
  • Rechazo
  • Divulgación de información
  • Denegación de servicio
  • Elevación de privilegios

Para más información, consulte Modelo STRIDE.

Diagrama que muestra las zonas y los límites de confianza en una arquitectura de solución de IoT típica.

Puede usar STRIDE para modelar las amenazas de cada componente dentro de cada zona. En las secciones siguientes se desarrollan tanto los componentes como problemas de seguridad específicos y las soluciones que se deben aplicar.

En el resto de este artículo se describen las amenazas y mitigaciones de estas zonas y componentes con más detalle.

Zona de dispositivo

El entorno del dispositivo es el espacio alrededor del dispositivo en el que es factible el acceso físico y el acceso digital de red local al dispositivo. Se supone que una red local es distinta y está aislada de la red pública de Internet, pero potencialmente conectada a ella. El entorno del dispositivo incluye cualquier tecnología de radio inalámbrica de corto alcance que permita la comunicación punto a punto de los dispositivos. No incluye ninguna tecnología de virtualización de red que cree la ilusión de esa red local. No incluye las redes de operadores públicos que requieren que dos dispositivos cualesquiera se comuniquen a través del espacio de la red pública si fueran a entrar en una relación de comunicación de punto a punto.

Zona de puerta de enlace de campo

Una puerta de enlace de campo es un dispositivo, aparato o un software de equipo servidor de uso general que actúa como habilitador de comunicaciones y, potencialmente, como sistema de control de dispositivos y centro de procesamiento de datos de dispositivos. La zona de puerta de enlace de campo incluye la propia puerta de enlace de campo y todos los dispositivos conectados a ella. Las puertas de enlace de campo actúan fuera de las instalaciones dedicadas al procesamiento de datos, suelen estar enlazadas a una ubicación, pueden estar sujetas a intrusiones físicas y tienen una redundancia operativa limitada. Una puerta de enlace de campo suele ser una cosa que un atacante podría sabotear físicamente si obtuvo acceso físico.

Una puerta de enlace de campo difiere de un enrutador de tráfico en el que tiene un rol activo en la administración del flujo de acceso e información. La puerta de enlace de campo tiene dos áreas expuestas claramente diferenciadas. Una se enfrenta a los dispositivos conectados a él y representa el interior de la zona. El otro se enfrenta a todas las partes externas y es el borde de la zona.

Zona de puerta de enlace en la nube

Una puerta de enlace en la nube es un sistema que permite la comunicación remota desde y hacia dispositivos o puertas de enlace de campo implementadas en varios sitios. La puerta de enlace en la nube normalmente habilita un sistema de análisis de datos y control basado en la nube o una federación de dichos sistemas. En algunos casos, una puerta de enlace en la nube puede facilitar inmediatamente el acceso a dispositivos de uso especial desde terminales como tabletas o teléfonos. En la puerta de enlace en la nube, las medidas operativas también impiden el acceso físico dirigido y no necesariamente se exponen a una infraestructura de nube pública.

Una puerta de enlace en la nube se puede asignar a una superposición de virtualización de red para aislar la puerta de enlace en la nube y todos sus dispositivos conectados o puertas de enlace de campo desde cualquier otro tráfico de red. La puerta de enlace en la nube no es un sistema de control de dispositivos ni unas instalaciones de almacenamiento o procesamiento de los datos de los dispositivos; dichas instalaciones hacen de interfaz con la puerta de enlace en la nube. La zona de la puerta de enlace en la nube incluye la propia puerta de enlace en la nube, junto con todas las puertas de enlace de campo y los dispositivos conectados directa o indirectamente a ella. El borde de la zona es un área expuesta distinta a través de la que se comunican todas las partes externas.

Zona de servicios

Un servicio en este contexto es cualquier componente de software o módulo que interactúa con dispositivos a través de un campo o puerta de enlace en la nube. Un servicio puede recopilar datos de los dispositivos y el comando y controlar esos dispositivos. Un servicio es un mediador que actúa bajo su identidad ante puertas de enlace y otros subsistemas para:

  • Almacenar y analizar datos
  • Emitir comandos a dispositivos en función de la información o las programaciones de datos
  • Exponer la información y las funcionalidades de control a los usuarios finales autorizados

Dispositivos IoT

Los dispositivos IoT suelen ser dispositivos de uso especial que van desde simples sensores de temperatura hasta complejas líneas de producción de fábricas con miles de componentes en su interior. Entre las funcionalidades de dispositivo IoT de ejemplo se incluyen:

  • Medición y generación de informes de condiciones ambientales
  • Válvulas de giro
  • Control de servos
  • Alarmas de sonido
  • Encendido o apagado de las luces

La finalidad de estos dispositivos dicta su diseño técnico y el presupuesto disponible para su producción y funcionamiento programado durante su vida útil. La combinación de estos factores restringe el presupuesto energético operativo disponible, la superficie física y las funcionalidades de almacenamiento, proceso y seguridad disponibles.

Las cosas que pueden ir mal con un dispositivo IoT automatizado o controlado a distancia incluyen:

  • Defectos físicos
  • Defectos de lógica de control
  • Intrusión y manipulación deliberadas y no autorizadas.

Las consecuencias de estos fallos pueden ser graves, como la destrucción de lotes de producción, el incendio de edificios o lesiones y muertes. Por lo tanto, hay un listón de seguridad muy alto para los dispositivos que hacen que las cosas se muevan o que informan de datos de sensores que dan lugar a órdenes que hacen que las cosas se muevan.

Control de dispositivos e interacciones con datos de dispositivos

Los dispositivos conectados de uso especial tienen un importante número de posibles áreas de superficie de interacción y patrones de interacción, y todos ellos deben considerarse a la hora de proporcionar un marco para proteger el acceso digital a los dispositivos. El acceso digital hace referencia a las operaciones que se realizan a través del software y el hardware en lugar de a través del acceso físico directo al dispositivo. Por ejemplo, el acceso físico podría controlarse colocando el dispositivo en una sala con una cerradura en la puerta. Aunque el acceso físico no se puede denegar mediante software y hardware, se pueden tomar medidas para evitar que el acceso físico provoque interferencias en el sistema.

Al explorar patrones de interacción, examine el control del dispositivo y los datos del dispositivo con el mismo nivel de atención. El control de dispositivo hace referencia a cualquier información proporcionada a un dispositivo con la intención de modificar su comportamiento. Los datos del dispositivo hacen referencia a toda la información que emite un dispositivo a cualquier otra parte sobre su estado y el estado que se percibe de su entorno.

Modelado de riesgos para la arquitectura de referencia de Azure IoT

En esta sección se usa la arquitectura de referencia de Azure IoT para demostrar cómo pensar en el modelado de amenazas para IoT y cómo abordar las amenazas identificadas:

Diagrama que muestra la arquitectura de referencia de Azure IoT.

En el diagrama siguiente se proporciona una vista simplificada de la arquitectura de referencia mediante un modelo de diagrama de flujo de datos:

Diagrama de flujo de datos derivado de la arquitectura de referencia de Azure IoT.

La arquitectura separa las funcionalidades de dispositivo y puerta de enlace de campo. Este enfoque le permite usar dispositivos de puerta de enlace de campo más seguros. Los dispositivos de puerta de enlace de campo pueden comunicarse con la puerta de enlace en la nube mediante protocolos seguros, lo que normalmente requiere una potencia de procesamiento mayor de la que un dispositivo sencillo, como un termostato, podría proporcionar por sí solo. En la Zona de servicios de Azure del diagrama, el servicio Azure IoT Hub es la puerta de enlace en la nube.

En función de la arquitectura descrita anteriormente, en las secciones siguientes se muestran algunos ejemplos de modelado de amenazas. Los ejemplos se centran en los elementos principales de un modelo de amenazas:

  • Procesos
  • Comunicación
  • Storage

Procesos

Estos son algunos ejemplos de amenazas en la categoría de procesos. Las amenazas se clasifican en función del modelo STRIDE:

Suplantación de identidad: un atacante podría extraer claves criptográficas de un dispositivo, ya sea en el nivel de software o hardware. A continuación, el atacante usa estas claves para acceder al sistema desde un dispositivo físico o virtual diferente usando la identidad del dispositivo original.

Denegación de servicio: un dispositivo se puede representar como incapaz de funcionar o comunicarse al interferir con frecuencias de radio o cortar hilos. Por ejemplo, una cámara de vigilancia cuya alimentación o conexión de red se ha interrumpido intencionadamente no puede notificar datos.

Manipulación: un atacante podría reemplazar parcialmente o totalmente el software en el dispositivo. Si las claves criptográficas del dispositivo están disponibles para el código de los atacantes, puede usar la identidad del dispositivo.

Manipulación: una cámara de vigilancia que muestra una imagen del espectro visible de un pasillo vacío puede dirigirse a una fotografía de dicho pasillo. Un detector de humo o de incendios puede saltar si hay alguien debajo con un mechero encendido. En cualquier caso, el dispositivo podría ser técnicamente de confianza para el sistema, pero notifica información manipulada.

Manipulación: un atacante podría usar claves criptográficas extraídas para interceptar y suprimir los datos enviados desde el dispositivo y reemplazarlos por datos falsos autenticados con las claves robadas.

Divulgación de información: si el dispositivo ejecuta software manipulado, dicho software puede proporcionar datos a partes no autorizadas.

Divulgación de información: un atacante podría usar claves criptográficas extraídas para insertar código en la ruta de comunicación entre el dispositivo y la puerta de enlace de campo o la puerta de enlace en la nube para desactivar la información.

Denegación de servicio: el dispositivo se puede desactivar o activar en un modo en el que la comunicación no sea posible (lo que es intencionado en muchas máquinas industriales).

Manipulación: el dispositivo se puede reconfigurar para que opere en un estado desconocido para el sistema de control (fuera de los parámetros de calibrado conocidos) y así proporcionar datos que se puedan interpretar erróneamente.

Elevación de privilegios: se puede forzar a un dispositivo que realiza una función específica a realizar otra función. Por ejemplo, se puede obligar a una válvula programada para abrirse a la mitad a abrirse completamente.

Suplantación de identidad, manipulación o rechazo: si no está protegido (que casi nunca es el caso de los mandos a distancia de los consumidores), un atacante puede manipular el estado de un dispositivo de forma anónima. Una buena ilustración es un control remoto que puede desactivar cualquier televisor.

En la tabla siguiente se muestran mitigaciones de ejemplo para estas amenazas. Los valores de la columna de amenazas son abreviaturas:

  • Suplantación de identidad (S)
  • Manipulación (T)
  • Rechazo (R)
  • Divulgación de información (I)
  • Denegación de servicio (D)
  • Elevación de privilegios (E)
Componente Amenaza Mitigación Riesgo Implementación
Dispositivo S Asignación de identidad para el dispositivo y autenticación del dispositivo Reemplazo de dispositivo, o parte del dispositivo, por otro dispositivo. ¿Cómo se sabe que se habla al dispositivo correcto? Autenticación del dispositivo mediante Seguridad de capa de transporte (TLS) o IPSec. La infraestructura debe admitir el uso de una clave precompartida (PSK) en los dispositivos que no pueden controlar la criptografía asimétrica completa. Use Microsoft Entra ID, OAuth.
TRID Aplique mecanismos a prueba de manipulación al dispositivo, por ejemplo, haciendo que sea entre difícil e imposible extraer claves y otro material criptográfico del dispositivo. El riesgo es que alguien altere el dispositivo (interferencias físicas). ¿Cómo está seguro de que nadie manipuló con el dispositivo? La mitigación más eficaz es un módulo de plataforma de confianza (TPM). Un TPM almacena claves, pero no permite leerlas. Sin embargo, el propio TPM puede usar las claves para las operaciones criptográficas. Cifrado de la memoria del dispositivo. Administración de claves para el dispositivo. Firma del código.
E Tener el control de acceso del dispositivo. Esquema de autorización. Si el dispositivo permite que se realicen acciones individuales con los comandos de un origen externo o incluso sensores en peligro, permite que el ataque realice operaciones a las que no podría acceder de otra forma. Disposición de un esquema de autorización para el dispositivo.
Puerta de enlace de campo S Autenticación de la puerta de enlace de campo en la puerta de enlace en la nube (como basada en certificado, PSK o basada en notificación). Si alguien puede suplantar la identidad de la puerta de enlace de campo, puede presentarse como cualquier dispositivo. TLS RSA/PSK, IPSec, RFC 4279. Los mismos problemas de almacenamiento de claves y atestación de los dispositivos en general (lo mejor es usar TPM). Extensión de 6LowPAN para IPSec para admitir redes de sensores inalámbricas (WSN).
TRID Proteger la puerta de enlace de campo contra la manipulación (TPM) Los ataques de suplantación de identidad que hacen pensar a la puerta de enlace en la nube que está hablando con la puerta de enlace de campo podrían dar lugar a una divulgación de información y a la manipulación de los datos Cifrado de memoria, TPM y autenticación.
E Mecanismo de control de acceso de una puerta de enlace de campo

Comunicación

Estos son algunos ejemplos de amenazas en la categoría de comunicación. Las amenazas se clasifican en función del modelo STRIDE:

Denegación de servicio: Los dispositivos restringidos suelen estar bajo amenaza de DoS cuando escuchan activamente conexiones entrantes o datagramas no solicitados en una red. Un atacante puede abrir muchas conexiones en paralelo y no darles servicio o darles servicio lentamente, o inundar el dispositivo con tráfico no solicitado. En ambos casos, el dispositivo puede representarse eficazmente como no operativo en la red.

Suplantación de identidad, divulgación de información: Los dispositivos restringidos y los dispositivos de uso especial suelen tener instalaciones de seguridad únicas, como la protección con contraseña o PIN. A veces se basan totalmente en confiar en la red y conceder acceso a la información a cualquier dispositivo está en la misma red. Si la red está protegida por una clave compartida que se revela, un atacante podría controlar el dispositivo o observar los datos que transmite.

Suplantación de identidad: un atacante podría interceptar o invalidar parcialmente la difusión y suplantar al originador.

Manipulación: un atacante podría interceptar o invalidar parcialmente la difusión y enviar información falsa.

Divulgación de información: un atacante podría interceptar una difusión y obtener información sin autorización.

Denegación de servicio: un atacante podría atascar la señal de difusión y denegar la distribución de información.

En la tabla siguiente se muestran mitigaciones de ejemplo para estas amenazas:

Componente Amenaza Mitigación Riesgo Implementación
IoT Hub de dispositivo TID (D)TLS (PSK/RSA) para cifrar el tráfico La interceptación o interferencia de la comunicación entre el dispositivo y la puerta de enlace Seguridad en el nivel de protocolo. En el caso de los protocolos personalizados, debe averiguar cómo protegerlos. En la mayoría de los casos, la comunicación se establece desde el dispositivo a IoT Hub (el dispositivo inicia la conexión).
De dispositivo a dispositivo TID (D)TLS (PSK/RSA) para cifrar el tráfico. Lectura de los datos en tránsito entre dispositivos. Manipulación de los datos. Sobrecarga del dispositivo con nuevas conexiones Seguridad en el nivel de protocolo (MQTT/AMQP/HTTP/CoAP). En el caso de los protocolos personalizados, debe averiguar cómo protegerlos. La mitigación de la amenaza de denegación de servicio es emparejar los dispositivos a través de una puerta de enlace de campo o en la nube, y que actúen solo como clientes hacia la red. Después de que la puerta de enlace agente el emparejamiento, puede haber una conexión directa entre los elementos del mismo nivel.
Entidad externa Dispositivo TID Emparejamiento seguro de la entidad externa con el dispositivo Interceptación de la conexión con el dispositivo. Interferencia de la comunicación con el dispositivo Emparejamiento seguro de la entidad externa con el dispositivo LE NFC o Bluetooth. Control del panel operativo del dispositivo (físico).
Puerta de enlace de campo Puerta de enlace en la nube TID TLS (PSK/RSA) para cifrar el tráfico. La interceptación o interferencia de la comunicación entre el dispositivo y la puerta de enlace Seguridad en el nivel de protocolo (MQTT/AMQP/HTTP/CoAP). En el caso de los protocolos personalizados, debe averiguar cómo protegerlos.
Puerta de enlace en la nube de dispositivo TID TLS (PSK/RSA) para cifrar el tráfico. La interceptación o interferencia de la comunicación entre el dispositivo y la puerta de enlace Seguridad en el nivel de protocolo (MQTT/AMQP/HTTP/CoAP). En el caso de los protocolos personalizados, debe averiguar cómo protegerlos.

Storage

En la tabla siguiente se muestran mitigaciones de ejemplo para las amenazas de almacenamiento:

Componente Amenaza Mitigación Riesgo Implementación
Almacenamiento del dispositivo TRID Cifrado de almacenamiento, firma de los registros Lectura de datos del almacenamiento, manipulación de los datos de telemetría. Manipulación de datos de control de comandos en cola o en la memoria caché. La manipulación de paquetes de actualización de configuración o firmware durante el almacenamiento en caché o en la cola local puede provocar que los componentes del sistema operativo o del sistema se encuentren en peligro. Cifrado, código de autenticación de mensajes (MAC) o firma digital. Donde sea posible, control de acceso seguro a través de listas de control de acceso (ACL) a los recursos o permisos.
Imagen de sistema operativo de dispositivo TRID Manipulación del sistema operativo o reemplazo de los componentes del sistema operativo Partición de sistema operativo de solo lectura, imagen de sistema operativo firmada, cifrado
Almacenamiento en la puerta de enlace de campo (poner en cola los datos) TRID Cifrado de almacenamiento, firma de los registros Leer datos desde el almacenamiento de información, manipulación de datos de telemetría, manipule de datos de control de comandos en cola o almacenados en la caché. La manipulación de paquetes de actualización de configuración o firmware (destinados a los dispositivos o a la puerta de enlace de campo) durante el almacenamiento en caché o en la cola local puede provocar que los componentes del sistema operativo o del sistema se encuentren en peligro. BitLocker
Imagen de sistema operativo de puerta de enlace de campo TRID Manipulación del sistema operativo o reemplazo de los componentes del sistema operativo Partición de sistema operativo de solo lectura, imagen de sistema operativo firmada, cifrado

Pasos siguientes

Para más información sobre la seguridad de IoT, consulte: