La gran mayoría de avisos SSL/TLS en los navegadores no es por un ataque MITM real
Cuando entramos a una web que utiliza el protocolo HTTPS (SSL/TLS), en algunas ocasiones nos encontramos con un mensaje de aviso advirtiéndonos que el certificado del servidor no se ha podido comprobar y que es posible que un atacante haya interceptado la conexión, y por tanto, que pueda robarnos los credenciales de acceso a diferentes servicios. Aunque según Adrienne Porter, que pertenece al equipo de seguridad de Google Chrome, la mayoría de estos avisos se deben a errores del propio webmaster en la configuración de su sitio web, y no a un ataque real.
Un claro ejemplo de aviso en Google Chrome lo tenemos si accedemos a nuestro servidor personal bajo HTTPS y donde su certificado no ha sido verificado por una CA de confianza, en este caso Chrome nos indica que «La conexión no es privada» y a continuación nos indica un posible motivo por el cual Chrome nos devuelve este error, sin embargo, si pinchamos en «opciones avanzadas» nos da más pistas: «Este problema puede deberse a una configuración incorrecta«.
Según Adrienne Porter, el porcentaje de avisos en los que hay un ataque real y en los que hay un fallo del propio cliente, webmaster o la red es el siguiente:
Según su investigación, los avisos y errores de SSL/TLS no sólo se centran en errores del propio webmaster y un posible atacante, sino que en medio de todos ellos hay muchas más causas, como por ejemplo tener mal la fecha y hora del ordenador, tener un portal cautivo e incluso tener un software antivirus muy restrictivo que impida al navegador validar el certificado SSL. Los errores SSL son habituales en el navegador.
La mayoría de problemas son causados en el propio cliente (hora incorrecta, fallo del certificado raíz), algunos de ellos en la red (filtro de contenidos o por el ISP), otros del propio webmaster (caducidad del certificado) y por último, un ataque real (malware, MITM). Un 20% de errores en HSTS (HTTP Strict Transport Security) son producidos por tener una hora incorrecta, un 4,5% es por culpa de los portales cautivos y sus redirecciones. Uno de los errores aparece con el mensaje SLL_ERROR_HANDSHAKE_FAILURE_ALERT.
Google Chrome cambió cómo da los avisos de SSL/TLS hace 6 meses, y desde entonces los usuarios prestan más atención a estos avisos, en la siguiente imagen se puede ver el antes y el después del nuevo diseño:
Desde el equipo de seguridad de Chrome, tienen pendientes dos aspectos importantes respecto a los avisos SSL/TLS:
- Avisar a los usuarios sólo cuando hay un ataque real, ya sea de malware o MITM en la red.
- Que los usuarios entiendan perfectamente el problema, para que busquen una solución al mismo.
Para solucionar el primer problema, el equipo de Chrome debe hacer frente a los errores de configuración tanto en el cliente como en la red, tanto a nivel técnico como a nivel político (filtrado de ISP por ejemplo). Para solucionar el segundo problema, deberán decidir entre la brevedad del mensaje o la explicación algo más detallada del problema.
Os recomendamos visitar la presentación de Adrienne Porter en Google Drive donde encontraréis toda la información sobre este estudio.