Saltar al contenido
Domoticca

Seguridad IoT: tecnología inalámbrica Z-Wave

Comunmente nos asaltan inquietudes sobre si es correspondiente o bien seguro llevar a cabo un sistema de alarma establecido con tecnología Z-Wave, y más aún, si alguien podría, entre otras cosas, encendernos una luz o bien abrir una electroválvula de riego dominada por un gadget Z-Wave sencillamente con un emisor de radio. Vamos a intentar argumentar de forma somera los mecanismos de seguridad que incorpora el protocolo Z-Wave sin ingresar bastante en aspecto. Mas antes…

Nociones de seguridad IoT

Habitamos un planeta en el que en ocasiones somos alterados por novedades similares con la seguridad IoT y de las Tecnologías de la Información (TI) por norma general. Nos nos encontramos refiriendo a los temidos Virus, Phising, Worms, Troyanos, y generalmente todo programa clasificado como Software malicioso o bien Piratas informáticos, Botnets, Spammers y demás actores de nombres anglosajones inentendibles que campan por un ecosistema donde cada vez se antoja más arriesgado desplazarse, mas que se nos impone como obligación si no tenemos ganas descolgarnos de la tecnología. ¿Y es en este planeta aparentemente arriesgado donde deseamos conectar cámaras de vídeo, frigos, termostatos o bien gadgets que abran puertas o bien persianas?. Bien, no seamos alarmistas y veremos qué peligros supone el utilizar gadgets con tecnología Z-Wave. Mas antes vamos a detallar un ámbito familiar habitual en relación a telecomunicaciones tiene relación.

Ámbito

Anteriormente los domicilios se conectaban a Internet con un ordenador portátil utilizando un módem y la línea telefónica. No se encontraba por siempre conectado, porque no existía la cuota plana, sino te facturaban por tiempo de conexión. Eran tiempos en el que los virus informáticos se transferían por medio de disquetes. Mas llegó el ADSL y la cuota plana y con esto el enrutador, de tal modo que ahora teníamos nuestra casa por siempre conectada a Internet, aunque al comienzo solo fuera el enrutador y el ordenador de sobremesa ocasionalmente. Más adelante se popularizó el portátil, y el WIFI para después ingresar en internet los móviles inteligentes y tabletas. Y desde este instante comenzamos a charlar de una red en nuestra casa donde de a poco fueron incorporándose cada vez más gadgets como televisiones, videoporteros, cámaras o bien inclusive aspiradoras. Comunmente el punto de conexión a la red en un ámbito familiar es el enrutador, bien por alguna conexión física cableada o inalámbricamente por medio de WIFI. Entonces el enrutador familiar en la mayoría de los casos maneja tres redes que acostumbran llamarse de la próxima forma:

  • WAN (Wide Area Network) – Es el posibilidad de entrar a Internet. La operadora, nos asigna una dirección IP pública (aunque esto está modificando por medio de IPv6), el enrutador es el único gadget alcanzable desde Internet.
  • LAN (Local Area Network) – Es la red de nuestro domicilio. Por lo general configuramos una red IP privada y el enrutador por DHCP asigna direcciones a los gadgets que se marchan conectando. Comunmente los gadgets conectados a nuestra red lógica no son alcanzables desde Internet y el enrutador incorpora un mecanismo llamado NAT a fin de que logren entrar a Internet. Mas a fin de que logren entrar a estos gadgets desde Internet hay que llevar a cabo una configuración particular en el enrutador, conocida popularmente como mapeo de puertos, por lo cual los gadgets tras el enrutador tienen cierto nivel de protección.
  • WLAN (Wireless LAN) – Es la red WIFI y por lo general forma parte, a nivel lógico, de la LAN de tal manera que los equipos conectados a la LAN y a la WLAN se tienen la posibilidad de ver entre sí. Virtualmente están en la LAN y se aplica el punto previo.

Descrito este ámbito, es obvio que a fin de que un entrometido acceda a nuestra red, hay que pasar por el enrutador. Entonces el enrutador es un factor de escencial consideración para asegurar la seguridad de nuestra red, bien a fin de que no entre un entrometido desde Internet o bien que algún vecino o bien visitante se enlace a nuestra WLAN. En verdad los enrutadores modernos acostumbran llevar a cabo un Cortafuegos y también un IPS (Sistema de Prevención de Intrusiones por sus iniciales en inglés) para además dotar de más grande seguridad al sistema.

Entonces si se encontrara alguna puerta de inseguridad en el enrutador, podrían ingresar a nuestra red. Más adelante para entrar a alguno de nuestros gadgets, como puede ser nuestro computador personal, debería vulnerar además la seguridad del conjunto. Entonces poseemos dos barreras de seguridad.

  • Seguridad Perimetral – En un caso así incorporada en el enrutador.
  • Seguridad del Host – Cada gadget además tiene sus mecanismos de seguridad.

Nuestro controlador domótico Z-Wave por consiguiente va a estar conectado a nuestra red LAN y también con independencia de la red Z-Wave debe llevar a cabo además algún género de seguridad en el Host.

Seguridad del Controlador Z-Wave

Conectamos el controlador Z-Wave a nuestra red doméstica a fin de que logre entrar a Internet de tal manera que de este modo tengamos la posibilidad manejarlo desde el móvil inteligente en el momento en que nos encontramos fuera de casa. En el momento en que charlábamos en el apartado previo de la red LAN afirmábamos que desde Internet no se podía conectar a nuestros gadgets. ¿Cómo pasa entonces?. ¿Debemos mapear puertos para lograr entrar a nuestro controlador Z-Wave desde Internet?.

No, no debemos mapear puertos. Los desarrolladores de controladores como Fibaro (HC2/HCL), eedomus, Vera (Edge/Agregado), Zipato (Zipabox/Zipatile) ponen un servicio en Internet al que se conecta el controlador, y más adelante la Aplicación del dispositivo móvil o bien la aplicación Web recóndita. Entonces hay un servicio en Internet gestionado por el desarrollador del controlador que posibilita la administración recóndita. Mas en varios de los controladores precedentes se puede deshabilitar el ingreso recóndito y entrar solo de forma local. Estas conexiones están cifradas y emplean tecnologías de seguridad cuya eficacia está extensamente probada y tiende a ser muy semejante a la que emplean las apps que alguno de empleamos en el momento en que conectamos a nuestros bancos.

Apuntes sobre Seguridad en Comunicaciones

En el momento en que avisamos mensajes de manera segura hay que asegurar los próximos puntos:

  • Confidencialidad. Si se intercepta el mensaje no logre ser leido.
  • Autenticación. Detectar de manera unívoca la entidad con la que se intercambia el mensaje.
  • Integridad. Asegurar que el mensaje no fué manipulado a lo largo de la transmisión.

Hay dos mecanismos para asegurar estos tres puntos en las comunicaciones: firma y encriptación.

  • Firma. Son algoritmos que al aplicarlo a un mensaje, crea una firma digital (grupo de bytes), de exactamente la misma longitud sea como sea el mensaje de entrada y que no posee ningún sentido ni se puede conseguir el mensaje original desde esa firma. Lo que sí que nos garantiza es que si cambiamos un solo bit del mensaje original y le aplicamos exactamente el mismo algoritmo la firma cambia completamente y que hay muy poca posibilidad de hallar un mensaje original semejante que produzca exactamente la misma firma. Para corroborar la firma aplico exactamente el mismo algoritmo al mensaje y debe salir exactamente la misma firma. Ejemplos de estos algoritmos son MD5, SHA1 o bien SHA256.
  • Encriptación o bien encriptado. Por medio de un algoritmo logramos cambiar el mensaje de tal modo que solo logre devolverlo a su estado original el que conozca la clave de descifrado. Hay dos tipos: Encriptado Simétrico y Encriptado Asimétrico.Encriptado Simétrico. Exactamente la misma clave se utiliza para codificar o bien transcribir. Algoritmos de encriptado de esta clase son DES, 3DES, Blowfish, AES128, AES256,etc. El inconveniente radica en que ámbas partes tienen que tener exactamente la misma clave y hay que asegurar que la clave se transmite entre ámbas partes sin que esta sea comprometida.Encriptado Asimétrico. En una comunicación entre dos, cada parte crea dos claves. Lo que se cifra con una clave se descifra con la otra clave. A la que almacena cada parte en misterio se le llama clave privada y la que se trasfiere por la red, pública y puede ser popular por alguno. Habituales algoritmos asimétricos son RSA o bien ECC. Estos algoritmos son más costosos computacionalmente que el encriptado simétrico por lo cual por lo general se utiliza encriptado asimétrico para canjear la clave simétrica seguramente y en el fluído de la comunicación se usa encriptado simétrico considerablemente más veloz. Este desarrollo lo observaremos ahora.

En encriptado asimétrico hay una clave pública que hay que expedir a la parte con la que deseamos estar comunicados. Mas, alguien puede interceptar el mensaje y ofrecer el cambiazo. ¿Cómo puedo confiar en que la clave pública que me llega forma parte verdaderamente a la parte con quien deseo charlar?. Lógicamente si alguien en quien confío me garantiza que esa clave verdaderamente forma parte a la otra sección. Este mecanismo se articula por medio de certficados y autoridades certificadoras en las que confío.

  • Certificado. Es una clave pública firmada por una Autoridad Certificadora (CA). Además transporta más datos firmados, etc una fecha de caducidad, un apunte identificativo (CN) como el DNI o bien el nombre de un host como logre ser weblog.domoticalia.es.
  • Autoridad Certificadora. Es un ente en quien confiamos, como entre otras cosas en España la Factoría Nacional de la Moneda y Timbre. Informáticamente comentando y muy por arriba, es un certficado autofirmado o bien dicho de otra forma, es la clave pública (con otros datos) y anexa va la firma cifrada por la privada. La privada no se trasfiere mas sí tenemos la posibilidad de desencriptar la firma con la pública, que va en el certificado, y más adelante corroborar la firma. Estas autoridades certificadoras (certificados de autoridades certificadoras) vienen instaladas en nuestros sistemas y confiaremos en certficados (claves públicas) mientras que vengan firmados por una CA donde confiemos. Ni que decir debe es de escencial consideración no disponer CA’s en las que no confiemos.

Como afirmamos antes en el momento en que implementamos esta clase de seguridad usamos algoritmos de clave asimétrica para canjear una clave simétrica, de tal manera que el fluído de datos va encriptado por un algoritmo de encriptado de clave simétrica considerablemente más eficaz. Como protocolo de trueque de claves simétricas se acostumbra usar el algoritmo de Diffie-Hellman o bien la variación ECDH (Eliptive Curves Diffie-Hellman) que no vamos a describir para no extendernos en demasía.

Tanto en los algoritmos de clave simétrica como de clave asimétrica su fortaleza reside en la imposibilidad de conocer una clave segrega. Mas por fuerza bárbara, oséa, probando todas y cada una de las composiciones probables de la clave segrega, es viable desencriptar los mensajes. Mas estos asaltos, con la tecnología de hoy y empleando Super Ordenadores puede llegar a lograrse empleando cantidad considerable de tiempo que inclusive podrían llegar a contabilizarse por siglos.

Seguridad IoT en el Protocolo Z-Wave

Las redes PAN (Personal Area Network) como es la situacion de las redes Z-Wave, además tienen que llevar a cabo mecanismos de seguridad. Las primeras ediciones del protocolo solamente implementaban mecanismos de seguridad y era subjetivamente simple vulnerar tanto la confidencialidad, la autenticación como la integridad. Mas mientras se fueron construyendo ediciones, la seguridad se convirtió en entre los ejes más destacables de la evolución del protocolo. Siendo un protocolo inalámbrico no es necesario poder ingresar físico sino con un emisor y receptor de radio correcto tendremos la posibilidad de poder ingresar a la red si esa red no incorpora ningún género de seguridad. De ahí que, en el protocolo Z-Wave, la seguridad es un aspecto crítico.

Los primordiales asaltos a los que debe confrontar el protocolo Z-Wave son los próximos:

  • Jamming o bien Flooding. El agresor procura que el nodo no logre estar comunicado inyectando tráfico y saturando la red. Estos asaltos los controladores Z-Wave tienen la capacidad de advertirlos en cuestión de minutos desde el instante en que comienza el ataque ya que aprecian la sepa de comunicación regular o bien señales de Heartbeat con el nodo.
  • Rogue Node. En un caso así un gadget ahora introducido en internet puede ingresar inadvertidamente al agresor en internet y más adelante ir capturando claves de ese nodo. Para evadir que un agresor se introduzca en internet los controladores acostumbran usar autenticación OOB (Out Of Band).
  • Replicación de packs. Un agresor puede utilizar un sniffer para atrapar packs y después más adelante introducirlos (transmitirlos) en internet otra vez. Para evitarlo no solo se encriptan los comandos Z-Wave, sino además se impide con marcas de tiempo que logren ser utilizados más adelante.

Seguridad Avanzada Z-Wave S2

Hoy en día a fin de que un gadget reciba la certificación Z-Wave es obligación que todos y cada uno de los gadgets implementen el Framework de Seguridad Avanzada Z-Wave S2. Este sistema provee a la tecnología Z-Wave nuevos escenarios de impenetrabilidad.

Este macanismo está apoyado en tres clases de seguridad cada una con una clave de red diferente. Todas estas clases dictan la forma donde un nodo es agregado en internet y por consiguiente su desempeño posterior.

  • S2 Access Control. Es la clase más segura entendida para integrar gadgets como seguros de apertura de puerta o bien aperturas de estacionamiento.
  • S2 Authenticated. Está concebida para gadgets recurrentes como sensores o bien interruptores de luz.
  • S2 Unauthenticated. Es la menos segura y está concebida para gadgets tan simples que no sean capaces de llevar a cabo un sistema de autenticación mínimo en el momento en que se unen a la red Z-Wave. Un caso de muestra podría ser un llavero que controla unos cuantos lampases en una vivienda de campo.
  • S0 coincidente. Por último hay una clave para compatibilidad con gadgets viejos que no implementen S2. Los nodos S2 llevan entre la clave S0 como «S2 Unauthenticated»; utilizando la clave ECDH para el trueque de claves en vez del trueque de claves S0.

Tanto S0 como las clases S2 emplean AES-128 como algoritmo de encriptación. AES-128 se considera algoritmo de encriptación bastante seguro para información clasificada, el nivel inferior a información segrega, por el Gobierno estadounidense. Combinada con la autenticación S2 y S0 coincidente, no se conoce forma de romper este sistema de protección, inclusive con el apoyo de Super Ordenadores. Además los nodos siempre admitirán solo los comandos de gadgets que utilicen la clase S2 más segura.

Ahondando un tanto más en su desempeño desde la perspectiva de la seguridad, hemos resaltado los próximos puntos.

  • Autenticación de gadgets. En un ámbito inalámbrico existe el peligro de que un agresor introduzca un gadget de manera fraudulenta en internet en el instante en el que el instalador introduce un gadget autorizado. La especificación S2, para los dos métodos más seguros y mientras que el diseño del usuario lo deje, dejará autenticar por medio de un código DSK (Device Specific Key) que debe ingresar el instalador de forma manual o bien por código QR en el controlador. Este código son los primeros 16 bytes de la clave pública ECDH del gadget que el instalador está uniendo a la red.
  • Trueque de claves. Para el trueque de claves entre gadgets se usa una optimización del algoritmo de Diffie-Hellman ya que utilizando Curvas Elípticas reducimos la longitud de las claves. Mas ECDH (Eliptic Curves Diffie-Hellman) produjo algunas inquietudes y la industria se movió a Curve25519 que además necesita menos cálculo computacional. Los nodos S2 emplean una clave compartida ECDH con Curva25519 para derivar clave temporal de link. La clave temporal facilita que un controlador que está introduciendo un nodo le trasfiera una o bien más claves de red. Guardando las claves de link entre todos y cada uno de los nodos de la red requeriría considerablemente más memoria no volátil y no podría incorporarse tráfico multicast seguro. S0 y S2 utiliza AES-128 utilizando una clave de red simétrica. Entonces todos y cada uno de los nodos van a poder canjear tráfico utilizando exactamente la misma clave de red.
  • Integridad de clave. Las claves asimétricas ECDH se emplean por un tiempo para detallar un canal seguro y solo ciertas tramas se intercambian para comunicar las claves de red. Hoy en día no se conoce ningún ataque para romper ECDH con Curve25519. Después toda la comunicación se ejecuta encriptando con AES. Se emplean bloques de 128 bits y se ha calculado que para un tráfico persistente de 100 kbit/s de datos se precisarían 750 millones de años el poder desencriptarlo por fuerza bárbara.
  • Gadgets perdidos. ¿Qué sucede si un gadget se pierde?. Si el controlador lo detectase porque hace ya tiempo que no se comunica con una solución sería repartir novedosas claves de red a todos los otros gadgets de la red mas esto implicaría que habría un tiempo en que convivirían la vieja y la novedosa hasta el momento en que se hubiera desplegado la novedosa clave. S2 tiene la aptitud de meter en lista negra claves de gadget de tal modo que si después está el dispositvo se podría regresar a sacar de esa lista negra.
  • Multicast seguro sin sobrecoste de direcciones. El multicas originario de Z-Wave emplea campos de direcciones indizados para detectar los receptores de una transmisión especial. Esta técnica tiene el interesante de que los receptores no deben almacenar el estado de los integrantes de un conjunto multicast. Para asegurar la seguridad los multicast tienen dentro un número aleatorio (Nonce) autoactualizable que todos y cada uno de los integrantes del conjunto tienen que comprender y estar acompasados. Cada nodo para expedir el ACK lo realiza en dos fases. Primero manda un multicast seguido de un singlecast a cada integrante del conjunto. El número aleatorio se actualiza a lo largo de las próximas transmisiones sencillos (singlecast) entre el transmisor y un integrante del conjunto.
  • Sondeo de estado no primordial. Clasicamente Z-Wave utilizaba polling (sondeo) para actualizar el estado de los gadgets. Esto afectaba muy de manera negativa al desempeño de la red, especialmente cuando se encontraba formada por varios nodos. Con S2 los gadgets aguantan la clase de comando Supervision (Supervision CC) de tal modo que si se manda un comando con Supervision CC el gadget notificará del estado tras recibirlo con un Supervision Report.
  • Distribución Acelerada. En los ACK de Supervisión se tienen la posibilidad de expedir fallos de Nonce Out of Sync (Numero aleatorio no acompasado) que son mutuamente excluyentes: si la trama puede ser desencriptada se manda un Supervision Report, sino más bien se manda un error Nonce Out of Sync. Tras la resincronización se regresa a expedir el comando. Así se tienen la posibilidad de continuar mandando comandos sin la necesidad de aguardar a fallos Nonce Out of Sync.
  • Eficacia de energía. S2 relacionado con S0 tiene un desempeño considerablemente más óptimo en relación a consumo tiene relación.
  • Protección Activa contra asaltos vía Nonces. Utilizando Nonces (número aleatorio acompasado entre nodos) que van incluidos en todos y cada comando S2 logra que si un agresor retransmite un comando que ha tomado con un sniffer, el receptor advierta que es ilícito. Un ataque aún más adelantado sería utilizando dos técnicas: por una parte el agresor escucha la transmisión de un nodo de la red, utilizando técnicas de jamming impide que le llegue al receptor. Más adelante manda el comando al propósito y su respuesta además utilizando jamming impide que llegue al emisor inicial. Ya que S2 utiliza Supervision CC requiere ACK de cada comando por lo cual el agresor jamás va a poder crear mensajes de respuesta válidos por lo cual se detectará el ataque.
  • Comunicación segura con el Gateway. S2 ordena a que las comunicaciones con el portal que proporciona el servicio, o bien la aplicación móvil inteligente, use certificados RSA de cuando menos 1024 bits y túneles TLS para encriptar todas y cada una de las comunicaciones que viajen a nivel IP.

Conclusiones

Las informaciónes de seguridad para productos certificados Z-Wave ordena a realizar los más altos estandares en relación a seguridad tiene relación. Las tecnologías utilizadas para asegurar la información de las comunicaciones entre gadgets Z-Wave y hacia Internet tienen la posibilidad de compararse a las utilizadas por las apps que empleamos todos y cada uno de los días en el momento en que hacemos transferencias bancarias.

Mas la seguridad en sistemas no apartados no puede ser algo estático sino debe poder actualizarse en el momento en que se se dan cuenta novedosas inseguridades que el diseñador no había tenido presente. Los desarrolladores de controladores que comunican nuestra red Z-Wave con Internet están por siempre mejorando para sugerir novedosas funciones para parchear probables novedosas inseguridades descubiertas. Mas además los gadgets Z-Wave además tienen la posibilidad de actualizar su firmware vía OTA (Over the Air) de una forma fácil y confiable.

Por todos estos puntos tenemos la posibilidad de, deducir que en las tecnologías de IoT o bien Internet de las Cosas (Internet of Things), los sistemas basados en tecnología Z-Wave tienen impresa en su ADN la seguridadIoT como entre las peculiaridades escenciales, lo que la hacen entre las más fiables en relación a seguridad tiene relación.

Sobre la mítica pregunta inicial, de si es confiable un sistema de alarma apoyado en Z-Wave, en nuestra modesta opinión, sin entrar en dudas.

Compártelo!