martes, 3 de marzo de 2015

FREAK, un nuevo ataque a SSL/TLS

Hubo un tiempo en el que el gobierno de los Estados Unidos consideraba toda tecnología de cifrado propia restringida para su exportación, en la misma categoría que el equipamiento militar. El razonamiento que se ofrecía era la posibilidad de que los algoritmos de cifrado cayesen en manos enemigas y estos dispusieran así de una herramienta que entorpecería el trabajo de las agencias de inteligencia.

El mundo estaba cambiando. Habíamos rasgado el telón de acero y el final de la guerra fría cerraba un ciclo que estuvo a punto de hacernos retroceder varios milenios en la historia. Hablamos de los primeros años 90, donde las puntocom y el Internet de entonces iban soplando aire a pleno pulmón en una burbuja que terminaría por reventar años después. El comercio electrónico despegaba y era necesario ganarse la confianza del cliente tradicional.

La industria necesitaba el cifrado, los lobbies no tardaron en echarse encima de los políticos y estos terminaron por capitular abriendo progresivamente las reglas del juego para que el cifrado permitiese poner un "candadito amarillo" en el navegador. Internet "ya era segura" (en efecto, las comillas denotan una gran ironía).

Decimos progresivamente porque no fue fácil. Estados Unidos permitía el cifrado, su exportación y uso, pero con serias limitaciones. En primer lugar, solo se permitía la exportación de algoritmos de cifrado en una versión "reducida". Por ejemplo, dentro de Estados Unidos era posible obtener un navegador con una capacidad de cifrado mayor que su versión internacional, la cual usaría longitudes de claves muy inferiores, tan reducidas que era posible descifrar comunicaciones cifradas con dicho navegador de manera relativamente fácil. A esos conjuntos de cifrado se les marcaron con la pseudoetiqueta EXPORT.

Años después la situación fue cambiando poco a poco hasta el casi completo levantamiento de restricciones fronterizas. Los cifrados deliberadamente débiles fueron cayendo en desuso o sustituidos por mejores algoritmos y longitudes de claves mayores... pero no terminaron por desaparecer.

Todo esto nos permite ponernos en situación para entender un nuevo ataque. Consiste en una vulnerabilidad descubierta por un colectivo de investigadores bajo el nombre de SmackTLS. El fallo permitiría a un atacante en situación de interceptar las comunicaciones entre cliente y servidor renegociar la conexión segura y hacer que ambos usen uno de los cifrados de la categoría EXPORT, capturar dicho tráfico y descifrarlo con una capacidad computacional al alcance de cualquiera.

El ataque ha sido denominado por sus autores como FREAK (Factoring RSA Export Keys), tiene su propio dominio y web con capacidad para hacer pruebas. Tan solo le ha faltado un requisito (un icono representativo) para cumplir con todos los requisitos de esta tendencia mediática.

Como informan en la comentada web, tanto cliente como servidor han de soportar el conjunto de cifrados EXPORT. Concretamente servidor y cliente han de aceptar y ofrecer respectivamente un conjunto RSA_EXPORT o usar el cliente una versión vulnerable de la librería OpenSSL; algo que, entre otros productos, usan Android e iOS.

¿Qué hacemos?

Como se ha comentado, todo aquello que use una versión de OpenSSL anterior a las siguientes versiones es virtualmente vulnerable: 0.9.8zd, 1.0.0p, 1.0.1k. Especial mención a los servidores, como medida preventiva se ha de asegurar que no se esté ofreciendo soporte a cifrados EXPORT.

Desde la línea de comandos:

openssl s_client –connect servidor:puerto –cipher EXPORT

Un servidor vulnerable devolverá la salida del tipo (resumida):

New, TLSv1/SSLv3, Cipher is EXP-RC4-MD5
...
Cipher   : EXP-RC4-MD5

Ese "EXP" es, por supuesto, una suite de cifrado que pertenece a EXPORT y es de un servidor vulnerable.

Otro ataque más a OpenSSL y una nueva técnica que pone en riesgo la privacidad de las comunicaciones.

Más información:

SmackTLS

FREAK

OpenSSL Security Advisory [08 Jan 2015]
DTLS segmentation fault in dtls1_get_record (CVE-2014-3571)



David García
Twitter: @dgn1729


lunes, 2 de marzo de 2015

Vulnerabilidades en FortiClient para Android e iOS

Se han publicado tres vulnerabilidades que afectan a FortiClient en sus versiones para Android e iOS y que podrían permitir suplantar los servidores y revelar información sensible.

Fortinet FortiClient es una aplicación que permite crear una conexión segura de red privada virtual utilizando conexiones de modo túnel SSL VPN o IPSec entre el dispositivo móvil -Android o iOS- y el servidor FortiGate.

El boletín FG-IR-15-004 corrige tres errores de seguridad que afectan a Fortinet FortiClient en sus versiones 5.2.3.091 para Android y 5.2.028 iOS. Estas vulnerabilidades se exponen a continuación:

  • CVE-2015-1453: el uso de la clave de cifrado 'FoRtInEt!AnDrOiD' incrustada en el código de la clase 'qm' podría permitir obtener contraseñas y otros datos sensibles (como el certificado cliente pkcs12, la contraseña del certificado cliente, la clave precompartida o contraseña IPSec, o la contraseña SSL) gracias a su uso para descifrar los datos de las preferencias compartidas. Para aprovechar esta vulnerabilidad es necesario tener acceso físico al dispositivo móvil.
        
  • CVE-2015-1569 y CVE-2015-1570: error en la implementación del protocolo 'Endpoint Control' al no validar adecuadamente los certificados, esto facilita la suplantación de los servidores a través de un ataque de hombre en el medio.


Los errores se encuentran solucionados en las versiones 5.2.6 para Android y 5.2.1 para iOS aunque, por el momento, tanto en Google Play como en Apple Store no se encuentran disponibles.

Más info:

FortiClient Android and iOS multiple vulnerabilities

FortiClient Download

FortiClient in Google Play

FortiClient in Apple Store



Juan José Ruiz