[Solar-general] Santy.A - Problema de seguridad en PHP que afecta a
Google
Marcos Guglielmetti
marcospcmusica en yahoo.com.ar
Mar Dic 28 15:12:02 CET 2004
Hola linuxeros.
Desde que uso GNU / Linux, nunca vi un problema de seguridad tan grave, me
parece que el """"""haker"""""" que hizo esto es un enfermo, o está bancado
por alguna empresa como SCO o MS, lo cual es "similar" :-)
http://www.noticias.com/index.php?action=mostrar_articulo&id=62429&seccion=Internet&categoria=Portales&IDCanal=1
Santy.A - Problema de seguridad en PHP que afecta a Google
Jordi Camps -
(Noticias)
- 27/12/2004
Leído 467 veces
En un principio, el virus llamado “NeverEverNoSanity”, se consideró un bug de
los foros phpBB. Más tarde se han dado cuenta que el problema no es de los
scripts de estos foros sino algo peor: los agujeros de seguridad del mismo
sistema en PHP.
Qué palabrería, ¿realmente esto qué significa?
Simplemente que las versiones vulnerables (NO todas), permiten la ejecución de
cualquier comando que se ejecute en el mismo servidor. Actualmente, la
mayoría de los servidores de Internet, para el desarrollo de páginas web,
utilizan versiones de PHP. Por lo tanto, cada vez que cualquiera de nosotros
esté navegado por Internet entre páginas php, el servidor web (apache u otro)
envía la página al motor PHP instalado en el mismo servidor, procesando los
datos y, finalmente, el servidor web lanza los resultados a nuestro
explorador.
¿Cómo funciona el “virus”?
Buscar las páginas vulnerables (“contienen los problemas de seguridad de PHP”)
que usan como “puerta de acceso”. Lamentablemente los foros phpBB son muy
comunes y ofrecen esta puerta de entrada desde el archivo "viewtopic.php" al
no procesar adecuadamente los datos enviados a través del parámetro
"highlight", lo que permite a un atacante ejecutar comandos arbitrarios de
forma remota. Sobre esta vulnerabilidad, el primer precedente fue el pasado
19 de noviembre gracias a la compañía Secunia.
Son dispares las estimaciones hasta la fecha según Santiago Carro en una
notícia publicada en PC World “Mientras unos desarrolladores sitúan a Santy.A
con unos 30.000 impactos en versión beta de MSN, éstos mismos apuntaban
muchos menos impactos, con 785 impactos en MSN y poco más de 2.000 en Yahoo!”
Combinando estas dos cosas: Bug en PHP y la página (viewtopic.php) que se
encuentra en millones de sitios, uno puede hacer lo que quiere en ese sistema
desde millones de sitios.
Y para conseguirlo, los creadores de Santy.A ("cómo se le ha llamado
finalmente"), se las ingeniaron para:
1. Buscar en Google los sitios que usan phpBB. Desde la página de
viewtopic.php, suben al host y ejecutan un script que:
2. incrementan su número de generación
2a. combina fórmulas para usar el host para acceder a google y busca más
candidatos.
2b. si la generación es mayor a 3, sobrescribe todas las
páginas .php .html .asp .shtml (…) con un texto como:
"This site is defaced!!!" y "NeverEverNoSanity WebWorm Nro generacion".
Santy.A posee en su código una rutina que realiza constantemente búsquedas en
Google de 100 URLs que contengan la cadena “viewtopic.php”
¿Y cómo lo hace?
Los ingeniosos de Santy.A, 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
8 millones de páginas que Google tiene indexadas con las características
especificadas en la búsqueda del gusano.
Cómo decía, hay muchos servidores que utilizan Apache y No corren como suExec,
es decir, cuando ejecutan los scripts lo hacen con el UID/GIG del servidor
que acceden, copiándose en el sistema con el nombre de archivo "m1ho2of" y
ejecutándose a través de "perl -e". Así, el servidor infectado comienza su
rutina buscando a través de Google, infectando a otras posibles víctimas que
tengan instalada una versión de phpBB anterior a la 2.0.11. Podéis encontrar
la más reciente a en: http://www.phpbb.com/downloads.php
El acceso a los archivos no solo se limita a php, sino que en su código
incluye 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 con el
siguiente mensaje:
This site is defaced!!!
NeverEverNoSanity WebWorm generation *
Donde (*) es un número que hace las veces de contador:
Por lo tanto, una vez dentro, adquiere todos los permisos del sistema,
pudiendo crear/borrar/sobrescribir en todos los otros sitios de Internet de
un mismo host (shared hosting).
Por ejemplo:
Si nuestro host encontrado es: www.netdebugger.com
Todas mis páginas interiores son vulnerables a Santy.A:
www.netdebugger.com/index.asp
¿Cómo está la situación actual?
Google ha empezado a intentar frenar la ejecución de Santy.A, las “queries”
que buscaban más sitios phpBB/viewtopic.php. Pero esto sólo es una solución
parcial al problema más grave. Los creadores de Santy.A u otros “hackers”
fácilmente pueden lanzar, la misma u otra versión de Santy.A, a otros motores
de búsqueda (MSN, Yahoo, etc) o incluso pueden seguir usando google con un
“query” distinto. Los motores de búsqueda pueden limitar cada nuevo “query”,
pero para cuando identifiquen las nuevas cadenas de búsqueda del gusano, será
tarde. Muchos estarán pensando “Google ya ha encontrado la solución, no tengo
que preocuparme más”. – Y es un grave error.
Ante este problema, algunos ya han actualizado sus versiones a una NO
vulnerables de phpBB, una de ellas es la 2.0.11. Pero seguiremos sin resolver
el problema, si bien es cierto que se trata de una versión NO vulnerable,
pero el verdadero problema es otro. Lo único que hace esta versión de phpBB
es no ofrecer la página viewtopic.php como puerta de entrada a las versiones
vulnerables de PHP. Por otro lado, creéis que todos los webmasters
actualizarán sus versiones a la phpBB 2.0.1.1, yo creo que es algo poco
probable a corto plazo.
Hasta entonces, los creadores de Santy.A simplemente deben buscar algún otro
software popular que contengan páginas php de cierto tipo para usarlas como
puerta de acceso a la ejecución remota desde cualquier otro software famoso
como: vBulletin, phpNuke, Invision Board programas OScomerce, etc... – Si
alguno se atreve, puede ver el avíso de seguridad de PHP.
Por otra parte, las casas antivirus han reaccionado a posteriori publicando
firmas para su detección, pero siguen poco útiles ya que la mayoría de
servidores web infectados utilizan Unix o Linux, que no suele contar con
antivirus residentes instalados, para poder analizar todos los archivos que
se escriben en el sistema y/o dispositivo antivirus que filtre el tráfico
antes de su ejecución, es decir, cuando uno de nosotros accede un web, no
existe ningún antivirus (“por el momento”) que analice nuestra petición.
Y si seguimos investigando, podemos encontrar otras muchas posibles
soluciones, cómo la de Bernardo Quintero en Hispasec.com “La solución pasa
por evitar parámetros de forma arbitraria cuando programamos el script PHP,
filtrando todas las referencias que no se ajusten a las páginas legítimas del
servidor web”.
¿Entonces qué solución tenemos?
Vamos a ver, con la solución de Google se puede controlar momentáneamente el
problema. Del mismo modo, Google no es responsable del problema y quizás no
pueda parar futuros intentos de búsqueda por parte de este gusano, como para
cualquiera de sus derivados que puedan modificar los “hackers”.
Por otra parte, si todos los “webmasters” actualizaran sus versiones de phpBB,
es cuestión de tiempo para que se encuentren otras puertas de entrada.
Así, la solución que nos queda es actualizar el motor PHP de los mismos
servidores que ejecutan las páginas con versiones que no sean anteriores a la
PHP 4.3.10, la misma comunidad de phpBB nos lo dice en phpBB.com.
¿Entonces Santy.A es realmente un “virus”?
NO, Santy.A no es un virius, ni un verdadero gusano, además en Linux no hay
virus, se trata de un script (“código de programación”) que consigue dominar
el servidor incluso más allá del sistema operativo que esté usando. Es una
clara demostración que la seguridad no pasa por el SO (“sistema operativo”)
en sí, sino que la seguridad reside en la configuración del sistema, el
mismísimo núcleo donde reside en continuo control del software instalado,
ejecutándose junto la revisión periódica de los informes de seguridad.
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 PHP 4.3.10 o posterior.
Podéis ampliar conocimientos en los foros de WebMasterWorld.com
--
-------------------------------------------------------------------------
! Marcos Germán Guglielmetti !
> Música y Computación !
! .Grabación de demos !
! .Pistas para cantantes !
! .Clases particulares !
> www.pc-musica.com.ar !
> (0221) 427-5391 |
-----------------------------------------------------------------------------
La web sin popups ni spyware: Usa Firefox en
lugar de Internet Explorer
http://www.mozilla.org/products/firefox/
_______________________________________
***Usá GNU / Linux en lugar de MS/Windows***
> Ubuntu / Linux te envía los CDs a tu casa:
http://www.shipit.ubuntulinux.org/
_______________________________________
_______________________________________
> Debian 3.1 Sarge GNU / Linux
_______________________________________
_______________________________________
Más información sobre la lista de distribución Solar-general