Domingo 02 de Febrero, 2014

HTTPSEverywhere, a la Chilena

Muchos de los problemas de seguridad que nos aquejan en la red están fuera de nuestro control. En mi último artículo, mostré como varias instituciones del sector público y la banca en Chile tienen sitios webs cuya seguridad o implementación es deficiente.

Una de esas malas prácticas es no ofrecer el sitio web servido por HTTPS por defecto, o, como discutía en el artículo mencionado más arriba, incluir un formulario de identificación que envía los datos con una conexión segura pero inserto en una página que no lo es. Esto última es una práctica particularmente irresponsable por parte de, por ejemplo, el Servicio de Impuestos Internos, NIC.cl o bancos como el Santander, que se esperaría deberían tener un profundo interés en educar a sus usuarios a utilizar buenas prácticas de seguridad. Y una de las más básicas es enseñarle a sus usuarios es que deben esperar encontrar una pista visual estándar de que la conexión (o el formulario de identificación) es segura. En el caso de Wikipedia, por ejemplo, la presencia del candado en la barra de dirección de Firefox indica una conexión encriptada:

Visual

En vez, nos encontramos con esto:

Screenshot 2014 02 02 15 05 41

o:

Screenshot 2014 02 02 15 07 55

Donde la única pista visual de la seguridad de la conexión es el candado o llave en el formulario de identificación. De más está decir que la presencia de ese elemento visual no significa nada: un ataque malicioso podría interceptar la conexión de un usuario a una página que se podría ver exactamente igual a la del Sanyander. La página verdadera del Banco Santander transmite la información del formulario vía una conexión segura, pero un usuario no tiene una forma fácil de verificar esto

Afortunadamente, existe una solución relativamente fácil para resolver esto por parte de los usuarios de estos sitios: utilizar HTTPSEverywhere, una extensión para Firefox (con una versión beta para Chrome y Ópera) que permite utilizar por defecto la versión segura de un sitio web. Es decir, si el usuario intenta visitar http://www.santander.cl, esta extensión automáticamente dirige la conexión a https://www.santander.cl.

Agregar nuevos sitios (o reglas, en la nomenclatura utilizada por sus desarrolladores) no es tan fácil como podría ser, pero acá va una breve guía (copiada y pegada de aquí):

  1. Instalar HTTPS Everywhere.

  2. Crear una regla, que es un archivo .xml bastante simple. La siguiente es la que escribí para el Banco Santander:

  1. Las reglas escritas por el usuario deben ser copiadas al directorio HTTPSEverywhereUserRules, que se encuentra en el directorio del perfil del usuario de Firefox:

    • Linux: ~/.mozilla/firefox/
    • OS X:
      • ~/Library/Application Support/Firefox/Profiles/
      • ~/Library/Mozilla/Firefox/Profiles/
    • Windows: %APPDATA%\Mozilla\Firefox\Profiles

Una vez reiniciado Firefox, la visita al sitio del Banco Santander resulta en:

Screenshot 2014 02 02 15 27 27

y que muestra que la conexión, finalmente, es segura1.

Es de esperar que estas instituciones (te estoy mirando a ti, SII) comiencen a tomarse más en serio tanto la seguridad como la educación de sus usuarios. Por lo pronto, he publicado en GitHub algunas reglas para algunos sitios de interés en Chile. ¿Disfrute?

  1. Pero revela otro pecadillo: El sitio seguro del Banco Santander incluye contenido que no está servido por HTTPS. Afortunadamente, Firefox bloquea por defecto este contenido, asegurando una conexión de mayor seguridad []

~

Miércoles 22 de Enero, 2014

La seguridad de los sitios financieros y públicos en Chile

Si hay una lección importante que aprender de todo lo sucedido el año 2013 es que nuestra privacidad y la seguridad de nuestros datos en la red están siendo atacados en forma incesante por razones tanto políticas como económicas. Estas historias han puesto en evidencia la importancia de que instituciones públicas y privadas redoblen sus esfuerzos para utilizar los más altos estándares de seguridad cuando se trata de interactuar con ciudadanos o clientes en la red.

Esto es lo que tenía en mente cuando me enteré de que SSL Labs había actualizado sus herramientas para medir la seguridad de la configuración utilizada por servidores web, y que utiliza el sistema norteamericano de letras de A (Excelente) a F (Reprobado) para darle una “nota” al sitio. Armado con mi navegador, el SSL Server Test, y las recomendaciones de los expertos, probé la seguridad de los sitios de bancos y otras instituciones críticas de nuestra infraestructura digital.

Los resultados, que publico a continuación, muestran que hay varias instituciones que requieren un llamado de sus usuarios para que solucionen lo que podrían ser serios problemas de seguridad:

Los mateos:

En este grupo están los que se sacan una “A-” por una buena implementación de estándares modernos y seguros para una conexión segura: ServiPag y TransBank, y los Bancos de Chile, Itau y BBVA.

Los alumnos promedio:

El Banco Corpbanca saca una “B” por no incluir soporte para los protocolos más modernos de encripción.

El Registro Civil y la Tesorería General de la República tienen sitios que mezclan elementos encriptados y otros que no. Mala idea, aunque no es el único problema.

Pero los hay peores. Mucho peores.

Los reprobados:

Y aquí llegamos a esas instituciones que han creado sus sitios web utilizando tecnologías obsoletas, inseguras o con problemas de implementación que ponen en riesgo la seguridad de sus usuarios.

En esta categoría caben realmente dos grupos. En el primero están algunos sitios que, de hecho, obtuvieron una buena nota en el test de SSL Labs, pero cuya implementación le resta un tremendo grado de seguridad a sus sitios. Aquí caben los Bancos Santander y Falabella , que tienen un sitio seguro (pruébelo usted mismo cambiando http:// por https:// en su navegador) pero que por defecto ofrecen la página de acceso que se transmite sin encripción alguna (aunque la información del formulario si se transmite así). Como dicen los expertos de la OWASP, esto es una mala práctica:

La página de autenticación y todas las páginas autentificadas subsecuentes deben tener acceso exclusivo a través de TLS. La página inicial de autenticación, denominada “página de llegada de autenticación” (“page landing page”), debe estar servida vía TLS. El no utilizar TLS para la página de llegada le permite a un atacante modificar el formulario de autenticación, causando que las credenciales de un usuario sean enviadas a un lugar arbitrario. El no utilizar TLS para paginas autentificadas después del login permite a un atacante ver el ID de sesión sin encriptar y comprometer así la sesión autenticada del usuario.

En este grupo merece atención especial el Banco Bci, que tiene un sitio seguro que responde con un error, cuyo formulario de autenticación es una ventana emergente que no le permite verificar al usuario la seguridad de la conexión (¿Aló, 2001?). De esto también es culpable el muy popular Mercado Libre.

El segundo grupo son instituciones que, a pesar de ofrecer la aparente tranquilidad de una conexión segura, utilizan una configuración que recibe una “F” (¡Reprobado!) en el test de seguridad de SSL Labs. Este hall de la desgracia no es ni pequeño ni poco importante, e incluye nada menos que a los Bancos Internacional, Consorcio, Estado, Bice, Paris, Security (!!!),Penta, Rabobank y ScotiaBank. Es decir, de los 17 bancos que son parte de la ABIF más el Banco del Estado, solo cuatro (24%) han implementado sus sitios en una forma que pasa estos estándares de seguridad y ofrecen ese acceso con una página via TLS.

Y como guinda de la torta, tenemos al Servicio de Impuestos Internos1. El SII comete el mismo pecado de implementación de varios de los bancos que mencionaba arriba, insertando un formulario de autenticación “seguro” en una página insegura (es decir, sin utilizar https/TLS). Como apunta la OWASP, alguien podría atacar a un usuario o grupo de ellos falsificando la página del SII con ese mismo formulario (el usuario normal no tiene forma de saber si ese formulario envía la información en forma segura). Aún peor, el SII obtiene una “F” con SSL Labs por varias fallas serias de seguridad, incluyendo aceptar conexiones usando protocolos inseguros, no incluir protocolos más modernos y seguros, y ser susceptibles a ataques que se conocen desde al menos el año 2009.

Hace años, cerré mi cuenta en ScotiaBank en parte porque los problemas de seguridad que noté en su sitio web2 me hizo desconfiar de la capacidad del banco de resguardar mis datos. Este simple ejercicio con SSL Labs (y que está lejos de ser una auditoría de seguridad completa) demuestra que los problemas son mucho más generalizados en la internet criolla. Dada las amenazas comprobadas que han sido reveladas en los últimos meses, parece que el mejor momento para asegurar que la información de millones de chilenos está segura era ayer.

Actualización 27-Enero: la versión original del artículo decía que el Banco París había obtenido una buena nota en el test de SSL Labs, lo que es incorrecto. A esta fecha, obtienen una F.

  1. El SII tuvo que cambiar, hace unos años, el certificado que usaba para encriptar sus sesiones web después de que el periodista Christian Leal publicara en su blog que el la longitud de la llave del certificado – 128 bit – era claramente insuficiente para estos tiempos. []
  2. en ese tiempo aún tenían el formulario de autenticación inserto en una página insegura []

~

Sábado 26 de Octubre, 2013

Latinoamérica, sin Chile, trabajando por el derecho a la privacidad en Naciones Unidas

Hoy, la revista Foreign Policy reveló que un grupo países liderados por Brasil y Alemania están trabajando juntos para que la Asamblea General de las Naciones Unidas adopte una resolución reafirmando la importancia de la privacidad en internet. El documento no menciona ni a Estados Unidos ni a la NSA, pero el objetivo de la resolución es evidente: generar presión internacional para que EEUU tome pasos serios para controlar la vasta red de espionaje que ha sido montada por la NSA.

Además de Alemania y Brasil, la lista de los países trabajando en este esfuerzo son:

Argentina, Austria, Bolivia, Cuba, Francia, Ecuador, Guyana, Hungría, India, Indonesia, Liechtenstein, México, Noruega, Paraguay, Sudafrica, Suecia, Suiza, Uruguay y Venezuela.

Dos cosas notables en esta lista: primero, refuerza la idea de que más que Europa vs. EEUU, la disputa por los programas de espionaje enfrenta por un lado a un eje de países en su mayoría angloparlantes – como Australia, Gran Bretaña, Nueva Zelanda e Israel – con, por el otro lado, países en el resto del mundo que se se ven en tremendo peligro de perder su soberanía de sus instituciones y ciudadanos a través de la erosión masiva de la privacidad que es el producto de estos programas de espionaje.

Y lo segundo, y quizás más evidente, es la fuerte presencia Latinoamericana en este esfuerzo. Fuerte, pero no unánime, gracias en parte a la ausencia de Chile, que a diferencia de muchos de los países de la lista más arriba, ha sido nombrado específicamente como uno de los países víctimas del espionaje de la NSA. Una omisión lamentable del Gobierno de Chile, y que no hace más que contribuir a la impresión de que después de los primeros anuncios rimbombantes, parece haber abandonado sus esfuerzos de investigar las acciones de la NSA, y de tomar un rol de liderazgo en contrarrestarlas vía esfuerzos como el que están en marcha en Naciones Unidas.

~

Anterior →
Los contenidos de este blog están publicados bajo una licencia Creative Commons Atribución-Compartir-Igual. (c) 2005-2014 El Diablo en los Detalles | Usando WordPress y una versión modificada de Barecity.