Cayendo en la trampa del Fallback…
La empresa china eyeDisk desarrolló lo que prometía ser un pendrive “inhackeable“[1] y terminó siendo tan inseguro como cualquiera, por el inocente agregado de un fallback.
Todos los que estamos en este negocio, conocemos las dimensiones de seguridad de la información. Las 3 principales son: confidencialidad, disponibilidad e integridad. Nuestra tarea desde seguridad, es la de definir el esfuero y los recursos para protegerlas adecuadamente. Pero dependiendo del contexto y del negocio o la misión particular, a veces no todas las dimensiones se deben proteger de la misma forma.
Un caso extremo:
En el caso de las redes OT, a través de las que se controlan procesos industriales, la dimensión más importante a proteger es la disponibilidad. Muy especialmente en infraestructuras críticas. La interrupción de un servicio o proceso industrial no sólo puede llegar a costar muchísimo dinero, sino que además puede provocar gravísimos daños en el equipamiento o hasta en el medio ambiente. Es por esto que todas las medidas de protección van a estar enfocadas en que la disponibilidad sea lo más invulnerable posible. Integridad y confidencialidad se dejan en segundo plano.
Un caso intermedio:
Al desarrollar sistemas de protección, muchas veces se establecen, diseñan e implementan estrategias de vías o caminos alternativos para el caso que algún componente falle. Es el esquema de “fallback” o “plan B” en el que a veces se deben establecer relaciones de compromiso en las que se pierden o degradan algunas características de seguridad para mantener otras.
Un ejemplo de esto es el sistema de cifrado de la telefonía celular. Cuando se establece una comunicación entre teléfonos celulares, la información viaja cifrada. Esto se hace para que nadie que tenga un receptor de radio en la frecuencia de emisión de la comunicación, pueda interceptar fácilmente las conversaciones. El sistema de cifrado que se usa en GSM es la familia A5. Sin entrar en la discusión de las vulnerabilidades particulares de estos algoritmos (tanto A5/1 como A5/2 fueron rotos), es importante mencionar que la familia está compuesta por 5 miembros: A5/0, A5/1, A5/2, A5/3 y A5/4.
Cada algoritmo posee mayores fortalezas de cifrado que el anterior y, como consecuencia, de consumo de recursos. A pesar de que muchas veces no lo notamos por las deficiencias de las redes, en realidad los sistemas celulares están diseñados para que las comunicaciones nunca se interrumpan. Entonces, el uso de algoritmos de cifrado más fuertes, está íntimamente relacionado con contar con muy buena señal en los dispositivos. ¿Qué pasa entonces si estamos en una condición de baja señal? El sistema tiene varias instancias de fallback, en las que los algoritmos de cifrado se van degradando para no perder la comunicación. En el caso de tener muy baja señal, nuestros celulares bajan hasta el modo A5/0 en el que la comunicación no se cifra en absoluto. En este caso, alguien podría escuchar nuestras conversaciones.
Pero el negocio manda. Es decir, en telefonía celular, si bien no es tan crítico como en el caso de sistemas industriales, la dimensión que más se preserva es la de disponibilidad. ¿La razón? es más que obvia: segundo que el sistema no funciona, segundo que no se factura…
El fallback que implica la degradación de la privacidad está incorporado por diseño con toda la intención de que sea así.
Un caso erróneo:
Ahora bien, cuando se diseña un dispositivo cuyo principal objetivo es preservar la confidencialidad. Cuando se anuncia con bombos y platillos que el sistema es absolutamente “inhackeable“, se deben tomar ciertos recaudos. La firma china eyeDisk desarrolló por la modalidad de crowdfunding un pendrive que incorpora la sofisticada tecnología de lectura de iris para asegurar la confidencialidad de los datos que él se almacenen.
Según sus especificaciones, el acceso a los datos sólo puede hacerse mediante la lectura de iris del dueño. Teniendo en cuenta que el sistema de lectura de iris es resistente a la lectura de imágenes o fotografías, la empresa parecía haber creado el perfecto “for your eyes only“…
Sin embargo, David Lodge, de PenTestPartners, descubrió recientemente que si bien la resistencia a ataques de lectura de iris es real, el fallback del sistema compromete completamente la confidencialidad tan promocionada. Si la lectura de iris falla, se puede desbloquear el contenido del pendrive con una contraseña provista por el usuario al momento de la configuración.
Resulta que investigando la manera en la que se transfieren los datos, el investigador descubrió que internamente, la contraseña almacenada se transfiere via USB desde el dispositivo a la PC antes de la validación y en texto plano!!! Por esta razón, con sólo un poco de conocimientos y esfuerzo, es posible obtenerla y usarla…
Usando fallbacks
Hay veces que sinceramente no entiendo la forma en la que se diseñan los sistemas. En el caso de eyeDisk “el” argumento de venta del producto es la imposibilidad de que sea hackeado. El usuario debería quedarse 100% tranquilo de que si pierde un pendrive con información valiosa, nadie tendría forma de recuperarla mientras el pendrive no vuelva a encontrarse con el ojo del dueño. El concepto es muy bueno…!!! ¿qué necesidad hay entonces de crear un fallback que permita al usuario desbloquear el pendrive haciendo un bypass de la principal protección del sistema, la lectura del iris? ¿para qué dar esa vuelta más innecesaria cuando al hacerlo se destruye por completo el concepto inicial?
Al pensar, diseñar y construir dispositivos o sistemas, se los dota a éstos de un objetivo. Si se hacen bien las cosas, ese sistema deberia cumplir perfectamente con su objetivo y hacer sólamente eso, la razón para la cual fue diseñado. Esto es lo que diferencia a un producto líder de uno del montón, el hacer muy bien su trabajo. El error se comete cuando se intentan agregar objetivos o funciones extra, y es en esa diversificación innecesaria, cuando lo que se hacía muy bien en principio bien, se termina diluyendo.
En sistemas muy complejos, con muchos componentes y escenarios posibles, en los que se debe tener siempre una respuesta válida, son necesarios los fallbacks. Pero éstos deben estar bien pensados. Porque sino, podríamos sin darnos cuenta, caer en la trampa del fallback, instalando por ejemplo un botón que abra la puerta de calle de nuestras casas desde el exterior, por si nos olvidamos el token de la cerradura electrónica que acabamos de instalar en nuestra nueva puerta blindada…
[1] Perdón por el término, pero fue lo mejor que pude traducir la palabra original del fabricante, es decir: “Unhackable”…
Nota por Carlos Benitez