sábado, 25 de diciembre de 2004

Navidad negra para la seguridad de Windows

En los últimos días, y coincidiendo con la víspera de Noche Buena, se
han publicado en Internet tres vulnerabilidades para Windows, a las
que se suman otras tantas que días atrás se habían dado a conocer
sobre Internet Explorer. En total seis vulnerabilidades, algunas de
ellas catalogadas como críticas, para las que Microsoft aun no ha
publicado parche.

La primera de las vulnerabilidades, que según el reporte original
afecta a todas las versiones de Windows, tiene su origen en el
programa winhlp32.exe, encargado de procesar los archivos de ayuda
.HLP. Se han detectado en esta aplicación un desbordamiento de heap y
un desbordamiento de entero que podrían ser explotables mediante un
archivo de ayuda especialmente diseñado.

A efectos prácticos, un atacante podría crear un archivo de ayuda con
extensión .HLP y hacer que un usuario con Windows lo abriera, momento
en el cual se ejecutaría el código arbitrario del atacante, con la
posibilidad de llevar a cabo cualquier acción y comprometer el
sistema.

La recomendación, a la espera de una solución por parte de Microsoft,
es evitar abrir cualquier archivo .HLP que nos envíen, y en general
cualquier archivo que expresamente no hayamos solicitado, aunque
provenga de una fuente confiable.

La segunda de las vulnerabilidades está basada en un desbordamiento
de entero en la función LoadImage de USER32, biblioteca de Windows
destinada a cargar los iconos, cursores y bitmaps.

A efectos prácticos, un atacante podría crear un archivo .bmp,
.cur, .ico o .ani e incluirlo en una página web o un e-mail que,
al ser visualizado por un usuario, provocara la ejecución de código
arbitrario y el compromiso del sistema. Este problema no afectaría
a los usuarios con Windows XP y el Service Pack 2 instalado.

La prevención, a la espera de la solución por parte de Microsoft,
de nuevo pasa por evitar abrir archivos que nos envíen y que
expresamente no hayamos solicitado, configurar nuestro cliente de
correo para no procesar automáticamente los mensajes HTML, y no
visitar páginas web que no sean de fuentes confiables.

La tercera vulnerabilidad para Windows, la menos crítica, podría
ser explotada para llevar a acabo ataques por denegación de
servicios (DoS), aprovechando un problema del kernel de Windows
al procesar archivos .ani especialmente diseñados. En esta
ocasión tampoco afecta a Windows XP SP2. La prevención, a falta
de la pertinente actualización, pasa por seguir las recomendaciones
anteriormente descritas.

Los exploits o pruebas de concepto diseñadas para demostrar
las vulnerabilidades han sido procesadas por el servicio
antivirus de Hispasec, VirusTotal (http://www.virustotal.com).

eTrust-Iris, de Computer Associates, es el único motor en el
momento de escribir estas líneas que detecta el exploit para
la vulnerabilidad en winhlp32.exe como Win32/WhlpHeapOvrflw.Exploit.Tro.

El exploit del desbordamiento de entero en USER32 ha sido
detectado por e-Trust-Iris como Loadimage.Exploit.Trojan y
Symantec como Bloodhound.Exploit.19.

En el caso de la tercera vulnerabilidad, los dos exploits
publicados para el ataque de denegación de servicio al kernel
basado en un archivo ANI son detectados también por eTrust-Iris
como Win32/AniFile.Exploit.Trojan. Mientras que Symantec sólo
reconoce uno de los dos exploits como Bloodhound.Exploit.20.

El sistema de distribución de muestras de VirusTotal envía
automáticamente y en tiempo real las muestras que han dado
positivas por algún antivirus al resto de laboratorios que
participan en este servicio y no las detectan, facilitando a
dichos laboratorios el acceso a las últimas amenazas y ayudando
en la protección de sus usuarios. Por ello esperamos que en
breve se amplíe el número de antivirus que detecten los exploits.


Bernardo Quintero
bernardo@hispasec.com


Más información:

Microsoft Windows winhlp32.exe Heap Overflow Vulnerability
http://www.securityfocus.com/archive/1/385332

Microsoft Windows LoadImage API Integer Buffer overflow
http://www.securityfocus.com/archive/1/385342

Microsoft Windows Kernel ANI File Parsing Crash and DOS Vulnerability
http://www.securityfocus.com/archive/1/385340