¿Tu dispositivo USB cifrado es seguro?

¿Estás seguro de que los dispositivos USB que utilizas no revelarán los secretos de tu compañía a los hackers? El problema es que las certificaciones actuales no te lo garantizan.

¿Cómo puedes estar “seguro” de que el USB que utilizas es realmente seguro y que la información que guardas dentro no puede ser extraída? Esa es exactamente la pregunta que los investigadores de Google Ellie bursztein, Jean-Michel Picod y Rémi Audebert se plantearon en su plática sobre “Atacando claves de USB cifrados de la forma más complicada”.

Los investigadores dicen que actualmente, los fabricantes de USBs seguros están siguiendo la certificación estándar FIPS 140, la cual fue desarrollada 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. La certificación incluye una divulgación sobre la seguridad criptográfica y el proceso de validación.

Tal como dijeron 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 dividieron 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 patrocinados por 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, dependiendo en este u otro componente 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. Veamos las categorías.

Diseño y fabricación

Primero que nada, todos los dispositivos USB cifrados deben estar diseñados y fabricados de una forma que defina cierto nivel de protección. Para empezar, estaría bien que un dispositivo cifrado fuese inviolable, deberías ver algunos indicadores de compromiso si alguien se ha metido con tu dispositivo USB donde tienes todos tus preciados archivos.

Mientras más sencillo sea acceder a los componentes electrónicos, más sencillo será para el criminal investigar el hardware y encontrar vulnerabilidades en el dispositivo. Para prevenir esto, la placa de circuito debería ser sumergida en resina epoxy.

Es importante mencionar que la resina epoxy debe ser exactamente esa, no una sustituta: Los investigadores descubrieron que, por lo menos en algunos casos, los fabricantes alegan haber utilizado epoxy, cuando en realidad utilizaron un polímero menos robusto. Como resultado, es muy fácil remover la capa con acetona, permitiendo el acceso total al hardware.

En caso de hackear hardware, una vez que consiguen el acceso a los electrónicos, lo primero que hace cualquier hacker es ver las marcas de componentes. Es lo esencial para encontrar manuales y especificaciones, y explorar posibilidades para un ataque. Si todos los nombres de los modelos, números de series y demás, fueran removidos con cuidado de sus chips, los mismos hackers terminarían con una caja negra en las manos, tendrían que hacer una investigación más compleja para saber qué hackeos se pueden aplicar a ese dispositivo.

A veces, incluso los fabricantes intentan eliminar las marcas de componentes de los chips, sin embargo, no lo consiguen hacer bien.

Es un trabajo complicado reemplazar el firmware con una versión ajustada que permita a los hackers traspasar esa protección. Sin embargo, los hackers con habilidades y recursos podrían hacerlo. En el peor de los casos, este tipo de ataque es replicable: Una vez que los hackers aplicaran ingeniería inversa al firmware y descubrieran cómo hacer los ajustes requeridos, podrían hackear cualquier dispositivo del mismo modelo.

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

No cualquier hacker puede llegar tan lejos como para falsificar un USB. Pero, repito, los hackers patrocinados por el estado, sí podrían. Por lo tanto, si quieres mantener tus secretos protegidos de los altos niveles de espionaje, necesitarás dispositivos USB cifrados que sean diseñados de forma que te proteja de la falsificación.

Entrada

Otro problema está en el nivel de protección en la parte del USB que autentifica a 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 del hardware, o hackear un algoritmo cifrado. En segundo lugar, existe una posibilidad de que el fabricante haya tenido errores al momento de desarrollar el 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 autenticar a un usuario: utilizando un PIN pad, en un sistema inalámbrico, con huella dactilar, o utilizando una entrada de PIN.

El primer error que un fabricante puede cometer es almacenar el PIN en el software. Incluso un hacker sin habilidad podría descubrir cómo extraerlo y hackear no solo el dispositivo, sino también cualquier otro del mismo modelo. En algunos casos, el software puede tener vulnerabilidades que pueden ser utilizados por los ataques de replay, este fue el caso de varios dispositivos FIPS certificados analizado por los investigadores del German SySS en 2009.

Los PIN pads pueden ser víctimas de una explotación simple, por el desgaste de ciertos botones que demuestran su uso, revelando las combinaciones que son utilizadas para el desbloqueo del dispositivo.

Los sistemas inalámbricos son incluso peor: Pueden ser clonadas utilizando 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 a éste.

Los investigadores demostraron cuatro métodos durante la charla de Black Hat:

En cuanto a huellas dactilares, pueden parecer un factor de autenticación fuerte, pero en realidad están muy lejos de la perfección. Hay una variedad de formas de clonación de 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 un maniquí con una impresora de inyección de tinta. 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 demostraron 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 inspeccionado por Bursztein y sus colegas, es vulnerable a un ataque de replay. Cuando el sensor de este dispositivo escanea una huella dactilar legítima, este simplemente envía un comando a 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 habilidades utilizará estos trucos para acceder a tus archivos. Y si no proteges tus secretos de hackers patrocinados por el estado con mejores recursos y habilidades, definitivamente tendrás que considerar 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 que el drive se quemara.

Tampoco estaría de más asegurarse de que el dispositivo se bloquee inmediatamente al desconectarlo de un puerto USB, después de 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 incluso hackers, no muy capaces y con un mínimo de recursos, puedan desbloquear cualquier dispositivo de este modelo.

Cifrado

El cifrado es, obviamente, el núcleo del almacenamiento de un USB seguro. La buena noticia es que, no es común que un hacker oportunista sin suficientes recursos 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 asegurarse de que el fabricante de un dispositivo haya hecho un buen cifrado.

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

Otros aspectos incluyen una generación aleatoria de claves de cifrado, uso del generador de seguridad aleatorio para la clave y los vectores de inicialización, uso de un algoritmo seguro para la cadena de cifrado, etc. Sin embargo, esto aplica, mayormente, a aquellos 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 sonar como algo 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 hacen esta parte mucho más sencilla, utilizando 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. Un nivel más complicado, la memoria flash no almacena datos de forma limpia y ordenada como lo son los archivos, por lo tanto, el atacante tiene mucho trabajo por delante si quiere extraer algo útil de una memoria flash.

Sin embargo, el fabricante puede cometer errores serios, por ejemplo, almacenar el código PIN en texto plano en el chip de la memoria. Otras posibles acciones vulnerables incluyen almacenar la clave cifrada, el PIN hash, o la clave de acceso del firmware en la memoria del chip, pero estos detalles son relevantes para aquellos que están en 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í: invitaron a todos a contribuir para hacer una metodología de auditoría para dispositivos USB seguros y testear tantos modelos de dispositivos posibles como marco de referencia.

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

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 computadoras que no cuentan con productos de Kaspersky Security.

Consejos