24 de marzo de 2016

USB THIEF. Nuevo troyano USB capaz de evitar su detección

Este troyano ha sido detectado por la empresa de seguridad ESET y ha recibido el nombre de USB Thief debido a que su finalidad es la de robar datos desde una memoria USB maliciosa. 
Mientras que el malware convencional utiliza prácticas tradicionales para llevar a cabo la infección, este nuevo troyano hace uso de aplicaciones portables para llevar a cabo su tarea. Cuando el usuario lleva en la memoria USB una aplicación portable, por ejemplo, Firefox o Notepad++, el troyano se configura automáticamente para que, al abrirla, este se inserte en la cadena de ejecución como un plugin o una librería, quedando así funcionando en segundo plano.
Cómo se protege y oculta USB Thief de los motores antivirus
Además de la ingeniosa forma de ejecutarse, este troyano es capaz de evadir los análisis de los principales motores antivirus. Para ello hace uso de dos técnicas diferentes:
  1. La primera de ellas es que los binarios están cifrados con un algoritmo AES de 128 bits.
  2. La segunda de ellas es que el nombre de los archivos se genera aleatoriamente a partir de elementos criptográficos, por lo que no pueden “deducirse”.
La clave de cifrado se calcula a partir del identificador “ID” único de la memoria USB donde se aloja, por lo que el código de cada troyano es único, aunque eso conlleva a que este también solo podrá ser ejecutado desde esa única memoria, y no infectar otras memorias USB ni otras plataformas. De esta manera, los motores antivirus no pueden detectar el malware analizándolo ni por comportamiento ni por nombre de archivo. Además, este también queda protegido de la ingeniería inversa.
El malware está formado por 4 ejecutables y dos archivos de configuración, los cuales se ejecutan de la siguiente manera:
  1. Primer binario -loader: Este primer loader busca engañar al usuario para que lo ejecute (haciéndose pasar por una aplicación portable). También comprueba que se está ejecutando en una memoria USB y que esta no está protegida contra escritura, ya que los datos se almacenan en ella.
  2. Segundo binario -loader: Este segundo loader utiliza el hash generado con el primer loader para ejecutarse y cargar el primer archivo de configuración. A su vez controla que el malware no se ejecuta sobre un depurador, finalizando en caso de que el proceso padre no sea el original.
  3. Tercer binario -loader: Este tercer loader, cargado a partir de los datos del segundo, se encarga de comprobar si hay un antivirus en el sistema. De ser así se detiene automáticamente. Si todo es correcto, este loader carga el segundo fichero de configuración y hace la llamada al troyano en sí.
  4. Cuarto binario – Troyano: Este cuarto binario es el troyano en sí. Cuando el tercer loader hace la llamada, este inyecta la función de robo de datos en el proceso “%windir%\system32\svchost.exe -k netsvcs” y comienza ya a recopilarlos todos, guardándolos en la memoria USB desde la que se está ejecutando bajo un identificador único calculado según los datos del ordenador de la víctima.ejecución usb thief
Como podemos ver, USB Thief está especialmente enfocado a ordenadores que no están conectados a Internet, ya que se requiere acceso físico al equipo o servidor. Además, al ser totalmente portable, no deja ni una sola evidencia de que ha estado ahí, es totalmente invisible.
Mientras que este troyano se centra principalmente en el robo de datos personales, los expertos de seguridad aseguran que sería muy sencillo implementar otras finalidades, por ejemplo, habilitar una puerta trasera o la instalación de un segundo troyano mucho más agresivo y peligroso que el primero.
Fuente: We Live Security