PuTTY libera una actualización de seguridad que corrige 8 graves errores.
El popular y versátil cliente, típicamente utilizado para conexiones SSH, ha hecho pública una actualización de seguridad con el objetivo de parchear una serie de errores graves que permitían comprometer una máquina que contuviese este software instalado.
Tras casi un año y medio desde que se lanzara la última versión y después de haber notificado en su propia web que todas las versiones anteriores del cliente eran vulnerables, los desarrolladores han decidido liberar la versión 0.71 para los clientes Unix y Windows, con la intención de solventar estos problemas.
A continuación os listamos las vulnerabilidades que han sido corregidas en esta actualización, junto con la traducción – en cursiva – de la nota publicada en su web para cada una de las vulnerabilidades.
Suplantación del terminal de autenticación. Dado que el cliente PuTTY no tiene mecanismos adecuados para discernir si una determinada salida de texto del terminal es legítima y genuina, un servidor malicioso podría explotar esta particularidad de la interfaz gráfica para generar un terminal de autenticación falso e inducir a la víctima a introducir en él sus credenciales.
“Si el servidor hubiese adquirido una copia de tu clave encriptada – por ejemplo al haberla dejado copiada en algún lugar, pensando que al estar encriptada, era seguro hacerlo – esto podría haberle dado acceso a tu clave privada”.
Ejecución de código vía CHM hijacking. Cuando un usuario ejecuta la ayuda online en el marco de las herramientas de interfaz gráfica de PuTTY, el software intenta encontrar su propio archivo de ayuda al mismo tiempo que su propio ejecutable. Este comportamiento es, precisamente, el que permitiría a un hipotético atacante engañar a la víctima para ejecutar código malicioso en el cliente mediante el secuestro del archivo CHM.
“Si PuTTY se estuviera ejecutando desde un directorio en el cual un código externo al propio programa fuese capaz de escribir archivos, esto abriría la posibilidad de infiltrar en dicho directorio un archivo putty.chm, haciendo creer a PuTTY que ese archivo es legítimo, llamándolo a htmlhelp.exe.”
Buffer Overflow en PuTTY Tools (Unix). Según el aviso en la web, si un servidor llevase a cabo demasiadas redirecciones de puertos en entornos Unix, PuTTY no podría comprobar los límites del archivo generado durante la monitorización de ciertos logs, lo que provocaría un buffer overflow.
“No sabemos si fue posible una explotación remota pero, como mínimo, sí que habría sido posible disparar -esta vulnerabilidad – por un servidor SSH malicioso, si cualquiera de las opciones que permiten al servidor abrir canales remoto-a-local, redireccionamiento de agente o redireccionamiento X11, se encontraran habilitadas.”
Reutilización de números criptográfico pseudoaleatorios. El error reside en el modo en que los números criptográficos pseudoaleatorios son generados en PuTTY, que ocasionalmente parece utilizar dos veces el mismo lote de números pseudoaleatorios.
“El error ocurría debido a un buffer overflow de un sólo byte en el código encargado de la generación de números pseudoaleatorios. Si se inyectó entropía a partir de una fuente externa, exactamente cuando el índice de la posición actual estaba apuntando al extremo final del espacio destinado al almacenamiento de números pseudoaleatorios, se podría haber sobreescrito este espacio por un sólo byte, sustituyendo al byte más bajo de la posición del índice mismo.”
Vulnerabilidad de tipo Integer Overflow. Todas las versiones anteriores de PuTTY adolecen de una vulnerabilidad de tipo Integer Overflow debido a una falta de comprobación del tamaño de la clave, la cual tiene lugar durante el intercambio de claves RSA. Un servidor remoto puede disparar esta vulnerabilidad enviando una clave RSA suficientemente corta, conduciendo a un Integer Overflow y a una sobreescritura de la memoria.
“Los desarrolladores de PuTTY no están seguros de si esta vulnerabilidad puede ser explotada para ganar el control del cliente, pero dado que el incidente tiene lugar durante el intercambio de claves y, por ende, ocurre antes de cualquier comprobación por parte del cliente, el overflow podría inducir a un ataque MiTM, incluso aunque el intruso no conociera la clave correcta.
De modo que, aunque consideres seguro el servidor al que te estás conectando, no estás a salvo.”
Denegación de Servicio del terminal. Las tres últimas vulnerabilidades abusan de la terminal del cliente, mediante el envío de diferentes salidas de texto, que podrían tumbar el servicio.
En primer lugar, los servidores pueden enviar una extensa cadena de caracteres Unicode al terminal del cliente, lo que conduce a un ataque de dengación de servicio al obligar al sistema a alojar en memoria cantidades potencialmente ilimitadas de datos.
El segundo ataque de denegación de servicio puede ser disparado mediante el envío combinado de caracteres, textos con un ancho el doble de lo permitido, un número impar de columnas de terminal o salidas de GTK hacia la terminal del cliente.
Por último, mediante el envío al cliente de caracteres con un ancho de dos, utilizado por caracteres chinos, japoneses y coreanos, puede forzarse la disrupción del emulador de la terminal de PuTTY.
Desde Hispasec recomendamos que, si estás utilizando PuTTY, actualices cuanto antes la versión instalada.
Fuentes: https://www.chiark.greenend.org.uk/~sgtatham/putty/releases/0.70.htmlhttps://www.chiark.greenend.org.uk/~sgtatham/putty/releases/0.70.html
Powered by WPeMatico