Google acaba de anunciar que el sistema de cifrado SSL v.3.0 tiene más agujeros que un queso suizo y que no debería ser utilizado nunca más. Esto implica a las páginas webs «seguras» https que incluyen en la URL su candado de colores. Si quieres saber en qué consiste el bug, se explica en muchas páginas:
- http://googleonlinesecurity.blogspot.com.es/2014/10/this-poodle-bites-exploiting-ssl-30.html
- https://www.openssl.org/~bodo/ssl-poodle.pdf
- https://www.imperialviolet.org/2014/10/14/poodle.html
¿Qué significa esto?
Que si te conectas a la página web de tu banco, compruebas que tiene el famoso «candado» en el navegador, e introduces tus datos de acceso, si te logueas en Paypal para realizar un pago, alguien podría tener algún sniffer que guarde esta información y la utilice cuando menos lo esperes.
¿Cómo funciona?
Dicho de un modo comprensible… los servidores web y los navegadores incorporan diversos algoritmos de cifrado, SSL v.3, SSL v.2, TLS 1.0, TLS 1.1, TLS, 1.2… y cuando un navegador se conecta a un servidor web «seguro» se negocia el algoritmo de cifrado que se va a utilizar. Generalmente, empiezan por el más nuevo y si ambos no soportan el mismo sistema de cifrado, van bajando la versión hasta dar con algún algoritmo que tengan en común.
Hoy día, los servidores web seguros ya no incluyen algoritmos antiguos como SSL v.2 ni TLS 1.0, pero sí incluyen SSL v.3.0 y TLS 1.1 y TLS 1.2.
Hoy día, el algoritmo SSL v.3.0 ha sido roto y por lo tanto, cualquier comunicación navegador – servidor web que utilice dicho algoritmo es vulnerable y puede ser objeto de espionaje y robo de información.
¿Cómo se soluciona?
Por un lado, hay que entender que para que no nos «espíen» tenemos que configurar nuestro navegador para indicar que no queremos utilizar el cifrado SSL v.3.0, de esa manera, en la negociación de algoritmos, nuestro navegador buscará otro sistema común que nos permita mantener una comunicación cifrada y que funcione. Por otro lado, también debemos configurar nuestros servidores Web o servicios para que no utilicen el algoritmo SSL v.3.0 y de esa manera, evitar que espíen a usuarios cuyos navegadores permitan utilizarlo.
Vamos a ver algunas maneras sencillas de solucionarlo.
Esto se configura diferente según el navegador:
Firefox: Entramos en la dirección: about:config y buscamos la cadena: security.tls.version.min que cambiaremos de valor de 0 a 1 para activar el soporte de TLS.
Chrome: Es un poco más complicado, ya que hay que arrancar la aplicación con la opción:–ssl-version-min=tls1
Internet Explorer: Más complicado aún, ya que hay que acceder a «Configuración, Opciones de Internet, Avanzado», buscar Usar SSL 3.0
y deseleccionarlo.
Puedes entrar aquí para comprobar si tu navegador es vulnerable o está solucionado: https://zmap.io/sslv3/
Con esto, ya tendríamos a nuestro navegador evitando conexiones SSLv3, no obstante, si somos el administrador de sistemas de un servidor web seguro (Elastix también funciona con https) u otros sistemas HTTPS, habría que desactivar el soporte de SSLv3 en el servidor web.
Si trabajamos con un servidor web Apache con su SSL v.3.0, la solución consiste en no permitir este tipo de cifrado. Para ello, tan solo tenemos que editar el archivo /etc/apache2/mods-enabled/ssl.conf y buscar la cadena:
SSLProtocol all -SSLv2
y añadir el trozo que ponemos en negrita:
SSLProtocol all -SSLv2 -SSLv3
De esta forma, el servidor https negociará con todos los algoritmos de cifrado excepto con SSLv2 y SSLv3.
Si no tienes esta línea, asegúrate que tienes lo siguiente:
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCipherSuite «EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS»
Con esto, seguramente nuestro servidor web esté más protegido, y podréis confirmarlo en esta página: https://www.tinfoilsecurity.com/poodle por lo que ya no tendréis que preocuparos más, ahora viene la parte más dura: buscar alternativas TLS a todo lo que tenéis configurado con SSL (servidores de correo, protocolo SIP, etc…)