Netscape Communicator 4.x permite leer desde un servidor web ficheros
HTML del cliente, incluyendo el bookmark y la caché del navegador.
El ataque es posible siempre y cuando se conozca el nombre del perfil
del usuario y el navegador esté configurado para permitir interpretar
JavaScript y aceptar cookies, funcionalidades en las que se basa la
vulnerabilidad.
El problema surge porque Netscape permite incluir código JavaScript
en las cookies. Aprovechando esta particularidad, es posible diseñar
una cookie con código JavaScript que lea información del sistema
del usuario, apuntando por ejemplo a:
C:\Program Files\Netscape\Users\default\bookmark.htm
En esta ocasión suponemos que el nombre del perfil es «default», que
suele coincidir en muchas ocasiones por tratarse del nombre por
defecto. En el caso de que el usuario víctima utilice otro nombre de
perfil es tarea del atacante intentar averiguarlo.
Siguiendo con el ejemplo, la página web atacante llamaría en uno de
sus frames a la cookie que contiene el código JavaScript -que
anteriormente habría sido descargada por el usuario- a través de la
línea:
C:\Program Files\Netscape\Users\default\cookies.txt?/.html
Esta línea provocaría la ejecución del código JavaScript y la lectura
del bookmark sin ningún problema, ya que ambos ficheros, cookie y
bookmark, se encuentran en el disco duro local y por tanto en la misma
zona de seguridad para Netscape Communicator. Posteriormente los datos
obtenidos serían transmitidos al servidor web como parámetros en una
URL.
El descubridor de esta vulnerabilidad, Bennett Haselton, facilita una
demostración en línea:
http://peacefire.org/security/jscookies/jscookieset.html
A la espera de que Netscape solucione el problema, los usuarios
pueden deshabilitar las cookies o la ejecución de JavaScript en
Communicator, así como procurar que el nombre de perfil no sea
«default».
bernardo@hispasec.com
Deja una respuesta