Tras haber advertido anteriormente acerca del peligro de virus
como Galadriel o Girigat, HispaSec informa a sus suscriptores,
una vez más en primicia, de la aparición de «Cholera», un nuevo
agente infeccioso capaz de afectar a sistemas Win32, que, a
juzgar por sus características, podría extenderse con gran
rapidez y aparecer en poco tiempo en las listas «in the wild».
Según la información que hemos podido encontrar en el website
de GriYo, conocido miembro de 29A y autor de «Cholera», sería
más correcto hablar de lo que él llama proyecto «SIMBIOSIS»,
que consiste en un i-worm -el propio «Cholera»- que sirve de
portador para un virus, denominado «CTX». En HispaSec hemos
optado por referirnos a este agente infeccioso como «Cholera»,
ya que, sin duda alguna, las infecciones que se produzcan a
partir del virus «CTX» habrán tenido origen en este i-worm.
«Cholera» llega a nuevos ordenadores por medio de mensajes de
correo electrónico, en forma de attach, como «SETUP.EXE», con
el clásico icono de programas de instalación autoexpandibles
(una caja abierta con un icono de programa de fondo). Estos
mensajes tienen como único contenido un smiley («:)»), lo que
nos hace pensar que, afortunadamente, serán pocos los que,
tras recibir el e-mail, se aventuren a ejecutar el fichero,
si bien es cierto que su tentador aspecto puede llevar a más
de uno a saciar su curiosidad.
Quienes pertenezcan a este último grupo, además de permitir
una infección vírica, quedarán decepcionados al ver que el
programa instalador no ha llegado en óptimas condiciones a
su ordenador… aparentemente. Esta inteligente artimaña le
sirve a «Cholera» para eliminar posibles sospechas, ya que
es el propio i-worm el que muestra el siguiente mensaje de
error, haciendo pensar que en realidad proviene de WinZip:
Cannot open file: it does not appear to be a valid archive.
If you downloaded this file, try downloading the file again.
Mientras esto sucede de cara al usuario, «Cholera» procede a
desencriptar todas aquellas cadenas de texto o constantes,
tales como nombres de APIs, susceptibles de levantar alguna
clase de sospecha a aquellos usuarios avanzados que, antes de
ejecutar el programa, hubiesen comprobado su contenido con
un editor hexadecimal. Quizás debido a que «Cholera» está
escrito en C++, el bucle de encriptación que protege a estas
cadenas es extremadamente simple, aunque siempre sorprende
una protección de estas características bajo la firma de un
escritor de virus que acostumbra a incluir mecanismos de
polimorfismo en todas sus creaciones.
Tras este importante paso, el i-worm «Cholera» se dispone a
lanzar un proceso multihilo, en forma de «split», para así
trabajar, por una parte, en cada una de las unidades de la
máquina infectada y, por la otra, en todas aquellas unidades
compartidas accesibles desde dicha máquina por medio de los
recursos en red. El funcionamiento de ambos «threads» está
basado en lo mismo: proceder iterativamente por cada una de
las unidades lógicas de cada máquina, comprobar cuáles de
ellas son discos duros y, por último, localizar el fichero
WIN.INI. Sorprende el hecho de que «Cholera», para llevar a
cabo este último cometido, compruebe la existencia de los
directorios «\WINDOWS», «\WIN95», «\WIN98», «\WIN» Y «\WINNT»
en lugar de emplear la conocida API «GetWindowsDirectory».
En cualquier caso, una vez localizado el fichero WIN.INI,
el i-worm busca en su interior el comando «RUN=», tras el
cual introduce su nombre y ubicación, con el fin de tener
asegurada su ejecución en posteriores arranques.
Es importante resaltar que el autor de «Cholera» ha tenido en
cuenta el hecho de que, bajo NT, el anterior comando pertenece
al registro de configuraciones y no a WIN.INI, de manera que
el i-worm mantiene también aquí su compatibilidad Win32. Esta
simple idea que acabamos de describir dota a «Cholera» de una
gran rapidez de expansión a través de redes locales, y en tan
sólo unos segundos el i-worm puede haber contagiado, sin ir
más lejos, a la redacción de un periódico al completo. Lo más
peligroso no es esto, sino que el radio de acción del i-worm
se vería multiplicado automáticamente por tantas veces como
número de ordenadores perteneciesen a esa red.
Una vez que «Cholera» ha asegurado su propia supervivencia y
la de «CTX» en las unidades locales, falta dar el último y
más peligroso paso: la propagación por e-mail. Este proceso
no tiene lugar hasta la siguiente ocasión en la que alguno de
los ordenadores vuelve a arrancar. Es entonces cuando «RUN=»
activa al i-worm y éste permanece como una tarea activa en
background, atenta a la ejecución de aplicaciones de Internet
tales como CuteFTP, Internet Explorer, mIRC, Outlook Express
o Telnet, cuya presencia es prácticamente sintomática de
algún tipo de actividad en la red.
Es en este momento cuando «Cholera», por medio del registro
de configuraciones de Windows, extrae datos tales como el
nombre de usuario, el nombre de dominio, y el servidor SMTP
empleados por Outlook Express, con el fin de emplearlos para
enviarse a distintas direcciones de correo sin levantar tipo
alguno de sospecha. El autor de «Cholera» se jacta de emplear
sus propio motor de SMTP para no depender de aplicaciones
como Outlook Express o de las rutinas MAPI del sistema,
cuando, paradójicamente, depende de la presencia de Outlook
en una máquina para poder enviarse, en lugar de emplear un
servidor de SMTP fijo que admitiese conexiones anónimas.
Las direcciones de los destinatarios son extraídas por el
i-worm tras haber procesado, a lo largo del disco duro, la
totalidad de ficheros de extensión DBX, EML, HTM, HTML, IDX,
MBX, NCH y TXT, correspondientes a páginas web, ficheros de
texto plano y distintos formatos de buzones de correo. Una
vez que el proceso de recopilación ha terminado, «Cholera»
genera el tipo de e-mail anteriormente descrito, codificando
sus instrucciones en formato BASE64 con cabecera MIME, con
el fin de llegar en forma de attach a cada uno de los buzones
de correo e-mail a los que se ha enviado, y cerrando así su
ciclo vital, sin pasar por alto el hecho de que ha de borrar
toda huella que haya podido dejar, como por ejemplo en el
WIN.INI, y de que no se trata de un i-worm cuya única misión
es propagarse, ya que, a partir de este momento, es el virus
«CTX» el que toma el relevo de «Cholera».
Y lo cierto es que no se trata de ninguna broma… «CTX» se
nos presenta en un principio como el convidado de piedra, y
no por ello tiene menos importancia que «Cholera». Estamos
seguros, de hecho, de que aún el caso de que este último no
existiese, tampoco habríamos pasado por alto el hecho de
informar acerca del peligro de este sofisticado virus, que,
si bien no presenta tantas novedades como el i-worm, bien
merece cierta atención como complemento de «SIMBIOSIS».
Así como de «Cholera» comentamos que posee una débil rutina
de cifrado, de «CTX» nos vemos obligados a decir que está
protegido bajo una densa capa de encriptación polimórfica en
su variedad de mutación lenta, lo cual, sin lugar a dudas,
dificultará en gran medida la programación de los algoritmos
de detección y desinfección del virus, si bien su descifrado
manual no presenta demasiadas trabas.
A partir de aquí, lo que nos ofrece «CTX» es un pequeño pero
completo recital de técnicas avanzadas, tales como chequeo
de la integridad de su propio código y búsqueda de APIs por
medio de CRC32, lo que le ahorra la necesidad de emplear los
nombres de dichas APIs, dificultando su detección a primera
vista y su posterior análisis. También podemos observar que,
al igual que en el virus «HPS», nuestro protagonista procede
a efectuar el rastreo de la dirección de KERNEL32 por medio
de un escaneo en memoria, en lugar de otros métodos de corte
más convencional y quizás menos arriesgado.
Una vez que la fase de incialización se ve culminada con la
copia en memoria por medio de VirtualAlloc, la búsqueda de
ficheros, por medio de acción directa o «runtime», presenta
pocas particularidades con respecto a otros virus del mismo
autor de características similares, como puede ser el famoso
«Marburg», que en su día ocupó un lugar importante en las
listas de virus «in the wild». Precisamente es con este virus
con el que guarda un importante parecido en cuanto al método
de infección de aplicaciones de formato PE, en especial en
lo tocante al tratamiento de las relocaciones y a la ya
conocida técnica del «entry-point obscuring», que consiste en
no modificar el punto de entrada de los ejecutables, con el
fin de evitar ciertas alarmas heurísticas.
Desde HispaSec, a modo de resumen y tras haber analizado los
aspectos más peligrosos de este proyecto «SIMBIOSIS», formado
por el i-worm «Cholera» y el virus «CTX», hemos considerado
altmente recomendable hacer eco del peligro potencial de este
agente infeccioso entre el mundo de la seguridad informática,
con el único fin de poner freno por medio de la prevención.
Si bien la versión distribuida de «Cholera» no está depurada
de bugs al 100% y en un principio su técnica de expansión
no es tan inteligente como la empleada por el propio autor
en «Parvovirus», su creación anterior, es importante que las
compañías antivirus tomen medidas lo antes posible, y sólo de
esta manera se podrán evitar las posibles consecuencias del
proyecto «SIMBIOSIS», cuya única activación, de la mano de
«CTX», queda afortunadamente limitada al plano gráfico. Por
nuestra parte, y esperando que no suceda, nos comprometemos a
ofrecer un análisis en profundidad de este fenómeno vírico
de nueva generación en caso de que llegue a las listas «in
the wild», con el fin de mantener a nuestros suscriptores, y
al público en general, al tanto de todos sus detalles.
Más información:
Muestra de virus:hispasec@hispasec.com (AVs o similar)
Deja una respuesta