BEAST y la seguridad de TLS/SSL: lo que significa para usuarios y administradores Web

Artículo original de Ben April (Senior Threat Researcher)

Últimamente hemos oído hablar mucho de cómo «se ha roto SSL». Estos comentarios surgieron tras una publicación de dos investigadores, Juliano Rizzo y Thai Duong, de lo que denominaron BEAST o Browser Exploit Against SSL/TLS (vulnerabilidad del navegador en SSL/TLS). Si hacemos caso a algunos de los informes, las conexiones seguras tal como las conocemos ya no valen para nada.

Este problema puede parecer bastante complejo para la mayoría de los usuarios, así que intentaré describir este ataque en «términos humanos». La mayoría de los sistemas de cifrado se basan en dos hechos:

  1. El atacante no conoce la clave que se usa para cifrar el mensaje.
  2. El atacante no conoce el mensaje que se va a enviar.

Sin embargo, si el atacante consigue engañar al navegador para que envíe un fragmento de texto sin formato conocido a través de la conexión SSL y también puede capturar una copia de ese mensaje en tránsito, entonces tendrá la posibilidad de descodificar otro texto sin formato dentro del mismo mensaje. Aunque tener una copia de un mensaje conocido cifrado no es tan bueno como tener la clave, proporciona al atacante un buen punto de apoyo que facilita el criptoanálisis del mensaje.

Ahora el atacante tiene la capacidad, con algo de esfuerzo, de descodificar fragmentos de los mensajes enviados por el usuario al servidor seguro. Debe tenerse en cuenta que este ataque solo funciona en una dirección cada vez. Con este método es posible descodificar partes de otro texto sin formato del mismo mensaje como el texto que hemos introducido nosotros. El kit de herramientas BEAST utiliza esta capacidad para extraer cookies de sesión que se pueden usar para secuestrar la sesión del usuario.

Los expertos en seguridad saben desde hace años que TLS/SSL es potencialmente vulnerable a este tipo de ataque. En resumen, el kit de herramientas BEAST no ha revelado nada que no se supiera ya antes. Lo que sí que ha hecho es empaquetar este ataque en un formato fácil de usar que reduce drásticamente los recursos y las habilidades necesarias para ejecutarlo.

 

Funcionamiento de BEAST

Se ha especulado bastante sobre si se trataba de un ataque «man-in-the-middle» (conocido como ataque MitM o intermediario en español), pero que se puede ejecutar muy fácilmente con un navegador y acceso a la red local. Según las configuraciones de la red, el rastreador podría residir en el host de destino o en un host adyacente. Existe una gran flexibilidad de infraestructura a este respecto.

El primer paso es que alguien inserte código en la sesión actual del navegador. Esto puede conseguirse con distintas técnicas, por ejemplo, usando un Iframe incrustado o con un ataque de secuencias de comandos de sitios cruzados (XSS). A continuación, este código debe obligar al navegador a que incluya un fragmento conocido de texto sin formato en el servidor a través del canal SSL. De nuevo, esto puede conseguirse fácilmente con Javascript. Antes de insertar este código, el atacante también necesita poder capturar el tráfico SSL del usuario, ya sea ejecutando un rastreador en el equipo objetivo o bien capturando el tráfico mediante un ataque MitM. De cualquier forma, basta con texto sin formato y una carga cifrada para que ahora el atacante pueda ejecutar algunas herramientas de criptoanálisis y esperar a conseguir una cookie.

¿Qué pueden hacer los usuarios?

  1. Pasar el menor tiempo posible en sesiones SSL sensibles. El atacante necesita tiempo para descodificar el mensaje cifrado. Si la cookie de la sesión se invalida antes de que acabe el atacante, fallará también este ataque.
  2. Cuando abandone un sitio protegido por SSL, asegúrese de cerrar la sesión adecuadamente, no de cerrar únicamente la ventana para ir a un sitio nuevo. En muchos casos, cerrar la sesión de forma activa invalida cualquier dato de cookie/sesión que el atacante pueda haber descodificado con éxito.
  3. Se pueden aplicar las mejores prácticas de seguridad estándar. Para que este ataque pueda perpetrarse correctamente, el atacante debe tener acceso a su red o a su equipo. Como mínimo, contar con un software de seguridad actualizado complicará la vida a un atacante.

Sin embargo, el peso de solucionar este problema recae realmente en los administradores del sitio Web. ¿Qué pueden hacer ellos?

  1. Asegurarse de que el botón para cerrar sesión realiza la acción esperada. Está exponiendo a los usuarios al ataque si su sitio no puede invalidar realmente las cookies de la sesión cuando se hace clic en “cerrar sesión”.
  2. Cerciórese de que las cookies de la sesión están vinculadas a la dirección IP desde la que se estableció la sesión. Si esa dirección IP varía, plantéese comprobar que el origen de la solicitud siga siendo el usuario. Esto no evitará el ataque, pero dificultará que se aprovechen de sus usuarios.
  3. No caiga en la tentación de modificar el código de SSL sin considerar los riesgos primero. Si bien es cierto que RC4 no está sujeto a este ataque, presenta más riesgos que AES. Además, no es una mala idea echar un ojo al grupo de trabajo de TLS de IETF.
    Hay versiones nuevas del estándar TLS que solucionan las vulnerabilidades usadas en este ataque. Por desgracia, la cobertura del servidor HTTP y del navegador de estos estándares nuevos es irregular en estos momentos. Por este motivo, tendrá que examinar minuciosamente su entorno y su base de usuarios antes de efectuar un cambio de tal calibre.

4 comentarios en “BEAST y la seguridad de TLS/SSL: lo que significa para usuarios y administradores Web

  1. Geotrust

    Muy importante lo de cerrar la sesión ya que si no no servirá de nada. Es cierto que le estamos dando ventajas a los hackers si no nos protegemos y en informática nosotros tenemos el 80% de la culpa de virus, spyware… por entrar o aceptar lo que no debemos

    Responder
    1. María

      Esto es muy cierto. Las sesiones debemos cerrarlas apropiadamente para evitar problemas. El sentido común es fundamental, y sin él, no hay herramienta de seguridad capaz de protegernos completamente.

      Responder

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.