La importancia cada vez mayor de la seguridad de hardware en las tecnologías de IoT

La seguridad es un tema cada vez más importante en el sector de la Internet de las cosas (IoT), por lo que cada vez existe un mayor enfoque en la seguridad del hardware, ya que parece ser una opción muy prometedora para proteger a los dispositivos contra los ataques cibernéticos. En este artículo, revisaremos algunos ejemplos actuales de seguridad de hardware y la manera en que se utilizan para proteger a los dispositivos de IoT.

El auge de la seguridad de hardware

 

La proliferación de dispositivos y soluciones de IoT ha generado muchas oportunidades para el desarrollo tecnológico, las cuales incluyen una gran cantidad de datos para entrenar la inteligencia artificial, y la capacidad para supervisar y controlar los procesos a distancia. Sin embargo, las tecnologías de IoT son una espada de doble filo, ya que también presentan diferentes oportunidades para los cibercriminales, como los ataques de denegación de servicio distribuidos (DDoS) masivos, el robo de datos, el hackeo de redes y la invasión de la privacidad. Aunque la seguridad basada en software puede ayudar a prevenir algunos de estos ataques, no es capaz de defender a los dispositivos contra todo tipo de ataques.

 

Por ejemplo, un dispositivo de IoT se podría utilizar para realizar transmisiones seguras de datos, pero, si el hardware del dispositivo sufre un ataque físico, ningún tipo de rutina de software ofrecerá la protección necesaria. La seguridad de hardware resulta muy útil en estos casos, por lo que cada vez es una opción más popular para los SoC, microcontroladores y microprocesadores. La seguridad de hardware solía consistir en piezas de hardware que aceleraban la seguridad del software, como los motores de cifrado. Sin embargo, los diseñadores están expandiendo los límites al comenzar a crear sistemas que protegen los dispositivos físicos.

 

Tipos de ataques de hardware

 

Los ataques de hardware no suelen aparecer en las noticias, lo que probablemente se debe a que puede ser difícil obtener acceso físico a un dispositivo. Por ejemplo, existen diferentes métodos para hackear una cuenta de correo electrónico mediante una conexión a Internet, pero el robo de una computadora portátil para acceder a los correos electrónicos almacenados en el sistema es una tarea muy diferente. Sin embargo, al obtener acceso físico a un dispositivo, normalmente no se requieren muchas habilidades para obtener todos los datos almacenados en él.

 

Ataque de canal lateral

 

Un ataque de canal lateral es un ataque indirecto dirigido a un sistema muy seguro por medio de subsistemas menos protegidos, los cuales se encuentran fuera del sistema seguro. Por ejemplo, puede ser muy fácil obtener los archivos de una cuenta de usuario de Windows protegida por contraseña al extraer el disco duro y conectarlo a otra computadora. De esta manera, el atacante solo tiene que "tomar propiedad" de la carpeta para tener todos los archivos a su alcance. Al hacer esto, no se requiere la contraseña de la cuenta del usuario original, que era muy segura, y se omite la protección del sistema.

 

Ataque Rowhammer

 

El ataque Rowhammer es un método particular que se utiliza para la memoria DRAM de alta densidad. Debido a la cantidad cada vez mayor de transistores y la reducción del tamaño de las obleas de silicona, las celdas de memoria de un chip DRAM moderno están increíblemente cerca unas de otras. De hecho, las celdas ahora están tan juntas, que tienen una pequeña probabilidad de modificar el valor de la celda contigua.

 

Los ataques Rowhammer aprovechan este problema y se pueden utilizar para modificar el valor de las filas de memoria "protegidas" al alterar el valor del contenido de la memoria en las filas contiguas. En teoría, la capacidad de un atacante para inyectar valores en los espacios protegidos a los que no tiene acceso se puede utilizar para omitir los sistemas de seguridad e inyectar código malicioso en las aplicaciones que pueden tener privilegios a nivel del núcleo.

 

Ejemplos de seguridad de hardware

 

Para proteger a los dispositivos contra los ataques de hardware, los diseñadores pueden implementar medidas de seguridad de hardware en la silicona misma, las cuales se pueden ejecutar fuera del mundo del software. ¿Cuáles son algunos ejemplos actuales de seguridad para el mundo del hardware?

 

Criptoaceleración

 

Como se ha mencionado antes, esta fue una de las primeras formas de seguridad de hardware, y funciona más como un periférico que como una defensa de hardware. La criptoaceleración es un tipo de hardware que realiza funciones criptográficas en el hardware en lugar del software, lo que no solo acelera las aplicaciones, sino que también proporciona sistemas para el hardware que no se pueden explotar en el software.

 

Por ejemplo, una versión de software de AES puede recibir una inyección de código, con lo que el atacante podría revertir fácilmente el resultado cifrado, mientras que una versión de hardware de AES es inmutable y no se puede atacar.

 

Generadores de números realmente aleatorios

 

Aunque se puede considerar a los generadores de números aleatorios como aceleración criptográfica, estos son lo suficientemente importantes para tener su propia categoría. Casi todos los tipos de cifrado dependen de números aleatorios y, entre más aleatorio sea un número, más eficaz resultará el cifrado que lo utilice. Los generadores de números aleatorios escritos en software casi siempre utilizan el tiempo como semilla, por lo que se pueden atacar con facilidad.

 

Una situación en la que se utilizaron números aleatorios de forma incorrecta fue cuando dos expertos en seguridad lograron hackear un Jeep y controlar por completo el vehículo de forma remota. Para lograrlo, conectaron el sistema multimedia del vehículo y utilizaron esa conexión para enviar mensajes mediante el bus CAN del mismo. Al hacer esto, los hackers lograron controlar la dirección, los frenos y el acelerador del vehículo.

 

Este ataque solo fue posible gracias al método por el que se generaba la contraseña Wi-Fi del vehículo, que, en teoría, era "aleatorio". La contraseña Wi-Fi se generaba con base en la fecha y hora en que el sistema multimedia se encendió por primera vez en el vehículo. Normalmente, este sería un proceso seguro. Sin embargo, dado que la fecha y hora de fabricación de un vehículo se puede determinar fácilmente con el mes y el año, los atacantes solo tienen 15 millones de combinaciones posibles. Si se logra adivinar correctamente la hora del día, las posibilidades se reducen a 7 millones. Y un ataque de fuerza bruta contra 7 millones de contraseñas Wi-Fi se puede completar en una hora. Si se hubieran utilizado números realmente aleatorios, habría sido muy difícil obtener la contraseña Wi-Fi. Sin embargo, dado que la contraseña estaba basada en elementos no aleatorios, fue muy fácil obtenerla.

 

Cifrado de memoria

 

La codificación de datos se remonta a hace miles de años, cuando los cifrados se utilizaban para proteger la información contra los ojos curiosos. Lo mismo aplica para la información computarizada, donde los datos transmitidos se suelen cifrar antes de enviarse. Sin embargo, este método de cifrado se está convirtiendo en una herramienta para el almacenamiento de datos en la memoria, donde la ROM y la RAM ahora cuentan con opciones de cifrado. Este enfoque les permite a los diseñadores asegurarse de que, si un atacante obtiene el contenido de la RAM o la ROM, la información sea ilegible al no tener acceso al hardware adecuado.

 

La protección de la memoria no es un concepto nuevo: muchos microcontroladores incluyen bits de protección contra lectura que evitan que otros dupliquen el firmware. El cifrado de la memoria flash tampoco es nuevo, ya que muchos FPGA son compatibles con el cifrado de la memoria flash de configuración. Sin embargo, esta nueva generación de cifrado de memoria se lleva a cabo sobre la marcha y permite velocidades de acceso casi idénticas.

 

Inicio seguro

 

Este es uno de los principales problemas que se presentan con casi todos los procesadores: ¿cómo puede asegurarse un procesador de que el código que inició sea auténtico y no malicioso? Aunque el código de arranque central de un sistema no se puede revisar para comprobar su autenticidad, las etapas posteriores del arranque sí se pueden revisar. La mayoría de los atacantes intentan inyectar el código en el código de arranque central o en la aplicación que se carga después.

 

Para evitar esto, los diseñadores han introducido métodos de arranque seguro en los procesadores, los cuales empiezan por ejecutar un código de arranque que es inmutable y, por lo tanto, inmune a los ataques de inyección de código. Después, este código de arranque revisa la aplicación que está por cargarse para comprobar la integridad del código. Si se detecta código inyectado, el sistema se puede ejecutar en un estado limitado, o se pueden enviar advertencias a un sistema operativo para informar que se detectaron problemas de integridad del código.

 

Zonas de confianza

 

Las zonas de confianza son relativamente nuevas en los microcontroladores, aunque son una técnica muy antigua en los procesadores. Las zonas de confianza ayudan a resolver el problema de que los procesadores no saben si el código que ejecutan es malicioso.

 

Cabe mencionar que no todas las instrucciones para la CPU son intrínsecamente peligrosas. Sin embargo, algunas pueden serlo, y pueden incluir acceso al hardware, al puntero de pila o a los sistemas esenciales. Por lo tanto, los procesadores modernos tienen diferentes niveles de privilegio, donde el sistema operativo se ejecuta en el mayor privilegio y tiene acceso a todas las instrucciones, mientras que los procesos que ejecuta el sistema operativo se colocan en un privilegio menor. Estos procesos no pueden acceder a las instrucciones sensibles y, por lo tanto, son menos capaces de provocar daños o atacar a los sistemas esenciales de un procesador.

 

Actualmente, muchos SoC y microcontroladores están incluyendo estas zonas en sus núcleos, donde un sistema operativo se ejecuta en un núcleo mientras los procesos se ejecutan en el mismo núcleo, pero con menos privilegios, o se ejecutan en un núcleo secundario con algunas características eliminadas.

 

Pines de seguridad

 

Los pines de seguridad son una opción muy útil para el hardware, ya que son difíciles de detectar y evitar. Algunos ataques de hardware requieren que el atacante retire físicamente ciertas partes para obtener acceso a las entradas y salidas, como los puertos de depuración y los canales de memoria. Según el dispositivo, un pin de seguridad puede detectar si se presenta un evento mecánico externo, como la apertura de un gabinete. Al detectar uno de estos eventos, el pin de seguridad puede enviar una orden al procesador para que realice una rutina especial, la cual puede ser desde un reinicio sencillo para evitar la lectura de datos sensibles, hasta una acción más drástica, como un borrado completo de la memoria. Los pines de seguridad también se pueden utilizar en pines oscuros, los cuales pueden pasar desapercibidos si el atacante piensa que no tienen ninguna función.

 

Seguridad de hardware avanzada: monitores de bus

 

Todos los ejemplos de seguridad de hardware que hemos visto hasta ahora se suelen combinar en un solo paquete y ofrecen una gran variedad de opciones de seguridad para los usuarios. Sin embargo, poco a poco se está introduciendo un nuevo tipo de seguridad de hardware, el cual ofrece un nuevo paradigma para la seguridad: los monitores de bus.

 

Los monitores de bus son sistemas de seguridad muy avanzados que se integran directamente en el SoC de un microcontrolador y operan independientemente del sistema. Los monitores de bus se conectan a muchos buses y conexiones internas, como pines de entrada y salida, registros, buses de datos internos y puertos de programación. Bajo la operación nominal, las conexiones internas del dado crean un estado constante, del que aprende el monitor de bus. Cuando se inyecta código malicioso, o cuando se presenta un ataque de hardware en un pin, se interrumpe el estado constante del monitor de bus. Esto provoca que el monitor de bus tome medidas para enfrentar la anomalía. Algunos monitores de bus pueden enviar excepciones al sistema operativo, mientras que otros pueden provocar el reinicio del sistema. Algunos monitores de bus incluso pueden desviar del procesador las solicitudes de registro potencialmente maliciosas y devolver valores nulos, al mismo tiempo que registran el intento de ataque.

 

Conclusión

 

Aunque la implementación de la seguridad de hardware hará que la silicona sea más costosa, los beneficios de la seguridad basada en hardware provocarán que los diseños sean más seguros. La seguridad de software tiene un alcance limitado, por lo que los sistemas completamente basados en seguridad de software pueden ser presas fáciles para los atacantes, mientras que aquellos que integren la seguridad de hardware serán mucho más resistentes.

 

De hecho, la capacidad para cifrar la memoria sobre la marcha ayuda a proteger los dispositivos a largo plazo y brinda comodidad para quienes quieren deshacerse de sus dispositivos electrónicos sin filtrar información. Algunas tecnologías, como los monitores de bus, fomentarán la aparición de sistemas de seguridad más inteligentes que puedan aprender de los ataques y prevenir ataques futuros al reconocer patrones de señales.

 

La seguridad de hardware se convertirá en el estándar de las prácticas de seguridad en general, y los dispositivos que no integren este tipo de funciones se verán limitados a realizar las operaciones y tareas básicas.

 

 

Últimas noticias

Lo sentimos, pero su selección de filtros no devolvió resultados.

Hemos actualizado nuestra política de privacidad. Por favor tome un momento para revisar estos cambios. Al hacer clic en Acepto, usted está de acuerdo con la Politica de Privacidad de Arrow Electronics y sus condiciones de uso.

Nuestro sitio Web coloca cookies en su dispositivo para mejorar su experiencia y nuestro sitio. Lea más sobre las cookies que utilizamos y cómo desactivarlas aquió. Es posible que se utilicen las cookies y tecnologías de seguimiento con fines de marketing.
Al hacer clic en "Aceptar", usted está consintiendo la colocación de cookies en su dispositivo y el uso de tecnologías de seguimiento. Haga clic en "Leer más" a continuación para obtener más información e instrucciones sobre cómo desactivar las cookies y tecnologías de seguimiento. Si bien la aceptación de cookies y tecnologías de seguimiento es voluntaria, la desactivación de estos puede resultar en que el sitio web no funcione correctamente, y es posible que ciertos anuncios sean menos relevantes para usted.
Respetamos su privacidad. Lea nuestra política de privacidad aquió