| Kriptópolis alojado en |
| Zilos-Veloxia Network |
| Tu mejor defensa: |
| Bufet Almeida |
El extraño caso de las galletitas indigestas
Por José Manuel Gómez
Para empezar, permitídme una pregunta capciosa:
¿Es posible que la seguridad del maltrecho Explorer 6 sea mejor aún en algo que la del ultimísimo Firefox?
La respuesta parece fácil, pero no, que nadie conteste todavía. Explorer 6 es un navegador vetusto, repleto de vulnerabilidades, lo sé. En cambio Firefox 2.0.0.1 es el buque insignia de la Fundación Mozilla, y por tanto código libre sometido a miles de ojos, más rápido en responder a los fallos, liberado ayer mismo y presuntamente más avanzado en todos los aspectos.
Sin embargo, muchos desarrolladores y expertos en seguridad web siguen pensando que Explorer 6 es más seguro en un aspecto concreto. ¿Adivináis cuál...?
Hagamos un poco de historia. Nada menos que en 2002, Microsoft presentaba HttpOnly, una extensión a las famosas cookies.
La idea era poder definir algunas cookies como de manejo exclusivo por el servidor, es decir, que no pudieran ser accedidas mediante scripts desde el propio navegador. De ese modo se cerraba el paso a bastantes explotaciones de vulnerabilidades XSS (hay una clara explicación de la idea de Microsoft -aunque en inglés- en Mitigating Cross-site Scripting With HTTP-only Cookies).
Si bien es cierto que las vulnerabilidades XSS residen en el servidor, y que las galletas http-only no son una panacea, sí parece claro que los navegadores pueden de ese modo ayudar a contener algo el problema, que -por cierto- es ahora mismo uno de los problemas de seguridad de mayor prevalencia en Internet.
Como consecuencia, Microsoft implementó esta extensión en el SP1 de Explorer 6, a la vez que pedía al resto de fabricantes de navegadores que hicieran lo propio, por considerarlo positivo para la seguridad de los usuarios en general.
Sin embargo parece que nadie recibió la propuesta de Microsoft con especial entusiasmo. Por poner un ejemplo, en el terreno de la programación de servidores, no es hasta la versión 5.2 que PHP implementa esta extensión.
Mención especial merece la escasa acogida dispensada a la idea por los desarrolladores de la Fundación Mozilla. Si bien pronto pusieron en marcha un hilo de discusión al respecto, y calificaron la idea de Microsoft como una posible "mejora" a implementar en Firefox, parece que cuatro años no han sido suficientes para ponerles de acuerdo al respecto. La ausencia de soporte para cookies httpOnly en Firefox 2.0.0.1, presentado ayer mismo, habla por sí misma.
Sin embargo, como la comunidad no acaba en Mozilla y las disquisiciones de sus desarrolladores, sí que hay gente tratando de implementar el soporte de estas cookies en Firefox, incluso ya en la forma de una incipiente extensión.
Ventajas del código libre, que a veces va incluso más deprisa que sus desarrolladores oficiales.



Extensiones
Siempre vi a Firefox “incompleto” sin determinadas extensiones (¿que sería del navegador sin ellas?) .
No obstante echo de menos algunas de esas extensiones en Opera.
no estoy de acuerdo
La existencia de cookies httpOnly sólo serviría para que los programadores se confiaran de que las cookies que plantan en los equipos de los usuarios son "intocables".
Una vez más, vemos la idea de Microsoft de que los usuarios son meros usuarios, que el software no pertenece al usuario, que el usuario sólo tienen una licencia limitada de uso y por lo tanto no es quién para decidir lo que el software hará o dejará de hacer.
Yo como programador, y como defensor del software libre y de la libertad del usuario de dar órdenes a la computadora de supropiedad, y que compró con su dinero, jamás confiaría en que el browser no permitirá que las cookies sean modificadas del lado del usuario, y aunque existiera esa posibilidad, no la utilizaría. Prefiero programar un poco más antes que arriesgarme a confiar en un software que está totalmente fuera de mi control.
Claro, supongo que ahora Microsoft argumentará para poder dar soporte seguro a sus cookies "seguras", necesita que haya "truested computing" del lado del cliente, o sea que el usuario sea incapaz de correr un navegador que no esté "autorizado", o que no tenga permitido instalar una extensión que le permita saltarse la restricción de cambiar ciertas cookies, o que no pueda correr un programa con capacidad de enviar cookies fabricadas manualmente, etc. etc.
En fin, que con navegadores "seguros" como Explorer, estamos como estamos.
Aclaración: Si es tan importante evitar que el usuario o que un script que corra en el equipo del usuario modifique una cookie existen varias soluciones. Una es no usar cookies sino variables de sesión que se guardan en el servidor. Otra es "firmar" la cookie, mediante algún tipo de hash o algún otro método, en función de cuánta seguridad queramos.
Por ejemplo, una seguridad incluso mayor que la que proven las cookies "httpOnly" se obtendría con este simple código en php:
Para enviar la cookie:
function secure_setcookie($nombre,$informacion){
setcookie($nombre,$informacion);
setcookie("validador_";.$nombre,
md5($_GLOBALS["secreto1"].$informacion.$_GLOBALS["secreto2"])
.sha1($_GLOBALS["secreto1"].$informacion.$_GLOBALS["secreto2"])
);
}
Para leer y validar la cookie: function secure_getcookie($nombre){
if (md5($_GLOBALS["secreto1"].$_COOKIE[$nombre].$_GLOBALS["secreto")
.sha1($_GLOBALS["secreto1"].$_COOKIE[$nombre].$_GLOBALS["secreto2")
!= $_COOKIE["validador_".$nombre])
die("Cookie $nombre inválida");
else return $_COOKIE[$nombre];
}
La seguridad del método depende de elegir adecuadamente las variables secreto1 y secreto2 y obviamente mantenerlas en secreto pero con lo débil que pueda ser, es inmensamente más seguro que confiar en que el navegador no permitirá al usuario cambiar una cookie.
Por lo que veo, la última
Por lo que veo, la última versión de esa extensión fue publicada el 24 de Octubre de este año. Sin duda la comunidad que Firefox tiene es espectacular.
Me gustaría felicitar a Kriptopolis por su entusiasmo y seguimiento de la seguridad en internet. Gracias por el aporte que cada día hace que mucha gente esté un poco más segura en este medio que nos pertenece a todos.
Feliz Navidad a todos! ;)
Seria Opera... Arktun
Seria Opera... Arktun, es decir, un navegador monolitico, sin capacidad de expandirse :D
Con sus ventajas... e INCONVENIENTES :)
Lo que hace espectacular e innovador a Firefox son sus extensiones y la inmensa comunidad de usuarios y programadores que tiene detras... Eso lo hacen ser la alternativa preferida a Microsoft.
Por mucho que quieran....
Es evidente que Firefox tiene un montón de extensiones y cada día más, gracias al entusiasmo de una comunidad de desarrolladores activa y motivada por la calidad de un producto.
Ahora bien, aunque alguien me quisiera justificar que Explorer 6 es mejor, siento decir que en mi casa no queda viva una sola versión de Windows, por lo que en mi caso, si no imposible, sería complicado ejecutar un Explorer (que conste que una vez lo hice, como también lo hice con Office).
Así y todo, los usuarios de Linux tenemos varias alternativas para la navegación y todo hay que decirlo, creo que estoy bastante de acuerdo con lo que ha dico anv, las soluciones tan "transparentes" en seguridad, no suelen ser tales soluciones.
"Copyleft 2006 Fernando Acero Martín. Verbatim copying, translation and distribution of this entire article is permitted in any digital medium, provided this notice is preserved".
fernando,
Primero, nadie ha dicho que explorer 6 sea recomendable.
Segundo, las extensiones también añaden problemas, inconsistencias e incluso nuevas vulnerabilidades. Por eso existe la opción Safe Mode.
estimados ffkff ...
en repetidas ocasiones se han hecho estudios sobre la eficiencia de los navegadores [ si saben cuales, no se hagan ] por personas/organizaciones con “autoridad”…. y en la mayoría, Opera ha salido en primer lugar, sino me equivoco siempre arriba de Firefox…
la sinverguenzada más grande es que en ocasiones, necesiten extensiones para características tan básicas de cualquier browser next-gen…
* ffkff = frikie-fanatic-kamikazee-firefox-fanboy
Opinar