Zootropo

Diario del mundo geek.

martes, agosto 03, 2004

La conjura de los necios (o sobre bugs en Firefox que no existen)

Hablamos de una 'vulnerabilidad' de Firefox que consiste en desactivar las barras de herramientas de Firefox utilizando Javascript y sustituirlo por una imitación de la interfaz utilizando XUL. Ahora, en cualquier navegador se puede hacer lo mismo pero imitando la interfaz con DHTML en lugar de XUL. Conclusión, esto no es una vulnerabilidad, es algo que se puede hacer con cualquier navegador que tenga habilitado Javascript. Por lo tanto, si esto es una vulnerabilidad todos los navegadores del mercado con Javascript son vulnerables, se utilice XUL o HTML para imitar la interfaz.

¿La solución? En Internet Explorer tienes que desactivar Javascript totalmente para que no te hagan algo parecido. En Firefox puedes indicar a Javascript que puede y que no puede hacer. Tenemos primero un simpático diálogo en Tools -> Options -> Web Features -> Advanced para desactivar o activar algunas opciones, entre ellas el permitir a Javascript ocultar la barra de estado, con lo que simplemente desactivando esta opción sería sencillo darse cuenta de que es una imitación, ya que tendríamos dos barras de estado, la verdadera y la falsa. Pero podemos deshabilitar bastantes mas opciones de lo que puede hacer Javascript (através de la jerarquía derivada del objeto Document; usando DOM) otras opciones que no se muestran en ese diálogo através de about:config (escribimos about:config en la barra de direcciones y pulsamos enter) o editando el archivo user.js.

Hace un tiempo publiqué en la bitácora mi archivo user.js, en una entrada que llamé Tuneando Firefox con Zootropo que no permite tan siquiera el que Javascript oculte la barra de navegación, con lo que sería incluso mas sencillo el darnos cuenta de que es una imitación. Recomiendo a todos descargarlo y utilizarlo, o editarlo para ajustarlo a vuestras necesidades. Las opciones que interesan en este caso son todas las opciones que comienzan con dom., ya que el user.js incluye otras opciones relativas a rendimiento y velocidad del navegador y similares. El archivo esta comentado para facilitar las cosas. (Nota: el directorio en que se guarda el perfil en Firefox ha cambiado en las últimas versiones desde que escribí esa entrada, echad un vistazo a esto para ver donde se encuentra ahora, según vuestro sistema operativo).

Para que veais la diferencia, asi es como vereis la página que pretende ser el navegador al utilizar mi user.js:


Firefox Falso

Editado: cuando he dicho gilipollas me referia a la gente que menosprecia la seguridad de Firefox, porque he llegado a ver gente que recomendaba pasarse de nuevo a IE o a MyIE2, que al fin y al cabo utiliza el mismo motor, en páginas sobre seguridad informática, increible pero ¡100% real! :/. No me refería a la gente que dice que es una vulnerabilidad. Rectifico porque parece ser que hay gente que se lo ha tomado a mal :/.