|
W32/Bagif, W32/Backup.gif
Bagif es un virus polimórfico reportado el 20 de Febrero del 2003 en Indonesia (+7 GMT). Es catalogado como un dropper (cuentagotas) ya que va liberando otros virus o troyanos que se encuentran contenidos en el mismo. Emplea la técnica EPO (entry point obscuring) y usa el Kewl Mutation Engine, de origen ruso, para su encriptado y desencriptado.Se propaga, en forma oculta, con el archivo NTLOADER.EXE a través de cualquier servicio de Internet: Telnet, IRC, ICQ, FTP, HTTP, Correo, etc. La muestra obtenida nos fue enviada por un miembro del portal:
http://www.indovirus.net (actualmente clausurado)
Es un PE (Portable Ejecutable) e infecta Windows 95/98/NT/Me/2000/XP, incluyendo los servidores NT/2000/XP.
Cuando el archivo infectado es ejecutado,
se auto-copia a la carpeta %System% y
modifica el inicio del archivo ejecutable en la llave de registro:
[HKEY_CLASSES_ROOT\exefile\shell\open\command]
@ = %System%\ntloader.exe "%1" %*"
De este modo el "dropper" se ejecuta cada vez que se activa cualquier
archivo con extensión .EXE,
además con el propósito activarse en cada inicio del sistema, este virus libera
a otro denominado Win32s.exe el cual se
auto-copia en la carpeta de Inicio del sistema infectado:
%Startup%\Win32s.exe
%Startup%
es una variable que corresponde a C:\Windows\Menú
Inicio\Programas\Inicio en Windows 95/98/Me/XP y a C:\Documents
and Settings\carpeta_del_usuario\Menú Inicio\Programas\Inicio en Windows
NT\2000\XP.
Este virus polimórfico emplea las instrucciones FPU
(Floating Point Unit) del procesador 386,
además de algunas emulaciones truculentas.
El FPU (Floating Point Unit) es un chip especialmente diseñado para ejecutar cálculos matemáticos o de comas flotantes que aceleran entre otras, las aplicaciones gráficas.
El virus se desempaqueta en 2 procesos:
En primer lugar, lo hace con parte de su código dentro de un área de apilado y a la cual le transfiere el control. Este código localiza la librería KERNEL32.DLL y obtiene de allí la dirección de 2 funciones API (Application Program Interface). Luego que el virus asigna una porción de memoria, procede a desencriptar su cuerpo principal dentro de esa área, transfiriendo de este modo el control a la misma.
El virus rastrea las unidades de disco de
las redes e intenta infectar todos los archivos con extensión .EXE
y .SCR sin embargo no puede infectar
todos los archivos ejecutables, sino aquellos con ciertas características.
Después de la infección el código del virus se adhiere a la primera
sección del archivo, lo cual no suele ser una típica técnica de
infección.
El virus tan solo puede infectar los archivos que tienen la función ExitProcess()
que es exportada de la librería KERNEL32.DLL y al tratar de infectar busca
esta función de llamada en el área del código de Inicio del archivo y lo
reemplaza con una rutina de llamada de su propio desencriptador.
Consecuentemente el control es únicamente transferido al código del virus,
cuando un archivo infectado termina la función de Salida
El virus no modifica las direcciones del
punto de entrada de un archivo infectado, ni tampoco el código de la
cabecera, como la mayoría de virus lo hacen. Su técnica de EPO (entry point obscuring)
que lo oculta lo hace mucho más difícil de detectar.
Asimismo, evita infectar archivos que comienzan con las siguientes
cadenas:
Los archivos a ser infectados no deben ser menores a 4 KB ni mayores a 2 MB.
También Bagif intenta propagarse a otras estaciones de trabajo en una red local. Enumera y trata de ubicar las carpetas remotas con los siguientes nombres:
Si estas carpetas son halladas, el virus se copia como TSOC32.EXE y modifica el WIN.INI en las estaciones remotas, luego agrega este archivo infectado a la cadena %Startup% y después a la variable RUN del archivo WIN.INI. Consecuentemente los sistemas Windows 9x serán infectadas la próxima vez que se inicie el sistema.
WIN.INI
[windows]
run=c:\%Windir%\tsoc32.exe
Windows NT, 2000 y XP no serán afectados,
a menos que el archivo TSOCK32.EXE sea manualmente ejecutado.
Dentro de su código viral se lee el siguiente texto:
| HI CHUNK OF SH*T ! IT'S ME SUPRA VIRUS BY GRIFIN I HATE SCHOOL & USA KILL 'EM ALL |
Sus payloads son los siguientes:
PER ANTIVIRUS® versión 7.9 con registro de virus al 20 de Febrero del 2003 detecta y elimina eficientemente este gusano.
Nota: existe una diferencia de 12 horas entre Perú (-5 GMT) e Indonesia (+7 GMT)