Las alarmas se encendían de nuevo a principios de esta semana tras la publicación de una investigación que presentaba una grave vulnerabilidad en algunos de los protocolos de cifrado de las comunicaciones más extendidos, denominada FREAK Attack.
Si a finales de 2014 vimos cómo protocolos tan conocidos como SSL y TLS podían ser vulnerables a ataques Man-In-The-Middle gracias a vulnerabilidades como Poodle, ahora vemos cómo el legado de implementaciones con décadas de antigüedad puede afectar a la seguridad de las comunicaciones actuales.
Implementación del cifrado
Con el inicio de la expansión de Internet a mediados de los ‘90, la aparición de las primeras tiendas de comercio online y el estallido de las puntocom, se vio necesario proporcionar alguna medida de seguridad a todas aquellas comunicaciones que, de ser interceptadas por alguien con malas intenciones, podrían suponer un peligro para los usuarios de la incipiente Internet.
Es por eso que, de forma progresiva, se fue incorporando el cifrado a aquellas comunicaciones más críticas (el conocido candadito), con Estados Unidos a la cabeza de esa implementación. Pero claro, en aquella época, estos mecanismos de cifrado eran considerados altamente importantes y los Estados Unidos tampoco querían que potencias extranjeras utilizaran un cifrado que impidiera a sus agencias de espionaje vigilar las comunicaciones y obtener así una ventaja estratégica.
De esta forma se realizó una implementación del cifrado diferente en cuanto a seguridad en Estados Unidos y en el resto del mundo, puesto que los primeros tan solo permitían la exportación de una versión limitada de los protocolos de cifrado. A las variedades de cifrado destinadas a ser exportadas fuera de los Estados Unidos se les conoció con la nomenclatura EXPORT.
Con el paso del tiempo, estas restricciones a la exportación de mecanismos seguros de cifrado desaparecieron pero, no obstante, las variedades EXPORT no terminaron de desaparecer y siguieron presentes en versiones más avanzadas (y supuestamente más seguras) de los cifrados más utilizados.
Y entonces llegó FREAK
La investigación hecha pública recientemente ha demostrado que muchas de las implementaciones actuales de los cifrados SSL/TLS siguen soportando versiones antiguas como las EXPORT que acabamos de analizar. Estas implementaciones están presentes en servidores y clientes (principalmente en navegadores) a pesar de que prácticamente nadie las utiliza actualmente.
El problema con el uso de este tipo de cifrado es que sus claves pueden romperse fácilmente con un equipo barato y en poco tiempo. El atacante tan solo debería ser capaz de realizar un ataque Man-In-The-Middle (desde una red Wi-Fi pública por ejemplo) para poder interceptar las comunicaciones de uno o varios usuarios o, más concretamente, interceptar las comunicaciones entre clientes y servidores vulnerables.
Como en ataques ya mencionados como Poodle, la técnica consiste en interceptar la comunicación entre cliente y servidor y forzar el uso de un cifrado vulnerable (lo que se conoce como hacer un downgrade). De esta forma, estaríamos usando una clave RSA de 512 bits de longitud, algo que puede romperse con unas pocas horas y el hardware adecuado (que no es precisamente caro).
¿A quién afecta FREAK?
Según podemos ver en una web destinada a aportar información sobre este ataque, hasta un 26,3% del total de servidores que incorporan protocolo de cifrado HTTPS serían vulnerables. Sin duda, una cifra nada despreciable y que representa millones de servidores en todo el mundo y algunos de ellos pertenecientes a sitios con una elevada posición en los rankings de número de visitas o a administraciones y servicios públicos.
En el lado de los clientes, nos encontramos con muchos navegadores vulnerables en varios sistemas operativos. Su vulnerabilidad se deriva, tal y como hemos explicado en el punto anterior, por la posibilidad de forzar el uso de cifrados inseguros. Algunos de los navegadores que se han visto afectados por FREAK incluyen Internet Explorer, Crome para Mac OS y Android, Safari en Mac OS e iOS, Opera en Mac OS y Linux y los navegadores por defecto en Android y Blackberry.
Se espera que durante los próximos días se lancen actualizaciones que corrijan esta vulnerabilidad. Para revisar si nuestro navegador es vulnerable podemos acceder a webs preparadas para tal efecto y tomar las medidas adecuadas en el caso de que sea vulnerable.
Medidas a adoptar
Las medidas a adoptar para evitar vernos afectados por FREAK dependen del tipo de sistema vulnerable. Así pues, si tenemos un servidor vulnerable deberíamos desactivar lo antes posible el soporte para versiones TLS del tipo EXPORT. De paso, podemos aprovechar para desactivar otros protocolos inseguros como SSL o versiones de TLS inferiores a la versión 1.2.
La mayoría de los usuarios deberían preocuparse por mantener su navegador actualizado con la versión más reciente. Se esperan actualizaciones de la mayoría de navegadores más utilizados en los próximos días por lo que debemos estar atentos y actualizarlos tan pronto como sea posible.
Por último, si somos administradores de sistema o desarrolladores, deberíamos asegurarnos de que nuestras librerías TLS están actualizadas. Se sabe que tanto OpenSSL como Microsoft Schannel son vulnerables. Debido a que estas librerías son utilizadas por muchos otros programas, deberíamos asegurarnos de que nuestras aplicaciones no ofrecen la posibilidad de utilizar el cifrado de categoría EXPORT bajo ninguna circunstancia.
Conclusión
Con el caso de Poodle aún reciente y ahora con FREAK, queda claro que los sistemas de cifrado que hemos utilizando durante tanto tiempo necesitan de una actualización. Asimismo, que más del 25% de servidores y la mayoría de navegadores sean vulnerables demuestra que aún queda mucho trabajo por hacer a todos los niveles para proteger nuestra privacidad de miradas indiscretas.