Ir al contenido

¡Se acercan los certificados de 47 días! ¿Estás preparado?

Actúa ahora →

¿Por qué necesita saber sobre los ataques de eliminación de HSTS y SSL?

Los usuarios y las organizaciones valoran cada vez más la seguridad y la privacidad. Tecnologías como HTTPS , una combinación de los protocolos HTTP y SSL/TLS, se crearon para brindar confidencialidad e integridad a la navegación web. Muchas organizaciones han tomado medidas para impulsar la implementación de HTTPS. Desde 2014, Google ha mejorado el posicionamiento de los sitios web que implementan HTTPS. Además, en Chrome, los sitios web que no implementan HTTPS no pueden usar la ubicación geográfica ni la caché de la aplicación. Asimismo, es posible que los usuarios ni siquiera puedan visitar sitios web que no tengan HTTPS habilitado. En última instancia, aparecerá un símbolo de sitio no seguro en la barra de direcciones del navegador Chrome. Anteriormente, obtener y mantener certificados digitales resultaba muy costoso. Por lo tanto, las pequeñas empresas o las grandes empresas con muchos nombres de dominio podían optar por no implementar HTTPS debido al gasto. Recientemente, Let's Encrypt, con su protocolo ACME, ha facilitado y abaratado la obtención de certificados SSL/TLS , y ofrece certificados de validación de dominio (DV) gratuitos mediante un proceso totalmente automatizado. Además de Let's Encrypt, varias redes de distribución de contenido y proveedores de servicios en la nube, incluidos Cloudflare y Amazon, ofrecen certificados TLS gratuitos a sus clientes.

Sin embargo, aún existen numerosas conexiones HTTP en Internet. Gestionar la combinación de conexiones HTTP y HTTPS de forma fluida resulta difícil para los navegadores debido al ataque de eliminación de cifrado HTTPS. Este tipo de ataques ha generado gran preocupación desde que Marlinspike presentó sslstrip en la conferencia Black Hat de 2009. Los atacantes pueden interceptar la comunicación entre el sitio web objetivo y el cliente, y cambiar todas las conexiones HTTPS a HTTP en los paquetes de respuesta del sitio web. Aunque este ataque infringe la norma que establece que TLS/SSL debe garantizar la seguridad de extremo a extremo, ni el cliente ni el servidor pueden detectarlo, ya que los paquetes enviados desde el servidor siguen estando cifrados.

Para defenderse del ataque de stripping, en 2012 se presentó el protocolo HTTP Strict Transport Security (HSTS). Este define un mecanismo que permite a los sitios web declararse accesibles únicamente a través de conexiones seguras.

Ataque de desnudez

Hace unos años, HTTPS se implementaba únicamente en páginas de pago o de inicio de sesión de entidades financieras o de comercio electrónico. Sin embargo, cada vez más sitios web comenzaron a implementarlo. Una de las razones es que numerosos estudios demuestran que los propietarios de sitios web deberían ofrecer HTTPS en todas las páginas, incluyendo todos los archivos de recursos, lo que demuestra que el cifrado parcial de los sitios no es seguro. Otra razón es la aparición de certificados gratuitos y el acelerador TLS. Mantener un servicio HTTPS era muy costoso, debido al coste de la aplicación y actualización de los certificados, así como a la sobrecarga de rendimiento causada por el cifrado o descifrado adicional . Afortunadamente, estos problemas se han solucionado en los últimos años. Muchas organizaciones comenzaron a ofrecer certificados TLS/SSL gratuitos, y los sitios web se beneficiaron enormemente de HTTPS.

No obstante, un ataque de supresión de HTTPS supone un riesgo para HTTPS. Cuando los usuarios escriben un nombre de dominio sin especificar el protocolo (HTTP o HTTPS), el tipo de solicitud predeterminado es HTTP en lugar de HTTPS. Normalmente, si el servidor proporciona servicio HTTPS, redirige con un código 302 tras recibir una solicitud HTTP. Sin embargo, un atacante puede interceptar el tráfico mediante suplantación de ARP y reemplazar todas las referencias HTTPS por HTTP en el paquete de respuesta. De este modo, el navegador seguirá solicitando un sitio web HTTP a pesar de las redirecciones 302. De nuevo, el atacante puede reemplazar todas las referencias HTTP por HTTPS en el paquete de solicitud. La comunicación entre el atacante y el servidor está cifrada, pero la comunicación entre el atacante y el navegador se realiza en texto plano. Este ataque se denomina ataque de supresión de HTTPS y es indetectable para navegadores y servidores, ya que sigue el protocolo de comunicación HTTP.

Imagen de ataque de eliminación de HSTS y SSL

Protocolo HSTS

Para evitar el ataque de eliminación de HTTPS, en 2012 se creó la política HSTS. Los sitios web declaran esta política mediante el campo de encabezado de respuesta HTTP Strict-Transport-Security u otros medios, como la configuración del agente de usuario. Si el servidor desea proporcionar servicio HTTPS de forma permanente, enviará un encabezado HSTS al navegador. Según la información de estos encabezados, el navegador recordará los dominios que se deben visitar mediante HTTPS. La próxima vez que un usuario envíe una solicitud HTTP, el navegador la convertirá automáticamente a HTTPS en segundo plano. La política HSTS define el estándar de los encabezados HSTS, que constan principalmente de tres campos. El primero es max-age, que indica el tiempo de expiración y es obligatorio. El segundo es includeSubdomains, opcional, que indica si la política HSTS se aplica a los subdominios del dominio. El último es preload, también opcional, que indica si el dominio se ha añadido permanentemente a la lista de precarga que mantienen los proveedores de navegadores. Es esencial que las solicitudes HTTPS solo puedan enviar estos encabezados; por lo tanto, el atacante no puede manipular arbitrariamente la política HSTS para deshabilitarla.

Servicios de cifrado personalizados

Evaluamos, elaboramos estrategias e implementamos soluciones y estrategias de cifrado.

Conclusión

El protocolo HSTS ofrece una forma de evitar los ataques de eliminación de certificados SSL, pero muchos propietarios y desarrolladores de sitios web desconocen su funcionamiento. Un ataque de este tipo permite a los atacantes leer la información de un usuario que visita un sitio web en texto plano. Los datos entre el navegador y el atacante no están cifrados, lo que da acceso a toda la información, incluyendo contraseñas, datos de tarjetas de crédito y más. El uso del protocolo HSTS evita estos problemas y obliga al navegador a utilizar cifrado entre el servidor y el navegador.