ESTE SERVICIO PUEDE CONTENER TRADUCCIONES DE GOOGLE. GOOGLE NIEGA CUALQUIER RESPONSABILIDAD RELACIONADA CON LAS TRADUCCIONES, EXPRESA O IMPLÍCITA, INCLUYENDO CUALQUIER RESPONSABILIDAD ACERCA DE LA PRECISIÓN, LA CONFIABILIDAD Y CUALQUIER RESPONSABILIDAD IMPLÍCITA DE COMERCIABILIDAD, IDONEIDAD PARA UN PROPÓSITO EN PARTICULAR Y DE NO INFRACCIÓN.

Por su comodidad, se ha traducido el sitio web de Kaspersky Lab utilizando un software de traducción de Google Translate. Se hicieron unos esfuerzos razonables para proporcionar una traducción precisa; no obstante, las traducciones automáticas no son perfectas y no hay ninguna intención de sustituir el trabajo de los traductores. Se proporcionan estas traducciones como un servicio para los usuarios del sitio web de Kaspersky Lab y se han publicado tal "como es". No hay ninguna garantía, expresa o implícita, acerca de la precisión, la confiabilidad o exactitud de cualquier traducción desde el inglés a cualquier otro idioma. La traducción de algunos contenidos (imágenes, videos, Flash, etc) podrían no ser totalmente fiel debido a las limitaciones del software de traducción.

Virus.Multi.Cocaine

Clase Virus
Plataforma Multi
Descripción

Detalles técnicos

Estos son los archivos Windows PE parásitos y el infectador de plantillas normales de MS Word con capacidad de propagación de correo electrónico, de aproximadamente 22 Kb de longitud. El virus tiene tres instancias: en los archivos EXE de Windows PE, en la plantilla Word NORMAL y como archivo adjunto en los mensajes de correo electrónico.

El código de virus en los archivos PE EXE infectados es su instancia principal. Cuando se ejecuta, el virus busca archivos PE EXE en los directorios actuales y de Windows y los infecta. El virus también deja el NORMAL.DOT infectado al directorio de MS Word desde su instancia de PE EXE, y envía correos electrónicos infectados. La instancia de virus en la plantilla NORMAL en cada cierre de documento cae y ejecuta el archivo PE EXE infectado, y no puede infectar otros documentos y plantillas. El código de virus en los correos electrónicos aparece como archivo adjunto infectado PE EXE Archivo ejecutable de Windows con nombre aleatorio o plantilla NORMAL infectada.

El virus es residente de memoria por proceso. Esto significa que la copia del virus puede permanecer en la memoria por mucho tiempo hasta que finalice la aplicación infectada. En caso de que solo se infecten las aplicaciones de "corta vida", el código de virus no se presenta en la memoria del sistema por mucho tiempo. En caso de que una aplicación en uso permanente esté infectada, el virus está activo durante mucho tiempo, engancha las funciones de Windows e infecta los archivos PE EXE que accedieron y enviaron mensajes de correo electrónico.

El virus es polimórfico en los archivos PE, así como en la plantilla Word NORMAL. El virus tiene dos motores polimórficos en su código EXE: el primero de ellos genera un bucle de descifrado polimórfico en los archivos PE EXE infectados, el segundo hace que el programa de macrovirus en el NORMAL.DOT también sea polimórfico.

El virus tiene una rutina de carga útil que se ejecuta cuando un archivo infectado se ejecuta en cuatro meses cuando se infectó. Esta rutina muestra los cuadros de mensaje que tienen el encabezado "W32 / Wm.Cocaine" y el texto que se selecciona al azar entre siete variantes:


Tu vida arde más rápido, obedece a tu maestro …
Pica tu desayuno en un espejo …
Venas que bombean con miedo, chupando más oscuro claro …
Pruébame, verás, más es todo lo que necesitas …
Voy a ocupar, te ayudaré a morir …
Voy a correr a través de ti, ahora yo también te rijo …
Maestro de marionetas, estoy tirando de tus hilos …

El virus presta atención a los programas antivirus e intenta desactivarlos. Cada vez que se ejecuta un archivo infectado y el virus instala su copia residente por proceso, busca los archivos de datos antivirus en el directorio actual y los elimina. Los nombres de estos archivos son los siguientes: KERNEL.AVC, SIGN.DEF, FIND.DRV, NOD32.000, DSAVIO32.DLL, SCAN.DAT, VIRSCAN.DAT (AVP, DSAV, NOD, SCAN y otros datos de antivirus archivos). El virus también localiza y finaliza la versión anterior del escáner en tiempo real de AVP Monitor.

La versión de virus conocida tiene errores y no puede propagarse desde la instancia de macro de Word al ejecutable de Windows. También tiene un error en la rutina de infección PE EXE y corrompe algunos archivos ejecutables de WinNT.

El virus tiene un texto de "copyright":


(c) Vecna

Algunas rutinas de virus (especialmente las macro) están relacionadas con el virus multiplataforma "Fabi" , y algunos archivos infectados pueden detectarse por el nombre de este virus.

Detalles técnicos

El virus tiene un tamaño bastante grande para un programa escrito en Assembler, alrededor de 22 Kb, y tiene muchas rutinas que son bastante interesantes desde el punto de vista técnico.

Ejecución de EXE infectado

Cuando un archivo infectado toma el control, se ejecutan los bucles de desencriptación polimórficos. Descifran el código de virus capa por capa (el virus está encriptado por varios bucles, de dos a cinco) y pasan el control a la rutina de instalación del virus. Es necesario tener en cuenta que varios bloques de virus se mantienen cifrados. El virus descifra y accede a ellos en caso de necesidad, y luego encripta nuevamente. Estos bloques son datos de infección de MS Word y rutina, así como motor polimórfico PE EXE.

La rutina de instalación del virus busca las direcciones necesarias de las funciones de la API de Windows que luego usa el virus. La lista de estas funciones es bastante larga, esto se debe a la lista de cosas que hace el virus para propagarse. La lista de funciones que busca el virus está a continuación:


Exportado por la lista de Funciones
———– ————–
KERNEL32.DLL: GetProcAddress GetModuleHandleA CreateProcessA
CreateFileA WinExec CloseHandle LoadLibraryA FreeLibrary
CreateFileMappingA MapViewOfFile UnmapViewOfFile
FindFirstFileA FindNextFileA FindClose SetEndOfFile
VirtualAlloc VirtualFree GetSystemTime
GetWindowsDirectoryA GetSystemDirectoryA
GetCurrentDirectoryA SetFileAttributesA SetFileTime
ExitProcess GetCurrentProcess WriteProcessMemory WriteFile
DeleteFileA Sleep CreateThread GetFileSize SetFilePointer
USER32.DLL: MessageBoxA FindWindowA PostMessageA
ADVAPI32: RegSetValueExA RegCreateKeyExA RegOpenKeyExA
RegQueryValueExA RegCloseKey
MAPI32.DLL: MAPISendMail

El virus obtiene las direcciones de estas funciones mediante el truco estándar del virus de Windows: localiza la imagen en KERNEL32.DLL en la memoria de Windows, escanea su tabla de Exportación y obtiene direcciones de dos funciones: GetModuleHandle y GetProcAddress. Al usar estas dos funciones, el virus puede localizar fácilmente todas las direcciones de otras funciones necesarias. La característica más interesante de esta rutina es el hecho de que este es el primer virus que procesa no solo las direcciones Win95 / 98 y WinNT mientras busca la imagen KERNEL32.DLL, sino que también presta atención a las direcciones Win2000.

Luego, el virus localiza e infecta el MS Word, luego busca archivos PE EXE y los infecta, luego engancha un conjunto de eventos del sistema (acceso a archivos y correos electrónicos) que se usa para localizar e infectar más archivos, así como propagar copias de virus a Internet en correos electrónicos adjuntos.

Infectar MS Word

La primera rutina de infección que activa el virus es MS Word que afecta a la rutina, si está instalada en el sistema. En primer lugar, aquí el virus comprueba la presencia del archivo C: ANCEV.SYS.

El archivo C: ANCEV.SYS ("ANCEV" = "VECNA" escrito hacia atrás) tiene un propósito especial. Este archivo se crea cuando se completa la rutina de infección de la plantilla de MS Word. Por lo tanto, esta presencia de archivo significa que se encontró MS Word y se infectó la plantilla NORMAL.DOT. En este caso, el virus al enviar correos electrónicos envía la plantilla NORMAL.DOT pero no el cuentagotas EXE infectado.

Entonces, el virus busca este archivo en la parte superior de la rutina de infección de MS Word. Si no existe, el virus continúa la infección. Si se encuentra este archivo, el virus aleatoriamente en un caso de diez continúa la infección, y en nueve casos de los diez deja la rutina de infección. Tha significa que en un caso de diez, MS Word NORMAL.DOT volverá a infectarse de todos modos.

El virus luego deshabilita la protección de Word VirusWarning al modificar las claves de registro del sistema donde Word almacena su configuración:


SOFTWAREMicrosoftOffice8.0WordOptions, EnableMacroVirusProtection

Luego, el virus obtiene el directorio de plantillas de Word al leer el registro del sistema:


SOFTWAREMicrosoftOffice8.0CommonFileNewLocalTemplates

y elimina las plantillas NORMAL.DOT, y luego crea un nuevo archivo de plantilla NORMAL.DOT – infectado. El NORMAL.DOT infectado contiene una macro pequeña dentro. Esta macro tiene el nombre automático de Word "AutoExec", se ejecutará automáticamente en el siguiente inicio de Word e importará la macro del virus principal desde el archivo C: COCAINE.SYS.

El archivo C: COCAINE.SYS es creado por el virus justo después de sobrescribir la plantilla NORMAL.DOT. Este archivo SYS es un archivo de texto que contiene el código fuente del programa VBA. Esta fuente es extraída por el virus de su código, mezclada con instrucciones VBA basura (polimórficas) y anexada por cuentagotas PE EXE infectada convertida en cadenas ASCII.

Entonces, la rutina de infección de MS Word hace su trabajo en dos pasos. En primer lugar, el virus reemplaza el NORMAL.DOT original por uno nuevo que contiene el programa de macro "AutoExec" (cargador) que importa el código de virus completo del archivo C: COCAINE.SYS y lo completa con el código del virus de migración del archivo PE EXE a la plantilla de MS Word.

De Word a EXE

Para eliminar el archivo PE EXE de su instancia de plantilla de Word, el virus usa el truco de los macrovirus estándar. Crea dos archivos: el primero es el archivo C: COCAINE.SRC con la imagen del archivo PE EXE infectado convertido a formato ASCII, y el segundo es un lote DOS con nombre aleatorio. Este archivo por lotes contiene un conjunto de instrucciones que ejecutan la utilidad DEBUG de DOS que convierte el volcado ASCII en formato binario PE EXE y lo ejecuta.

Entonces, el virus salta a Windows de la plantilla de Word infectada.

Infecting PE EXE files

Cuando MS Word se ve afectado, el virus va a la rutina de infección de archivos PE EXE. El virus busca archivos PE EXE en los directorios actuales y de Windows y los infecta. Los únicos archivos infectados que tienen extensiones de nombre de archivo .EXE o .SCR.

Luego, el virus busca el navegador y el programa de correo instalados y los infecta también. El virus los ubica mediante las claves de registro del sistema en el almacenamiento HKEY_LOCAL_MACHINE:


SOFTWAREClasseshtmlfileshellopencommand
SOFTWAREClassesmailtoshellopencommand

El virus necesita estos archivos para ser infectado para activar sus rutinas de infección de Internet. Cuando estas aplicaciones de acceso a Internet están infectadas, la copia de virus está activa en la memoria por mucho tiempo exactamente en el momento en que un usuario se conecta a Internet. Esto es necesario para que el virus se dé cuenta de su capacidad de propagación de Internet.

Mecanismo de infección PE EXE

El virus verifica varias condiciones antes de infectar el archivo. Primero: la longitud del archivo no debe ser divisible por 101 (es una protección contra virus para evitar infecciones múltiples, los archivos PE EXE ya infectados tienen tal longitud). Segundo: cuando el virus busca archivos EXE en los directorios actuales y de Windows para infectarlos, el nombre del archivo no puede contener letras o dígitos 'V', aquí el virus evita la mayoría de los escáneres antivirus populares y la infección por "archivos de cabra".

Si la primera sección tiene un tamaño suficientemente grande (más de 2304 bytes), el virus escribe allí varios bloques de código no deseado que pasa el control bloque por bloque a los principales bucles de descifrado de virus. Se escriben ocho bloques en los archivos cuando el virus los infecta:


+ ———— +
| |
| Encabezado PE | ————— +
| ———— | |
| + —– + <- + | |
| | Junk2 | || |
| + —– + – + || Punto de entrada |
| + —– + ||| <————— +
|| Junk1 | |||
| + —– + —- + |
| | |
| + —– + <- + |
|| Junk3 | |
| + —– + —- + |
| V |
| . . . |
| + —– + |
| + —- | Junk8 ||
|| + —– + |
| V |
| ———— |
| Código de virus |
| |
+ ———— +

En este caso, el virus no modifica la dirección del punto de entrada del programa, pero necesita restaurar todos los bloques sobreescritos del archivo de host antes de devolver el control al procedimiento de entrada original.

Si la primera sección es corta, el control va directamente al código del virus. En este caso, el virus modifica la dirección de entrada del programa para obtener el control cuando se ejecutan los archivos infectados.

El código del virus en sí está encriptado por varios (de dos a cinco) bucles polimórficos. El motor polimórfico en el virus es bastante fuerte y produce aproximadamente 2 Kb de bucles polimórficos.

El virus también revisa la sección Importar para obtener las funciones GetProcAddress, GetModuleHandle, CreateProcessA, WinExec y MAPISendMail cuando se ejecuta la infección.

Después de todo, el virus escribe su código cifrado al final de la última sección del archivo y aumenta el tamaño de la sección al actualizar el encabezado PE.

Eventos interceptores

Cuando se completan las rutinas de infección directa de Word y PE EXE, el virus engancha varias funciones de Windows y permanece en la memoria de Windows como parte del programa de host. El virus engancha dos funciones de acceso a archivos WinExec y CreateProcessA, si son importadas por el programa host desde KERNEL32.DLL. Cuando estas funciones obtienen el control (se ejecuta un programa), el virus obtiene el nombre del archivo del programa, obtiene su directorio, busca e infecta los archivos PE EXE en este directorio.

Mandando correos electrónicos

El código residente de virus por proceso también ejecuta el hilo de infección de correo electrónico, engancha MAPISendMail que se exporta desde MAPI32.DLL, "connect" y "recv" desde WSOCK32.DLL y GetProcAddress desde KERNEL32.DLL.

El primer gancho es utilizado por el virus para enviar su copia a Internet. Cuando el virus intercepta este evento, busca los datos adjuntos en el mensaje. Si no hay ninguna conexión, el virus se agrega al mensaje infectado NORMAL.DOT o archivo PE EXE infectado (este último se crea en el disco en el archivo C: ENIACOC.SYS).

El virus utiliza los enlaces "GetProcAddress", "connect" y "recv" para realizar un segundo método de envío de correos electrónicos infectados. Cuando llega un mensaje, el virus escanea su encabezado para el campo "mailto:", obtiene la dirección de allí y la almacena en su propia base de datos.

El hilo de infección cuando toma control busca la dirección de correo electrónico capturada por las putas "conectar" y "recv", calcula su CRC y se compara con su base de datos "direcciones ya infectadas" que está almacenada en el archivo BRSCBC.DAT en el directorio de sistema de Windows. Si aún no se envió esta dirección, el virus la agrega a su base de datos BRSCBC.DAT, crea un mensaje con la plantilla NORMAL o el archivo PE EXE infectado y lo envía utilizando la función MAPISendMail. El campo de asunto para el mensaje se selecciona al azar de variantes:


Página de Kewl!
Mejora de tu página
Tu página r0x0r!
Debes de ver esto…
¡Cosas secretas!

Al usar la base de datos BRSCBC.DAT, el virus evita los envíos duplicados, pero en cada programa infectado ejecuta el virus según su contador aleatorio, elimina este archivo y borra la base de datos "do-not-send".

La "GetProcAddress" que también está enganchada por la copia TSR del virus se usa solo para interceptar las funciones "conectar" y "recv" WSOCK32.DLL, si una aplicación no importa estas rutinas "por defecto", sino que las activa en caso de necesidad. Para hacer eso, el gancho del virus "GetProcAddress" intercepta accesos para "conectar" y "recv" las direcciones de las funciones de WSOCK32.DLL. Si una aplicación intenta obtener direcciones de estas rutinas para usar las conexiones a Internet, el virus devuelve direcciones de sus propias "hooks" de "conexión" y "recv", y así intercepta la conexión a Internet.


Enlace al original