Mozilla, las extensiones, la seguridad y lo que podemos aprender del falso positivo

Firefox

Interesante debate sobre seguridad el que se ha abierto esta semana con la aparición de dos extensiones para firefox descargables e instalables desde Mozilla Add-ons y presuntamente infectadas con un troyano. Más adelante se ha comprobado que una de ellas estaba limpia.

Más allá de lo trivial, esto abre toda una reflexión sobre los procesos de calidad y verificación por parte de Mozilla de todas esas extensiones (software, en último caso) descargables desde su repositorio. A este respecto quiero destacar el post de Sergio, que creo que tiene mucha razón cuando recomienda ser prudente con el uso del navegador para tareas sensibles. Esto es obvio para muchas personas (entre los lectores de este blog imagino que obvio para casi todos), pero para la gran mayoría pensar en esos términos será algo nuevo porque no se lo han planteado antes.

Añadiría, además, que en nuestro papel de prescriptores tecnológicos (hablo por mí y mi entorno, sin ir más lejos) es importante que aparte de recomendar el uso de software libre y prácticas más seguras hiciéramos un especial hincapié en la prudencia y la sensatez. Evidentemente, los sistemas 100% seguros, fiables e invulnerables no existen. (Cualquiera que nos diga que su software o su sistema en general es 100% seguro puede ser inmediatamente catalogado como cretino sin miedo a equivocarnos.) Pero donde la técnica no puede llegar, si nos puede acercar (nunca llegaremos, obv) un buen conjunto de buenas prácticas. Al fin y al cabo, cuando hablamos de seguridad somos el eslabón más débil y tiene sentido reducir la inseguridad derivada del mal uso mismo de las herramientas.

Quiero comentar también una pregunta que hace Oscar en el blog de Sergio, que fue el auténtico disparador para escribir este post: un comentario que me quedó largo y al final he decidido ascender a post. Dice Oscar: «Realmente no tengo el tiempo ni los conocimientos para probar el código de uno u otro navegador. ¿cuáles serían las pautas para escoger el mejor o el mas seguro?»

Aquí viene mi respuesta:

Preguntar por las pautas para reconocer y escoger el navegador más seguro es una pregunta tan amplia que requiere una respuesta cuya extensión daría para escribir un blog (no un post, un blog) sólo para ir desglosando esas pautas.

¿El software libre es más seguro que el privativo? De entrada es auditable con mayor facilidad, lo cual no implica mayor seguridad, tan sólo que si hay código malicioso es posible que sea descubierto con menos retraso. El uso de software libre tiene incontables ventajas, pero éste no tiene porque ser intrínsecamente más seguro siempre. Es posible que lo sea en términos generales debido a la facilidad de auditoría (si no propia del usuario, sí de la comunidad –tan importante para que un proyecto de software sea verdaderamente libre), pero puntualmente puede ser inseguro como todo software.

A buen seguro que se aprovechará este incidente para lanzar miedo, incertidumbre y dudas sobre Firefox. Nadie debería alarmarse, sin embargo. Firefox sigue siendo una opción razonablemente segura que, usado con buen tino, conlleva menos riesgos que otras opciones.

Eso sí, en el tiempo por venir y si la tasa de usuarios de Firefox sigue creciendo, esta cuota de usuarios devendrá el mayor problema de seguridad para Firefox y sus programadores. Pensemos por un momento como lo haría un desarrollador de código malicioso: me va a costar el mismo tiempo (no tiene porqué, pero asumamos eso como una aproximación de orden cero correcta) desarrollar mi ataque contra un navegador específico. ¿Invierto mi tiempo para atacar al 1% de usuarios, al 20%, al 40%? Si asumimos también la inexistencia intereses concretos que decanten mi elección de objetivo, mi ataque irá dirigido al navegador que me abra la puerta de más víctimas potenciales: el navegador más utilizado. De entrada, esto convierte a IE8 en un blanco preferido, seguido de Firefox. No debería sorprendernos, por tanto, que en el futuro se hagan cada vez más frecuentes los ataques específicos contra este navegador que tiene el atractivo añadido (para el atacante) de ser multiplataforma.

Por otra parte, no me apasionan verdaderamente los estudios comparativos de seguridad entre diferentes navegadores. La utilidad de esos estudios comparados la pongo en cuarentena porque estas comparativas someten a los navegadores a ataques ya conocidos y los ataques más devastadores son siempre los innovadores, los no conocidos. Dicho de otra forma, equivale a exacerbar la seguridad aeroportuaria porque una vez hubo un atentado con aviones cuando todos sabemos que el próximo ataque masivo no tendrá lugar de la misma forma que el anterior: tendrá otra forma inesperada y nos cogerá por sorpresa. Esa nueva forma inesperada y la consecuente sorpresa son la base del éxito del atacante. Por eso creo que los benchmarks aportan información diferente a la que muchas veces se espera obtener de ellos.

Digo que pongo en cuarentena la utilidad de estas comparativas como medidores de seguridad, pero no la información más sutil que se deduce de ellos: es inadmisible que un navegador sea vulnerable a ataques conocidos, demuestran que el equipo a cargo de ese software no ha hecho su trabajo como debiera. Y, tristemente (porque pone en peligro a multitud de personas), no es infrecuente que se descubran bugs y vulnerabilidades en IE (no es fijación, es que nos guste o no, IE sigue siendo el navegador más utilizado en términos absolutos en febrero de 2010) que ya existían en versiones arcanas de este navegador o que el mismo tenga bugs sin parchear durante meses. (A la hora de escribir este post, IE8 lleva 8 días sin parchear un bug moderadamente crítico que permite la exposición de datos sensibles a un atacante remoto; casi ná. Para 2 años con otras vulnerabilidades sin parchear.)

Desde que una nueva vulnerabilidad se anuncia hasta que se parchea, la aparición de xploits que abusen de ese fallo es exponencial. Decía antes que los ataques innovadores son más peligrosos porque se da por sentado que los ataques ya conocidos harán que se modifique el software en cuestión para mejorar su defensa. Si este parche no llega, el atacante tiene todas las ventajas: un ataque bien conocido (algo que facilita el abuso de la vulnerabilidad) para el que el defensor no se ha preparado. Sin afirmar nada acerca de la seguridad de un software concreto, ese tipo de laxitud con los parcheos suponen todo un argumento para dejar de utilizar un software determinado.

Y todo esto lo digo tranquilamente, sin olvidar que todo software es susceptible de tener errores (por supuesto, también nuestro amado Firefox) que lo hagan susceptibles a ataques. Pero, ¿qué vamos a hacer con eso? No se puede evitar, lo único que se puede hacer es parchear cuanto antes. En eso Mozilla ha dado la de cal y la de arena en apenas unos días: un sistema de verificación del software de su repositorio que se ha demostrado imperfecto (quizá por confianza) que tardará en recobrar la confianza que poseía entre el público permitió que se colara malware, sin embargo han sido muy rápidos en la limpieza de las extensiones y la supresión de esa amenaza concreta, que además demostró ser menor de lo que parecía al principio.

[Y sí, no está libre de fallos ni lo estará nunca, pero en estos momentos no voy a sorprender a nadie si digo que recomiendo usar Firefox. ¿Acaso esperaban ustedes otra cosa? La última recopilación de extensiones de seguridad que vi la hicieron los chicos de Security by default.]

Jose Alcántara
Resolviendo problemas mediante ciencia, software y tecnología. Hice un doctorado especializado en desarrollo de hardware para análisis químico. Especialista en desarrollo agile de software. Más sobre Jose Alcántara.

4 comentarios

  1. El día que nos reiremos de verdad, será cuando una aplicación de la App Store de Apple tenga malware. Esto pasará seguro, ya que nadie puede analizar con detalle la seguridad de tanto código!

    Esto debería hacernos pensar en la falsa seguridad. Apple y los que diseñan la seguridad de los aeropuertos, quieren hacernos creer que con más control se consegue más seguridad. Esto es falso, el atacante siempre encontrará un agujero en algún lugar.

    La solución a nuestros problemas de seguridad no pasa por delegar la seguridad a un tercero, Apple o el Estado, no, pasa por tener una mentalidad de seguridad activa.

    1. La App store no es más que un repositorio de pago, al igual que el de Mozilla, solo que este último contiene únicamente soft libre y gratuito (que no es poco).

      La falsa sensación de seguridad se evitaría aclarando que el jardín vallado no está completamente vigilado. Esto es, aclarando qué programas o extensiones están realmente verificados por Mozilla (o Apple, o quien sea, que todos quieren tener una cosa así), cuáles no … vamos, como se hace en distros linux como Ubuntu (main, universe, multiverse, …). Esto es más informativo y te da idea de a qué atenerte, pero claro: rompe el mito de que todo el soft está bajo control y que puedes instalar todo sin pensar porque Mozilla (o Apple, o quien sea, …) te cuidan. No lo harán, pero sería una gran medida. Ayuda a tener los pies en el suelo.

  2. Uno que fue positivo de verdad, muy conocido, fue cuando noscript modificaba el adblock:
    adblockplus.org/blog/attention-noscript-users

    Identificaron la «picardia» cuando un user en el foro de noscript pregunto inocentemente porque despues de una actualiazacion el adblock no le andaba
    forums.informaction.com/viewtopic.php?f=8&t=877

    de ahi lo marcaron como malware, pero se inicio por un supuesto bug del programa.

    En el soft libre los programadores son unos pocos, lo que esta en juego es su reputacion. Si uno duda del programa puede ver el codigo, es mas transparente la relacion.

    Con el soft cerrado me pregunto, cual es realmente la razon para no mostrar el codigo?
    Creo que ni siquiera califica para analizarlo en cuanto a seguridad o privacidad.

    Saludos y muy buen blog
    ah, gracias por sacar los scripts de google, quedaban un poco raro con la ideologia del blog :)

    1. Cierto, cierto. Recuerdo aquella historia… porque uso tanto NoScript como AdBlock. Me libré del jaleo porque… no recuerdo el motivo, pero estuve días sin conexión y cuando volví ya estaba todo solucionado y el tío había aclarado en la web de NoScript y todo.

      La única motivación para cerrar el código es generar escasez (en términos económicos). Sin embargo, vemos como poco a poco los dominios donde el vendedor de software en condiciones de escasez puede ganar mucho dinero se van acotando. Eso sí: queda mucho por delante. Microsoft lleva 15 años perdiendo dinero en internet y sobrevive porque sigue vendiendo Windows. Google no ha liberado sus aplicaciones porque son gratuitas y funcionan en la web, pero mantenerlas privativas le da una situación que ellos consideran de ventaja frente a muchos usuarios que por pereza o falta de pericia no corren a otros servicios.

      Y sí, hacía tiempo que quería quitar Adsense. El lector promedio del blog tiene NoScript, pero me da igual: era algo personal… no estaba cómodo de un tiempo a esta parte :)

Los comentarios están cerrados.

Este blog usa cookies para su funcionamiento.    Más información
Privacidad