Como sabemos los creadores de códigos maliciosos inventan día a día nuevas formas de propagación e infección para sus amenazas. La mayoría del malware que vemos en la actualidad esta orientado a la búsqueda de un beneficio económico para su creador, utilizando estafas, engaños o robos para hacerlo. En menor medida existen códigos maliciosos cuyo objetivo es el de destruir o molestar. Hace ya muchos años, en épocas del sistema operativo MS-DOS cuando aun no existía internet, los virus se propagaban en diskettes y muchos de ellos tenían como única finalidad el formateo del disco rígido o el borrado de información, por citar solo alguna de sus características.
En este post no mostraremos ninguna técnica novedosa ni de ultima generación sino que veremos como utilizando técnicas Old-School (vieja escuela) un archivo de procesamiento por lotes .bat logra ocultar un archivo ejecutable en texto plano. La muestra que analizaremos llego a nuestro laboratorio enviado por un usuario de nuestro producto.
Al analizar el archivo.bat se ven en el comienzo instrucciones de la consola de MS-DOS utilizadas para realizar copia de archivos, cambiar atributos y escribir el contenido de un archivo a otro. Se utiliza el comando attrib -s -h -r al archivo autoexec.bat, acción sospechosa ya que el archivo autoexec.bat se ejecuta automáticamente al iniciar la computadora y en este caso se le cambian los permisos de archivo de solo lectura, archivo de sistema y archivo oculto para poder copiar código malicioso en el.
La parte mas interesante es la forma de crear un archivo a partir de todos sus bytes en texto plano y transformarlo en un ejecutable, en este caso como veremos, el archivo creado es el conocido compresor .zip , pkzip de la empresa PKWARE Inc.
Por cuestiones de tamaño de la imagen solo mostraremos las primeras y ultimas 4 lineas de bytes que conforman el ejecutable del pkzip. Para mas claridad veremos en la siguiente imagen que significan esos bytes en código ASCII.
Luego de crear el ejecutable pkzip, realiza la "infección" con una serie de instrucciones for las cuales se focalizan en los archivos .bat y .zip de determinados directorios. Otro for es el encargado de copiar el archivo infectado a todas las unidades para continuar su propagación.
Otra característica es que solo se ejecuta si encuentra en la fecha el numero "30" utilizando la siguiente linea de código.
En cuanto a su detección, esta amenaza es identificada por ESET Nod32 Antivirus como BAT/Agent.NAI virus.
Como vimos, es un código malicioso muy simple, utilizando batch, bien al estilo de la vieja escuela del MS-DOS, pero aun hoy en día es funcional. Esto nos demuestra que no se necesita una alta complejidad para lograr crear un código malicioso portable y efectivo.
Juan Esteban Forgia
Malware Analyst