viernes, 25 de abril de 2008

Vulnerabilidades resueltas y no resueltas en Apple Safari

Apple publicó la pasada semana una nueva actualización para el navegador web Safari (versión 3.1.1), en la que se corrigen varias vulnerabilidades que podrían ser aprovechadas por atacantes remotos para saltarse restricciones de seguridad, perpetrar ataques de cross-site scripting, causar una denegación de servicio o ejecutar código arbitrario en un sistema vulnerable. A pesar de que la última actualización solventa cuatro vulnerabilidades, recientemente se han encontrado otros tres problemas de seguridad no parcheados en Safari 3.1.1, y que podrían ser aprovechados para causar una denegación de servicio o para falsificar el contenido de la barra de direcciones, pudiendo mostrar una URL que no se correspondería con el sitio web que se está visitando.

Safari es un popular navegador web desarrollado por Apple, incluido en las sucesivas versiones de Mac OS X y del que también existen versiones oficiales para Windows XP y Vista.

* Uno de los últimos problemas de seguridad detectados, confirmados para la versión más reciente del navegador (v.3.1.1 para Mac OS X y Windows), hace posible la falsificación de la URL en la barra de direcciones del navegador. Esto podría ser aprovechado, por ejemplo, para favorecer ataques de phishing. Si pinchamos en un enlace malicioso podríamos ser dirigidos a una página web falsificada aunque la barra de direcciones podría mostrar la dirección legítima de la web a la que creemos estar accediendo.

La vulnerabilidad está provocada por un error de validación de entrada, y podría ser aprovechada por medio de una URL especialmente modificada que contenga cierto número de caracteres especiales en el campo "usuario" antes del carácter @.

Las otras dos vulnerabilidades publicadas de forma reciente, y que aún no están parcheadas, podrían ser aprovechadas por un atacante remoto para causar que el navegador dejara de responder (denegación de servicio):

* La primera estaría provocada por un error al manejar URIs mal formadas que contengan "file:".

* La segunda por un error al manejar un gran número de llamadas a la función document.write() con argumentos demasiado largos, que podrían causar el uso exhaustivo de la memoria disponible si se visita una página web especialmente modificada.

A continuación se describen brevemente las vulnerabilidades corregidas por Apple en la versión 3.1.1 de Safari, disponible para su descarga desde el miércoles de la semana pasada.

* Un error al descargar archivos con un nombre demasiado largo podría causar una corrupción de memoria provocando una denegación de servicio, e incluso, permitiendo la ejecución remota de código arbitrario.(Sólo afecta a la versión de Safari para Windows).

* Otra problema corregido podría ser aprovechado para falsificar un sitio web, mostrando un contenido que no correspondería a la dirección que se muestra en la barra de direcciones. (Sólo afecta a la versión bajo Windows).

* Un error en el manejo de URLs que contienen “:” en el nombre del host que podría ser aprovechado para conducir ataques de cross-site scripting por medio de una URL especialmente manipulada.

* Un desbordamiento de enteros en el compilador de expresiones regulares JavaScript en WebKit (JavaScriptCore/pcre/pcre_compile.cpp) que podría ser aprovechado por medio de una página web maliciosa para causar una denegación de servicio o ejecutar código arbitrario.

A modo de curiosidad, se especula con que esta última vulnerabilidad fue la aprovechada por los ganadores del concurso de hacking PWN to OWN en el que se competía contrarreloj por lograr la ejecución remota de código arbitrario en alguno de los tres PCs suministrados, cada uno equipado con un sistema operativo distinto: Mac OS X 10.5.2, Windows Vista SP1 y Ubuntu 7.10.

Se recomienda actualizar a la versión 3.1.1 de Safari, que puede ser instalada a través de la funcionalidad de actualización (Software Update) de Mac OS X o, según versión y plataforma, descargándola directamente desde:
http://www.apple.com/support/downloads/
http://www.apple.com/safari


Pablo Molina
pmolina@hispasec.com


Más información:

Multiple vulnerabilities in Safari 3.1.1 (525.17)
http://es.geocities.com/jplopezy/pruebasafari3.html

About the security content of Safari 3.1.1:
http://support.apple.com/kb/HT1467

Apple Safari WebKit PCRE Handling Integer Overflow Vulnerability
http://www.zerodayinitiative.com/advisories/ZDI-08-022/