El común de los ataques de SSL para “ hombre en medio “ es usar
herramientas como SSLStrip, esta herramienta en realidad es un proxy, lo
que hace SSLSTRIP es conectar a una página segura como Hotmail ,
Facebook y Google Gmail una vez realizada la conexión entrega por medio
de un proxy sin cifrar la conexión sin seguridad SSL a la víctima, en el
proceso le da la oportunidad al atacante de escuchar ahora sin el
cifrado del SSL las contraseñas y los usuarios e incluso el tráfico de
datos entre el servidor que se considera seguro y la victima que cree
que está en una conexión segura. Básicamente convierte una conexión
HTTPS a una HTTP y es por este motivo que el navegador de la víctima no
le avisa de un posible ataque.
Hay un método que permite mitigar y en muchos casos inutilizar al
SSLStrip quitándole lo espía a muchos hackers, con el HSTS o HTTP Strict
Transport Security es una sencilla cabecera que se envía desde el
servidor WEB hacia el cliente esta cabecera actua como una cookie, lleva
una valor en segundos que le indican al navegador que a partir del
momento de recibida y hasta que esos segundos transcurran no debe
permitir conexiones HTTP , se fuerza siempre HTTPS. Esto tan simple pone
en jaque al SSLStrip por que el navegador se niega a visitar el sitio
WEB con solo HTTP y eso es lo que hace SSLStrip evitando el robo de
contraseñas o impidiendo el espionaje.
La cantidad de segundos que yo recomiendo no debe ser mayor a 48
horas, la mayoría lo pone a un año o más, pero significa que durante ese
tiempo tu certificado SSL no debe expirar ni ser revocado o nadie podrá
visitar tu sitio WEB, 48 horas en un tiempo razonable, además que cada
que recibe la cabecera se incrementa en 48 horas nuevamente, así si
tienes que revocar tu certificado o por algún motivo no puedes seguir
dando el servicio en HTTPS podrán seguir usando HTTP en los próximos 2
días.
Muchas páginas WEB no requiere obligar a las personas a consultar en
HTTPS, pero la mayoría de los desarrolladores comerciales deberían
implementar esto debido a que si están haciendo un sistema de nominas o
de información con datos personales, estos datos siempre deberían ir
cifrados y evitar que con herramientas que hacen trucos mediocres como
el SSLStrip se puede vulnerar el sitio.
Los buenos navegadores entienden y soportan el HSTS, adivinen quien
no lo soporta en su versión actual. El internet explorer 11. Si estas
manejando información importante, nunca uses Explorer, Firefox y Chrome
son excelentes para manejar HSTS y Chrome incluso trae una lista de
sitios precargados en los que figura el Facebook, Twitter, Hotmail ,
Google y otros.
HSTS no es más que una simple cabecera, así que puede ser entregada
de muchas formas, mandándola con la función headers de php del lenguaje
que estés usando o simplemente enviarla obligatoriamente en cada
conexión desde el mismo servidor.
El Servidor de la cueva del dragon la envía desde el servicio web de
apache, es tan simple como agregar la siguiente línea en la
configuración del virtualhost
ServerName lastdragon.net
Header add Strict-Transport-Security "max-age=86400"
Si solo tienes un hosting y no tienes permiso de modificar la configuración del servicio WEB, con php seria así:
header("strict-transport-security: max-age=86400");
La cabecera solo debe ser enviada desde la conexión HTTPS, si la
envías desde la HTTP y no tienes HTTPS harías inaccesible tu sitio ya
que el navegador se reusaria a conectar por HTTP durante la vigencia en
segundos que hayas asignado. Asi que debes tener cuidado de nunca enviar
esta cabecera en HTTP
El siguiente video muestra como los navegadores se reúsan a conectar a HTTP.
Fuente: https://www.lastdragon.net/?p=1074
No hay comentarios:
Publicar un comentario