miércoles, 22 de diciembre de 2004

Gusano Santy.A utiliza a Google para infectar servidores web con phpBB

El gusano Santy.A, escrito en Perl, infecta automáticamente los
servidores web que utilicen una versión vulnerable de phpBB,
modificando además sus páginas webs. En el momento de escribir estas
líneas Hispasec cuenta los servidores infectados por miles. El gusano
no afecta a los sistemas de los usuarios, únicamente a los servidores
web con una versión de phpBB anterior a la 2.0.11.

phpBB es una popular aplicación para la creación de sitios y foros
web muy extendida en Internet. Las versiones de phpBB anteriores a la
2.0.11 contienen varias vulnerabilidades, una de ellas es la que
aprovecha el gusano Santy.A para infectar los servidores web
afectados. En concreto se trata de un problema en el archivo
"viewtopic.php" al no procesar adecuadamente los datos enviados a
través del parámetro "highlight", lo que permite a un atacante, o a
un gusano como es el caso que nos ocupa, ejecutar comandos arbitrarios
de forma remota.

Santy.A contiene en su código una rutina que realiza constántemente
búsquedas en Google de 100 URLs que contengan la cadena
"viewtopic.php", con el fin de localizar sitios webs con phpBB
instalado y, por tanto, potencialmente vulnerables. Para evitar
siempre localizar a los mismos 100 sitios webs, el gusano incluye en
cada nueva búsqueda un número aleatorio para indicar a partir de que
resultado quiere el listado, de entre los más de 4 millones de
páginas que Google tiene indexadas con las características
especificadas en la búsqueda del gusano.

El gusano realiza una petición para explotar la vulnerabilidad
anteriormente comentada a cada una de las URL conteniendo la cadena
"viewtopic.php" que Google le devuelve. Si el servidor web al que
realiza dicha petición tiene instalada una versión de phpBB anterior
a la 2.0.11, el gusano lo infecta, copiándose en el sistema con el
nombre de archivo "m1ho2of" y ejecutándose a través de "perl -e".
A partir de ese momento el servidor web infectado comienza su
rutina para localizar a través de Google otras posibles víctimas.

Adicionalmente Santy.A incluye en su código una rutina para buscar
en los sistemas infectados todos los archivos con extensión .htm,
.php, .asp, .shtm, .jsp y .phtm y los sobrescribe con el código
HTML de una página web con fondo negro y color de texto rojo que
incluye el siguiente mensaje, donde (*) es un número que hace las
veces de contador:

This site is defaced!!!
NeverEverNoSanity WebWorm generation *

Aunque las casas antivirus han reaccionado a posteriori publicando
firmas para su detección, en esta ocasión no han sido muy útiles,
sobre todo si tenemos en cuenta que los sistemas afectados son
servidores webs, muchos de ellos Unix o Linux, que no suelen
contar con antivirus residentes instalados para analizar todos
los archivos que se escriben en el sistema y/o dispositivos
antivirus que filtren el tráfico previamente.

La prevención pasa por que todos los servidores con phpBB instalen
la versión 2.0.11 que corrige la vulnerabilidad, disponible en la
dirección: http://www.phpbb.com/downloads.php


Bernardo Quintero
bernardo@hispasec.com