¿Es segura tu memoria USB cifrada?

Empresas

¿Cómo puedes estar “seguro” de que el USB que utilizas es realmente seguro y que la información que guardas en él no se puede extraer? Esa es exactamente la pregunta que los investigadores de Google, Ellie Bursztein, Jean-Michel Picod y Rémi Audebert se plantearon en su charla “Atacando llaves USB mediante hardware“.

Los investigadores dicen que, en la actualidad, los fabricantes de USB seguros siguen el certificado estándar FIPS 140, desarrollado por el NIST (Instituto Nacional de Estándares y Tecnología) para todo tipo de módulos de cifrado, tanto para hardware como para software, e incluye una divulgación sobre la seguridad criptográfica y el proceso de validación.

Tal como lo han dicho los investigadores, mantener la certificación actual es importante porque la información revelada les ayuda a encontrar posibles problemas. Pero no es suficiente; no cualquier vector de ataque posible está cubierto por el FIPS 140. Y como puedes ver más abajo, algunos dispositivos USB cifrados pasan la certificación, pero siguen siendo vulnerables a ataques, a veces hasta a los más fáciles.

Es por esto que los investigadores proponen desarrollar una nueva metodología de auditoría específica para evaluar la seguridad de dispositivos USB cifrados. Para empezar, los investigadores han dividido los problemas de seguridad en tres categorías:

  • Debilidades: Problemas que facilitan procesos de hackeo;
  • Hackeo de un solo dispositivo: Las vulnerabilidades que permiten el hackeo de un solo dispositivo en particular;
  • Hackeo total: Vulnerabilidades que pueden dar acceso a la información de cualquier dispositivo del mismo modelo.

Además, la explotación de ciertas vulnerabilidades requiere de habilidades y recursos específicos. Algunos problemas pueden ser útiles para un hacker sin habilidades, y algunos requieren la disponibilidad de muchos recursos, especialmente para los hackers del estado. Por lo tanto, el nivel de peligro se puede expresar en tres categorías:

  • Afortunado: Abierto a un hacker oportunista con recursos mínimos. Básicamente, a este nivel puede ser una persona que se haya encontrado o robado un dispositivo y que está dispuesta a ver la información que tenga (posiblemente) disponible.
  • Profesional: Disponible a hackers con recursos, pero limitados. Hackers en este nivel, se interesan principalmente en reunir la mayor cantidad de información posible.
  • Patrocinado por el estado: Requieren a hackers con muchos recursos. Estos hackers suelen ir en búsqueda de información específica, y claves que valen grandes cantidades de dinero.

La clasificación de las amenazas específicas de dispositivos USB cifrados, incluye dividir posibles vectores de ataque en varios grupos, según los componentes del dispositivo; funciones de diseño y fabricación de todo el dispositivo, autenticación de factores (de entrada, para abreviar), controlador de USB/cifrado, algoritmo cifrado, memoria flash. Echémosle un vistazo a estas categorías.

Diseño y fabricación

En primer lugar, todos los dispositivos USB cifrados deben estar diseñados y fabricados de un modo que proporcione cierto nivel de protección. Para empezar, estaría bien que los dispositivos contasen con indicadores de compromiso por si alguien accede a tu dispositivo USB en el que tienes todos tus preciados archivos.

Cuanto más sencillo sea acceder a los componentes electrónicos, más sencillo será para el delincuente investigar el hardware y encontrar vulnerabilidades en el dispositivo. Para prevenir esta situación, la placa de circuito se debería bañar en resina epoxy.

Es importante mencionar que la resina epoxy debe ser exactamente esa y no una sustituta. Los investigadores han descubierto que, en algunos casos, los fabricantes aseguran haber utilizado epoxy, cuando en realidad han utilizado un polímero menos robusto. Como resultado, es muy fácil eliminar la capa con acetona y acceder del todo al hardware.

En caso de hackear hardware, una vez que consiguen acceder a los componentes electrónicos, lo primero que hace cualquier hacker es comprobar las marcas de los componentes, esencial para encontrar sus manuales y especificaciones y, así, explorar las posibilidades de ataque. Si se eliminaran con cuidado los nombres de los modelos, los números de series y demás, los hackers terminarían con una caja negra en las manos y tendrían que hacer una investigación más compleja para saber qué ataques se pueden aplicar al dispositivo.

A veces, hasta los fabricantes intentan eliminar las marcas de componentes de los chips, sin embargo, no consiguen hacerlo bien.

Es un trabajo complicado reemplazar el firmware por una versión modificada que permita a los hackers traspasar dicha protección. Sin embargo, los hackers con maña y recursos podrían hacerlo. Y lo que es peor, este tipo de ataque es replicable: Una vez que los hackers apliquen ingeniería inversa al firmware y descubran cómo hacer las modificaciones necesarias, podrían hackear cualquier dispositivo del mismo modelo.

TEMPEST es un tipo de ataque que permite a los delincuentes espiar lo que pasa dentro del dispositivo mediante una emisión electromagnética. Este ataque es complejo y es poco probable que empresarios y personas de a pie sean víctimas de él. Sin embargo, cualquiera que quiera asegurarse de que sus secretos están a salvo de los hackers del estado, debería utilizar dispositivos USB con protección de lámina de cobre, la cual es fiable contra TEMPEST y relativamente barata.

No todos los hackers pueden llegar tan lejos como para falsificar un USB. Pero, repito, los del estado sí que podrían. Por lo tanto, si quieres mantener tus secretos protegidos de los altos niveles de espionaje, necesitarás dispositivos USB cifrados diseñados para protegerte de la falsificación.

Entrada

Otro problema tiene que ver con la pieza del USB que identifica a los usuarios legítimos y desbloquea el dispositivo. En primer lugar, hackear la autentificación es mucho más fácil que hackear una memoria flash a nivel de hardware o hackear un algoritmo cifrado. En segundo lugar, existe la posibilidad de que el fabricante haya cometido durante el desarrollo del mecanismo de autenticación. Por lo tanto, es probable que la autenticación sea el objetivo más fácil para cualquier hacker (después de investigar el dispositivo).

Existen cuatro formas de autentificar a un usuario: mediante un teclado numérico, un sistema de identificación inalámbrica por insignia, una huella dactilar o un software de introducción de PIN.

El primer error que un fabricante puede cometer es almacenar el PIN en el software, pues hasta un hacker sin experiencia podría descubrir el modo de obtenerlo y hackear no solo el dispositivo, sino también cualquier otro del mismo modelo. En algunos casos, es posible que el software tenga vulnerabilidades que puedan utilizarse para llevar a cabo ataques de replay, como sucedió con varios dispositivos certificados con FIPS analizado por los investigadores del German SySS en 2009.

En los teclados numéricos se puede usar un simple exploit que, por el desgaste de ciertos botones que demuestran su uso, revela las combinaciones que se usan en el desbloqueo del dispositivo.

Los sistemas de identificación inalámbrica por insignia son incluso peor: pueden ser clonadas mediante un dispositivo muy simple. Con una insignia clonada, cualquier atacante puede desbloquear el dispositivo USB en un momento, sin dejar rastro ni huella de haber accedido al mismo.

Los investigadores demostraron cuatro métodos durante su presentación en Black Hat:

Las huellas dactilares pueden parecer un factor de autenticación muy fiable, pero, en realidad, distan mucho de la perfección. Existen varias formas de clonar tus huellas dactilares y algunas no requieren de contacto físico (un atacante puede obtener una buena huella dactilar con una cámara DSLR y hacer una copia con una impresora de tinta conductiva). Y lo peor de todo es que no puedes cambiar tus huellas dactilares, no son como las contraseñas.

De hecho, los atacantes no necesariamente tienen que falsificar huellas dactilares. Los investigadores han demostrado que, en algunos casos, un dispositivo protegido por huella digital puede ser desbloqueado de forma mucho más sencilla.

Resultó ser que, al menos uno de los dispositivos USB protegido por huella digital que analizaron Bursztein y sus colegas es vulnerable a un ataque de replay. Cuando el sensor de este dispositivo escanea una huella dactilar legítima, simplemente envía un comando al controlador de la unidad para desbloquearlo.

Otro error cometido por este fabricante en particular fue dejar un puerto de depuración funcional en su placa de circuitos. Al utilizar este puerto, los investigadores interceptaron el comando de desbloqueo, siendo capaces de volver a hacerlo y desbloquear cualquier dispositivo de este modelo.

Estos hackeos pueden parecer complejos, pero no te confundas: un atacante con experiencia utilizará estos trucos para acceder a tus archivos. Y si no proteges tus secretos de los hackers del estado con mejores recursos, tendrás que tener en cuenta todas las vulnerabilidades mencionadas anteriormente.

Controlador

Considera el controlador de un dispositivo USB/cifrado. En primer lugar, tienes que asegurarte de que el dispositivo no sea hackeable por ataques de fuerza bruta. Algunos lo son. Por ejemplo, los drives que utilizan tags inalámbricos, tales como los que utilizaron los investigadores para demostrar el ataque de clonación de tags, también son vulnerables a ataques de fuerza bruta.

Para estar protegidos de estos ataques, el dispositivo debe quemarse después de cierto número de intentos de autenticación fallida. Lo ideal sería que la clave de cifrado e información de un dispositivo de memoria flash se limpiara de forma segura después de quemar el dispositivo.

Tampoco estaría de más asegurarse de que el dispositivo se bloquee inmediatamente al desconectarlo de un puerto USB, tras cierto tiempo de inactividad y después de reiniciarlo.

También tienes que asegurarte de que contraseñas o PINs y claves de cifrado no puedan ser solicitadas desde un controlador del dispositivo. Esto puede parecer lógico, pero es exactamente lo que Bursztein, Picod, y Audebert encontraron en un dispositivo durante la investigación. Fueron capaces de solicitar una contraseña maestra desde uno de los controladores del dispositivo, y con esta contraseña crearon fácilmente un nuevo usuario, obteniendo acceso a todos los archivos almacenados en el dispositivo.

Este ataque permite que hackers con poca experiencia y con un mínimo de recursos puedan desbloquear cualquier dispositivo de este modelo.

Cifrado

El cifrado está en el núcleo del almacenamiento de un USB seguro. La buena noticia es que no es común que un hacker con poca experiencia decida utilizar este vector de ataque y la mayoría de dispositivos cifrados modernos usan algoritmos de cifrado fuerte que son difíciles de romper, incluso cuando no están muy bien implementados.

La mala noticia es que es muy difícil estar seguro de que el fabricante de un dispositivo haya creado un buen cifrado.

Para empezar, para estar seguros, un dispositivo USB debe usar un cifrado AES o una versión estándar más moderna, lo cual no siempre es el caso. Durante el estudio, Bursztein y sus colegas encontraron varios dispositivos que utilizaban cifrados obsoletos como el RC4 y RSA-512. Estos sistemas de cifrado son vulnerables (aunque para romperlos se necesitan varios recursos).

Otros aspectos incluyen la generación aleatoria de claves de cifrado, el uso del generador seguro y aleatorio para la clave y los vectores de inicialización, el uso de un algoritmo seguro para la cadena de cifrado, etc. Sin embargo, esto funciona, mayormente, a los que quieren estar protegidos de espionaje nacional.

Los investigadores hicieron énfasis en que la magia del cifrado está en el hardware, por lo que, es muy difícil saber lo que pasa con el cifrado de un dispositivo y encontrar vulnerabilidades. Por lo tanto, sería de mucha ayuda tener más información sobre este tema en particular.

Almacenamiento

La última categoría de posibles vectores de ataque es la lectura directa de la memoria flash. Puede parecer difícil: el atacante necesita extraer con cuidado el chip de la placa de circuitos del dispositivo y después conectarlo al dispositivo de lectura. En algunos casos, los fabricantes facilitan esta parte mucho y utilizan una tarjeta microSD en vez de un chip soldado.

De hecho, la siguiente parte es mucho más difícil: extraer información de un chip de memoria flash. A nivel de hardware, la memoria flash no almacena los datos como archivos limpios y ordenados, por lo que el atacante tiene mucho trabajo por delante si quiere extraer algo útil de una memoria flash.

Sin embargo, el fabricante puede cometer errores serios, como, por ejemplo, almacenar el código PIN en texto plano en el chip de memoria. Otras posibles acciones vulnerables incluyen almacenar la clave cifrada, el hash del PIN o la clave de acceso del firmware en la memoria del chip, pero estos detalles son relevantes para aquellos que corren peligro de espionaje.

Tal como recalcaron Bursztein y sus colegas, acaban de empezar a investigar esta parte del puzle y en un futuro esperan colaborar con investigaciones sobre el tema. Lo mismo para el proyecto en sí: han invitado a todos a contribuir en la creación de una metodología de auditoría para dispositivos USB seguros y probar tantos modelos de dispositivos como sea posible.

¿Qué podemos hacer mientras tanto para proteger nuestra información almacenada en nuestros USB “seguros”, considerando que nadie puede estar seguro de que sus dispositivos lo sean en realidad? La mejor opción es cifrar los datos nosotros mismos antes de conectarlos a cualquier unidad.

Por ejemplo, nuestro Kaspersky Endpoint Security for Business puede cifrar información con el algoritmo AES-256. Si necesitas transferir datos confidenciales, puedes protegerlos fácilmente con una contraseña, cifrarlos y convertirlos en paquetes autoextraíbles. Gracias al modo portátil especial para el cifrado de archivos, los archivos se pueden leer incluso en ordenadores que no cuentan con productos Kaspersky Security.