El USB como caballo de Troya

Francisco Javier Almellones    24 septiembre, 2014

Todos usamos lápices USB o discos duros externos para compartir información. Se los prestamos a los proveedores que nos visitan para que nos pasen esa presentación que acaban de hacernos, a nuestros compañeros de trabajo para que nos copien la última plantilla de un documento, a nuestros familiares para que vean las fotos de nuestro último viaje y, así, en infinidad de ocasiones, diferente tipo de almacenamiento externo rueda de mano en mano, tanto de amigos como de desconocidos.

Confiamos en nuestra última versión de antivirus para que nos proteja de cualquier posible infección de malware que pudiera contraer nuestra memoria USB tras el préstamo. Pero, ¿qué pasaría si la infección no fuera detectable por ningún antivirus?, ¿y si lo realmente peligroso no estuviera en el contenido sino en el propio dispositivo?

Lamento deciros que, lejos de ser una hipótesis, es lo que han descubierto recientemente Karsten Nohl, Sasha KriBler y Jakob Lell, consultores de seguridad de la empresa Security Research Labs. Mediante un malware que han denominado “BadUSB” han demostrado, de forma práctica, que la seguridad de los dispositivos USB está completamente comprometida. La modificación de los dispositivos permitiría prácticamente cualquier acción sobre el equipo: desde la modificación de ficheros hasta la redirección del tráfico de Internet.

Como mencionaba Joaquín Gómez en su Radiografía de las amenazas más comunes para empresas, esta brecha de seguridad ha sido presentada el mes pasado en el evento Black Hat celebrado en Las Vegas. A pesar de ello, tengo la impresión de que el asunto no ha tenido aún tanta repercusión como la gravedad que, a mi criterio, reviste la situación.

No se trata de un troyano al uso, ya que no reside en ningún contenido del espacio de almacenamiento USB que el usuario puede usar, sino en el propio firmware que controla las funciones básicas del aparato; un lugar donde los antivirus y antimalwares actuales no suelen ser capaces de buscar. Esto hace que la única forma de evitar una posible infección sea… ¡no prestar el dispositivo USB! Claro, que tampoco deberíamos fiarnos de ninguno que nos presten porque el código del firmware modificado podría perfectamente contaminar nuestro ordenador como un virus clásico, de éste pasar a cualquier otro dispositivo que se conecte a un puerto USB del equipo, y provocar una cadena de contagios que ríete tú de la gripe aviar.

Por si esto fuera poco, el alcance de la vulnerabilidad no termina ahí. Me he centrado en el ejemplo de los pendrives y discos duros externos pero, al ser el código del firmware lo que está afectado, potencialmente cualquier dispositivo USB es susceptible de ser contaminado para modificar su comportamiento. Esto hará que huyamos como de la peste de cualquier elemento que se conecte por USB disponible en un entorno compartido: teclados, ratones, impresoras, escáneres, mandos para juegos, proyectores, webcams, etc.

¿Cómo funciona?

De forma resumida y sin entrar en detalles muy técnicos, los descubridores han conseguido extraer el firmware de un dispositivo y convertirlo en lenguaje “legible” mediante desensamblado. Posteriormente han localizado los puntos vulnerables en los que es posible insertar código malicioso que, una vez compilado, es inyectado en áreas no usadas por el firmware original. Con esto se dispone de un nuevo software alterado al antojo del atacante.

Uno de los posibles usos de esta modificación es la suplantación de identidad. El dispositivo infectado puede simular ser cualquier otro, ya que todos ellos tienen una serie de descriptores que los identifican y, además, como parte del protocolo de “presentación” cuando se conectan al equipo, hay una enumeración de capacidades, algo así como “soy una webcam y puedo proporcionar audio y video”.

Un ejemplo “muy práctico” que nos demuestra la gravedad de la situación: es posible modificar el firmware de un teclado y así capturar la password de un superusuario cuando éste la introduce para desbloquear el protector de pantalla. Así, se obtiene acceso total al equipo y se amplían las opciones de control del mismo.

La solución más óptima que se propone, al menos para evitar el contagio en cadena, es deshabilitar la actualización de firmwares a nivel hardware.

Podéis descargaros un informe más detallado y realmente instructivo en la web de SR Labs: “BadUSB – On accesories that turn evil”. También está disponible en Youtube el video de la presentación en el Black Hat.

Si el título de este post ya sonaba alarmante, la realidad es aún peor. O se encuentra una solución en breve o, más pronto que tarde, todos evitaremos compartir información y equipamiento USB. Pero no os preocupéis porque aún podemos parafrasear esa gran frase de Casablanca y decir aquello de “siempre nos quedará… Bluetooth”.

Imagen: Jacobo García

Comentarios

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *