04 julio 2011

El smile de la muerte: Puerta trasera en vsftpd 2.3.4

Se ha descubierto una puerta trasera nueva, que podríamos añadir al recopilatorio que se realizó en SecurityByDefault con las puertas traseras más escandalosas. En esta ocasión, le toca el turno a un servidor FTP de uso muy extendido: vsftpd. Curiosamente, este software FTP tiene el slogan de "probablemente el servidor FTP más seguro y rápido para sistemas UNIX". 

Quizás el software lo sea, pero su distribución se ha visto comprometida. Chris "ScaryBeast" Evans, su creador, informaba en su blog Scarybeast Security acerca de este incidente, tras ser avisado por un usuario. Se comprobó que el software en el fichero compilado vsftpd-2.3.4.tar.gz hospedado en su sitio principal contenía una puerta trasera, en la que escribiendo como nombre de usuario del servidor FTP el símbolo de la sonrisa o smile ( :) ) se conseguía acceso total y ejecución de comandos en el servidor al devolver una shell del sistema.

Analizando el código diff (comparación con versiones anteriores) del servidor FTP comprometido que fue volcado a un pastebin, apreciamos claramente la puerta trasera así como su acción a desencadenar:


Tras la comprobación en el nombre de usuario de que el primer carácter (almacenado en p_str->p_buf[i]) es el símbolo ":" y que en el segundo carácter (almacenado en p_str->p_buf[i+1]) se encuentra el símbolo ")", se ejecutaría la shell en el puerto 6200 TCP, cuya definición se encuentra en la función vsf_sysutil_extra(), que pasamos a mostrar a continuación:


Fácil, sencillo, sin cifrado, ni ofuscación, todo clarísimo y nada sofisticado. El autor, tras el incidente, ha movido la página del proyecto, así como el software, a una cuenta de Google App Engine, en la que dice que se siente más seguro y cuyo servicio le inspira más confianza.


6 comments :

Jose Selvi Sabater dijo...

Se sabe desde cuando está el Backdoor? Debe tener un montón de tiempo, porque sino es probable que no pueda acceder al puerto 6200 de un servidor. Quizá el puerto 20 podría haber sido más recomendable, o incluso que se lo hubiera currado más y hubiera lanzado conexión al puerto 80 de la IP que ha conectado.

Esta me la anoto para los Pentest xDDDD

Security By Default dijo...

Pues debería ser entre Feb-Marzo de 2011 (cuando salió la 2.3.4) hasta este fin de semana. Aquí lo más curioso es la poca currada del tema...o quizás es lo que más asusta :)

anon dijo...

a eso le llamo entrar por mi cara bonita. 

GonzaloMontesDeOca dijo...

Pero lo solucionaron? 

skymloder dijo...

El problema seria que si  llegas a poner esos tipos de puertos típicos de uso diario  posiblemente estén ocupados y no podrías utilizar tu preciada shell  ademas que esos puertos ya están muy controlados.

Security By Default dijo...

Más bien, como se comenta al final del post, el autor creó un nuevo espacio en Google App Engine, que usará como página principal así como canal principal de distribución del software. Ahí mismamente ha colgado la versión 2.3.4 de vsftpd