SSH son las siglas de Secure SHell, una aplicación muy conocida y
ampliamente distribuida que permite el acceso remoto de forma
segura mediante la encriptación de los datos transmitidos. El
cliente de SSH está disponible de forma totalmente gratuita para
diversos sistemas operativos, lo que ha contribuido a su difusión.
El bug, descubierto por IP6 Seguridad, revela de forma muy clara
el hecho de que incluso las herramientas teóricamente más seguras
pueden fallar si su implementación es deficiente. En concreto,
debido a este bug, cualquier atacante remoto puede obtener
fácilmente el nombre de los usuarios de la máquina sobre la que
se ejecuta el servidor de SSH. Ello es debido a que éste responde
de forma diferente a los intentos de conexión según se produzcan
usando, o no, el nombre de un usuario válido.
Tanto la versión 2.0.12 como la 2.0.13, la última disponible hasta
la fecha, se ven afectadas por este bug. Más específicamente,
cuando el cliente trata de conectar con el servidor de SSH
utilizando un nombre de usuario válido, dispone de un determinado
número de intentos para introducir la password correcta (por
defecto tres) antes de ser desconectado. Sin embargo, cuando trata
de conectar usando un nombre de usuario no existente en el sistema,
sólo dispone de una oportunidad para introducir la password.
Veamos un ejemplo:
Supongamos que el usuario alfonso NO existe en la máquina 192.168.0.1,
pues bien, podríamos saberlo simplemente tratando de conectarnos a
la máquina vía ssh utilizando el nombre de usuario alfonso. Después
de esto, cuando introduzcamos la password, nos dirá que no es la
correcta y nos desconectará inmediatamente sin darnos opción a
intentarlo de nuevo con otra password. Algo así:
$ssh 192.168.0.1 -l alfonso
alfonso’s password:
Disconnected; authentication error
(Authentication method disabled.
Sin embargo, después de ver que alfonso NO es un usuario autorizado
en la máquina, podemos tratar de probar suerte con otras posibilidades
para el nombre de usuario, como por ejemplo altellez. Algo así:
$ssh 192.168.0.1 -l altellez
altellez’s password:
altellez’s password:
En este momento, se dispone de un nombre de usuario correcto. Esto
supone una grave vulnerabilidad, que podría ser explotada por un
atacante remoto para generar un ataque de diccionario.
Este bug es aún más grave si se utiliza en conjunción con la también
reciente vulnerabilidad descubierta por el grupo J.J.F./Hackers Team,
ya publicada con anterioridad en una-al-día (http://www.hispasec.com/unaaldia.asp?id=201).
La solución más rápida para el bug, y que curiosamente también
resuelve el bug anunciado por J.J.F./Hackers Team es, simplemente,
editar el fichero de configuración del servidor de SSH (habitualmente
el sshd2_config, en /etc/ssh2) y cambiar el valor de «PasswordGuesses»
a 1.
Más información:
Ataque por fuerza bruta a sshd2 v.2.0.11 (HispaSec 16-5-1999)
SSH Communications Security
IP6 Seguridad
IP6 Seguridad
Deja una respuesta