|
Múltiples vulnerabilidades con archivos PNG
|
|
VSantivirus No. 1492 Año 8, viernes 6 de agosto de 2004
Múltiples vulnerabilidades con archivos PNG
http://www.vsantivirus.com/vul-libpng.htm
Por Angela Ruiz
angela@videosoft.net.uy
El CERT ha reportado diversas vulnerabilidades en la librería LIBPNG, alguna de las cuales podrían permitir a un atacante ejecutar código arbitrario en un sistema afectado, convenciendo a una probable víctima para que visite un sitio web malicioso, o visualice un mensaje de correo electrónico conteniendo una imagen maliciosamente modificada.
PNG (Portable Network Graphics), es un formato de imágenes utilizado como alternativa a otros formatos como GIF (Graphics Interchange Format), por ejemplo. LIBPNG es una librería utilizada por desarrolladores de aplicaciones que soportan el formato de imagen PNG.
Las vulnerabilidades reportadas en esta librería, hacen que cualquier programa o aplicación que la utilice, se vea comprometido. Esto incluye navegadores de Internet como Mozilla, Konqueror y varios clientes de correo. Se han reportado que algunas versiones del Internet Explorer podrían ser vulnerables a algunos de los problemas.
Algunas de las vulnerabilidades:
1. Libpng falla en la verificación de la longitud de los datos de la pieza de transparencia (tRNS).
Se ha reportado una vulnerabilidad de desbordamiento de búfer ocasionada por el método en que se procesan las imágenes PNG. Este problema podría permitir a un atacante remoto, hacer fallar a la aplicación que use la librería, o incluso llegar a ejecutar código arbitrario en un sistema vulnerable, por medio de una imagen PNG creada maliciosamente. El código sería ejecutado con los mismos privilegios del usuario actual en el equipo comprometido.
2. Perdida de referencia de puntero Nulo en png_handle_iCCP()
Bajo ciertas circunstancias, un puntero nulo podría perder las referencias durante una asignación de memoria en la función png_handle_iCCP(). Como resultado de esto, una imagen PNG hábilmente modificada, podría provocar el bloqueo de la aplicación afectada (denegación de servicio). Este tipo de errores se producen en otras ubicaciones de LIBPNG. Una imagen maliciosa descargada desde un sitio Web o enviada en un correo electrónico, podría causar que falle el navegador o el cliente de correo usado.
3. Desbordamiento de entero en el procesamiento de la altura de la imagen en libpng
Existe un error de desbordamiento de entero en el manejo de la altura de una imagen PNG dentro de la función png_read_png(). A raíz de este problema, una imagen PNG con una altura excesiva, podría provocar un desbordamiento de entero durante una operación de asignación de memoria, provocando el colapso de la aplicación afectada. Un desbordamiento de entero (integer overflow) ocurre cuando una variable definida como entera, sobrepasa los valores asignados. Una imagen maliciosa descargada desde un sitio Web o enviada en un correo electrónico, podría causar que falle el navegador o el cliente de correo usado.
4. Desbordamiento de entero en libpng png_handle_sPLT()
Existe un error potencial de desbordamiento de entero (integer overflow) durante una operación de asignación de memoria en la función png_handle_sPLT(). No se ha especificado claramente que impacto podría tener este error en las aplicaciones que usan libpng.
5. La función libpng png_handle_sBIT() realiza un control insuficiente de límites.
Existe un control insuficiente de limites en las funciones png_handle_sBIT() y png_handle_hIST(). Mientras el código que contiene estos errores podría permitir un potencial desbordamiento de búfer en otras funciones --como png_crc_read()--, no se ha especificado qué fallos podrían ocurrir en las aplicaciones que utilicen libpng.
6. Libpng contiene desbordamientos de entero en el despliegue progresivo en la lectura de imagen.
Libpng tiene la capacidad de visualización entrelazada, o visualización progresiva de imágenes PNG. Existe una cierta cantidad de potenciales errores de desbordamientos en el manejo de esta característica. Aunque el código que contiene estos errores, introduce condiciones peligrosas, no está claro que tipo de vulnerabilidades prácticas podrían presentarse en las aplicaciones que utilicen libpng.
La solución en todos los casos, es aplicar el parche apropiado o actualizar la aplicación tal como lo especifique el correspondiente
proveedor en su momento.
Referencias:
Nota de seguridad 2004.1 Chris Evans
http://scary.beasts.org/security/CESA-2004-001.txt
Sitio Web de libpng
http://libpng.sourceforge.net
Sitio Web de Portable Network Graphics (PNG)
http://www.libpng.org/pub/png
Nota de vulnerabilidad de US-CERT VU#388984
http://www.kb.cert.org/vuls/id/388984
Nota de vulnerabilidad de US-CERT VU#817368
http://www.kb.cert.org/vuls/id/817368
Nota de vulnerabilidad de US-CERT VU#286464
http://www.kb.cert.org/vuls/id/286484
Nota de vulnerabilidad de US-CERT VU#477512
http://www.kb.cert.org/vuls/id/477512
Nota de vulnerabilidad de US-CERT VU#160448
http://www.kb.cert.org/vuls/id/160448
Nota de vulnerabilidad US-CERT VU#236656
http://www.kb.cert.org/vuls/id/236656
CVE CAN-2004-0597
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2004-0597
CVE CAN-2004-0598
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2004-0598
CVE CAN-2004-0599
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2004-0599
(c) Video Soft - http://www.videosoft.net.uy
(c) VSAntivirus - http://www.vsantivirus.com
|
|
|