Microsoft informa de una vulnerabilidad en Windows NT a través de
los ficheros del sistema de ayuda. El problema posibilita la ejecución
de código arbitrario en una máquina NT.
La multinacional de Bill Gates ha publicado a su vez un parche que
elimina los problemas asociados a esta vulnerabilidad, y recomienda
su instalación a los usuarios que puedan verse afectados. La utilidad
de ayuda de Windows, winhlp32.exe, analiza y muestra la información
de ayuda para las aplicaciones. La información de soporte está
incluida en el interior de archivos de muy diversos tipos, que se
generan por el Help Compiler (Compilador de Ayuda), que forma parte
de la utilidad AppWizard, guardándose por defecto en el directorio
WinNT\help. Por defecto los usuarios tienen permisos de escritura
sobre esta carpeta.
En la utilidad de ayuda existe un buffer sobre el que no se realiza
ningún tipo de chequeo. De forma, que un fichero de ayuda que haya
sido cuidadosamente modificado, puede ser empleado para ejecutar
código arbitrario en la máquina local a través de la clásica técnica
de desbordamiento de buffer. Como el Compilador de ficheros de ayuda
no genera el código necesario para explotar el problema, la
vulnerabilidad no se puede dar de forma accidental, sino que tiene
que modificarse el fichero de ayuda específicamente para ello.
Las máquinas afectadas por esta vulnerabilidad son estaciones de
trabajo, terminales y cualquier otra máquina que permita a los
usuarios acceder de forma interactiva y añadir o modificar ficheros
de ayuda. Los servidores generalmente no permiten el acceso a los
usuarios normales, por lo que Microsoft recalca que la vulnerabilidad
sólo afecta a la máquina local, sin posibilidad de explotar el
problema de forma remota. Aunque todo parece indicar que las
afirmaciones de Microsoft tienen poco fundamento, ya que el
fichero de ayuda hlp, puede verse acompañado de un fichero de
índice .cnt. Este archivo también puede modificarse de forma
similar a la explicada con el hlp, causado efectos similares..
Microsoft facilita un parche que previene de la ejecución de
código arbitrario en la máquina, pero no proporciona protección
ante un fallo de la utilidad de ayuda ante un archivo mal
construido. Sin embargo, un fallo de la utilidad de ayuda no
amenaza la estabilidad del sistema, permitiendo reiniciar el
programa de ayuda sin problemas.
Más información:
Boletín de Seguridad Microsoft
Microsoft Knowledge Base
Deja una respuesta