Este es un mensaje técnico sobre todo para el administrador.
Se ha consolidado HTTPS desde hace unos años como protocolo de la web, en buena medida gracias a iniciativas como Let's Encrypt, en detrimento de HTTP convencional, pues este viaja en texto plano y el otro lleva una capa de cifrado.
El navegador se conecta al foro por HTTP en ausencia de alguna indicación que obligue a usar HTTPS, como "https" en la URL o una respuesta del servidor web con unas cabeceras concretas. Si se modifica la URL para conectar por HTTPS, se obtiene un aviso de seguridad, dado que el dominio especificado en el certificado, uno genérico del proveedor del alojamiento, no coincide con el dominio del sitio web. Sin embargo, sí es adecuado el uso de Let's Encrypt para generar el certificado y, además, se encuentra actualizado y en vigor.
¿Por qué sería importante forzar HTTPS?
Este foro no tiene un gran valor para posibles atacantes. Sin embargo, la contraseña de inicio de sesión y la cookie consiguiente viajan en claro, sin ninguna protección. Alguien con conocimiento de alguno de esos elementos tendría la capacidad de suplantar al usuario correspondiente, lo que supone un riesgo muy alto en el caso de moderadores y administradores.
Toda la información que intercambiamos con otras máquinas en Internet se divide en pequeños paquetes de datos que se transportan por distintos caminos hasta su destino. En los nodos intermedios que forman parte de esos caminos es poco probable que haya alguien o algún sistema prestando atención a información no cifrada y, además, por la naturaleza distribuida de las redes, tampoco tendría acceso a todos los paquetes de un mismo flujo de datos.
El riesgo se encuentra sobre todo en redes compartidas. En el caso de las inalámbricas, una vez dentro tienes acceso a todo el tráfico, puedes captar e interpretar las ondas electromagnéticas en el "aire". Según la configuración y método de autenticación de la red, es posible aislar a los clientes de forma que los paquetes que no son para ti ni hayas emitido tú resulten ininteligibles a pesar de compartir el medio físico, pero lo habitual es que exista una "confianza implícita" entre todos los clientes conectados, de forma que cualquiera podría observar el tráfico de otros. De ahí surge la importancia de las comunicaciones cifradas en este mundo tan hiperconectado.
Además, existen técnicas para hacerse pasar por un router o un punto de acceso legítimo, lo que se conoce como ataque de "hombre en medio" o de intermediario. Si el tráfico no está cifrado, es factible inyectar paquetes en la comunicación entre dos dispositivos o reescribirlos con objeto de manipular la información o redirigir a código malicioso, sin que ninguna de las otras partes implicadas perciba el cambiazo.
Mi petición se resume en dos puntos:
- Políticas HSTS (HTTP Strict Transport Security) para forzar a los navegadores a conectar mediante HTTPS.
- Certificado válido con el nombre correcto del sitio web.
Por supuesto, esta proposición es solo una capa más de seguridad. No protegería ante vulnerabilidades en el servidor web o el software del foro que se ejecuta sobre él, ni impediría a programas maliciosos o extensiones de navegador capturar contraseñas o cookies en los propios dispositivos de los usuarios.