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
  • Servicio

Cada zona suele tener sus propios requisitos de autenticación y 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 más altas.

Cada zona está separada por un límite de confianza, que se muestra como la línea roja punteada en el diagrama siguiente. 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 el modelo STRIDE.

A diagram that shows the zones and trust boundaries in a typical IoT solution architecture.

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 aislada de la red pública de Internet, pero potencialmente puenteada 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 redes de operadores públicos que requieren que dos dispositivos se comuniquen a través del espacio de red público si tuvieran que escribir una relación de comunicación punto a punto.

Zona de puerta de enlace de campo

Una puerta de enlace de campo es un software de equipo de servidor de uso general, dispositivo o dispositivo que actúa como habilitador de comunicación y, potencialmente, como un sistema de control de dispositivos y un 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 de procesamiento de datos dedicadas, normalmente están enlazadas a ubicaciones, están potencialmente sujetas a intrusiones físicas y tienen 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 ha tenido 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. Uno 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 los dispositivos especiales desde terminales como teléfonos o tabletas. En la zona de puerta de enlace de nube, las medidas operativas impiden el acceso físico dirigido y no se exponen necesariamente 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 propia puerta de enlace en la nube no es un sistema de control de dispositivos ni una instalación de procesamiento o almacenamiento para los datos del dispositivo; esas instalaciones interactúan 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 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 hacia 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
  • Exposición de 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 sensores de temperatura simples hasta líneas de producción complejas de fábrica con miles de componentes dentro de ellos. 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
  • Encender o apagar las luces

El propósito de estos dispositivos dicta su diseño técnico y el presupuesto disponible para su operación de producción y duración programada. La combinación de estos factores restringe el presupuesto de energía 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 de forma remota incluyen:

  • Defectos físicos
  • Controlar defectos de lógica
  • Intrusión y manipulación no autorizadas willful.

Las consecuencias de estos errores podrían ser graves, como lotes de producción destruidos, edificios quemados o lesiones y muerte. Por lo tanto, hay una barra de seguridad alta para los dispositivos que hacen que las cosas se muevan o que informen de los datos del sensor que producen comandos 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 un bloqueo 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 información que un dispositivo emite a cualquier otra parte sobre su estado y el estado observado de su entorno.

Modelado de amenazas 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:

Diagram that shows the Azure IoT reference architecture.

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

A data flow diagram derived from the Azure IoT reference architecture.

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 mayor potencia de procesamiento que un dispositivo simple, como un termostato, podría proporcionar por sí mismo. 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 puede extraer claves criptográficas de un dispositivo, ya sea en el nivel de software o hardware. A continuación, el ataque usa estas claves para acceder al sistema desde un dispositivo físico o virtual diferente mediante 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 que tenía su conexión de alimentación o de red no puede informar intencionadamente de los datos, en absoluto.

Manipulación: un atacante puede 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 de espectro visible de un pasillo vacío podría apuntarse a una fotografía de tal pasillo. Un detector de humo o de incendios puede saltar si hay alguien debajo con un mechero encendido. En cualquier caso, técnicamente el dispositivo puede ser de total confianza hacia el sistema, pero presenta información manipulada.

Manipulación: un atacante puede 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 puede 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 no es posible la comunicación (que es intencionada 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 amenaza 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 sabe que está hablando con el dispositivo correcto? Autenticación del dispositivo mediante Seguridad de capa de transporte (TLS) o IPSec. La infraestructura debe admitir el uso de la clave precompartida (PSK) en esos 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 el dispositivo no se ha manipulado? La mitigación más eficaz es un módulo de plataforma de confianza (TPM). Un TPM almacena las claves en circuitos especiales en chip desde las que no se pueden leer las claves, pero solo se pueden usar para las operaciones criptográficas que usan la clave. 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) Ataques de suplantación de identidad que engañan a la puerta de enlace en la nube pensando que está hablando con la puerta de enlace de campo podría dar lugar a la divulgación de información y a la manipulación de 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 doS cuando escuchan activamente conexiones entrantes o datagramas no solicitados en una red. Un atacante puede abrir muchas conexiones en paralelo y no atenderlas o atenderlas 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 puede interceptar o invalidar parcialmente la difusión y suplantar al originador.

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

Divulgación de información: un atacante puede interceptar en una difusión y obtener información sin autorización.

Denegación de servicio: un atacante puede bloquear 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 Leer datos del almacenamiento, alterar 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 del sistema operativo de solo lectura, imagen del 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 Lectura de datos del almacenamiento, manipulación de datos de telemetría, manipulación con datos de control de comandos en cola o almacenados en 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: