¿Contra qué te protege HTTPS?
Independientemente de para qué uses Internet, es bueno saber que tus datos se envían de forma segura y se mantienen fuera del alcance de los hackers. Desde que se empezó a utilizar Internet de formas en las que la seguridad importaba, fue necesaria la seguridad. Por ejemplo, para el procesamiento de información de pago, existía la necesidad de hacer de Internet un lugar más seguro. Como tal, HTTPS se creó a fines de la década de 1990 y ahora protege la gran mayoría de tu tráfico de Internet.
¿Cómo saber si un sitio utiliza HTTPS?
Antes de pasar al resto de la publicación, es importante saber cuándo se usa HTTPS y proteger tu tráfico de Internet. Afortunadamente, la mayoría de los navegadores modernos facilitan saber esto, y muchos toman medidas para disuadir activamente de usar sitios web HTTP simples. Puedes jugar en https://badssl.com para ver cómo reacciona tu navegador ante diversas situaciones de seguridad.
La forma más sencilla de saber si estás en un sitio web protegido por HTTPS es buscar el icono de un candado en algún lugar de la barra de direcciones de tu navegador. Si ves un candado, tu conexión está protegida. Otra forma de saber si tu conexión es HTTPS es verificando la URL completa en la que te encuentras actualmente.
En la mayoría de los navegadores, esto se puede realizar haciendo clic (o en ocasiones dos veces) en la barra de direcciones. Si la URL comienza con “https://”, entonces tu conexión se envía a través de HTTPS.
Cifrado
Una gran parte de la seguridad de HTTPS proviene del hecho de que cifra la mayoría de las comunicaciones entre tu navegador web y el servidor. Todo el contenido, las cookies, los datos del formulario y la URL de una página están cifrados de forma segura.
Incluso en el caso de que un hacker intercepte tu conexión, es imposible que sepan lo que estás haciendo en un sitio web. En realidad, no es técnicamente imposible. No obstante, es muy poco probable que un hacker tenga las capacidades necesarias para descifrar la información.
Otra característica clave de HTTPS es la integridad de los datos, o saber que los datos que estás recibiendo o enviando no están siendo manipulados. Esto significa que incluso en el caso de que un hacker lograra interceptar tu conexión e intentara modificar el tráfico cifrado, habrá alguna alerta. Las modificaciones serán detectadas y tu navegador te informará que algo salió mal.
Problemas de privacidad
Aunque la mayoría de los datos de un sitio web están protegidos, un elemento clave no lo es: el nombre de host.
Debido a cómo funcionan los servidores web, necesitan saber qué sitio web estás solicitando antes de poder iniciar una conexión cifrada. Para resolver este problema, el nombre de host del sitio web que estás visitando se envía en texto plano, o, en otras palabras, no cifrado.
Aunque esto no es un gran problema de seguridad, representa una amenaza a la privacidad. Esto porque tu ISP o administrador de red local puede monitorear qué sitios web estás visitando incluso si el sitio web está protegido por HTTPS.
Esto también puede ser utilizado por filtros web para restringir el acceso a ciertos sitios web. Sin embargo, es importante tener en cuenta que solo el nombre de host (por ejemplo, example.com) se envía en texto plano. El resto de la URL está protegida (por ejemplo, si visitas example.com/page?args=hello, todo lo que aparece después de “example.com” está protegido).
Afortunadamente, se está trabajando en un estándar para solucionar este problema y es probable que se complete en algún momento en el futuro cercano. Esta tecnología se llama ESNI y proporciona una forma de cifrar el nombre de host. Esto al mismo tiempo permite que un servidor web lo sepa antes de iniciar la conexión HTTPS.
Confianza
Aunque HTTPS te protegerá de una amplia variedad de ataques, mucho depende de cuánto confíes en tu dispositivo y software. HTTPS usa una forma de cifrado llamado asimétrico, que involucra dos claves. Una clave pública usada para cifrado y una clave privada usada para el descifrado.
Siempre que la clave privada de un sitio web se mantenga segura, es casi imposible que alguien intercepte tu conexión. Será muy difícil que alguien tenga la capacidad de ver y/o modificar cualquier dato en lo conocido como un ataque de hombre en el medio.
Una clave privada debe estar firmada por una autoridad de certificación. Es decir, un tercero de confianza ha avalado la identidad de un sitio web. Tu computadora tiene una lista de autoridades de certificación en las que confía y, por lo tanto, aceptará certificados firmados por ellas.
Dispositivos
Sin embargo, si no puedes confiar en tu dispositivo (por ejemplo, una computadora de la escuela), es porque alguien más lo ha hecho por ti. Es posible que un administrador le diga al dispositivo que confíe en otra autoridad de certificación sobre la que tenga control.
Luego, el administrador puede configurar su enrutador para interceptar todas las conexiones HTTPS y hacer lo que quiera. Posteriormente, debe volver a cifrarlo con su propia clave firmada por su autoridad de certificación antes de devolverlo. Debido a que la computadora se ha configurado para confiar en la autoridad de certificación, todo se verá bien por tu parte.
Sin embargo, incluso si un enrutador está configurado para esto, siempre que confíes en tu dispositivo, puedes estar confiado de que la conexión es segura. Si alguien intenta ponerse en medio de una conexión HTTPS y no tiene una clave en la que tu dispositivo confíe, no podrá hacer mucho. Esto porque tu dispositivo se negará a enviar datos.
Lo mismo ocurre con el software; si no confías en tu navegador web, pueden suceder cosas malas. Incluso más allá de un intento malicioso de hacer que un navegador sea inseguro. Por ejemplo, si un navegador no está programado correctamente para verificar la identidad de un sitio web, es posible que un tercero intercepte la conexión.
Esta es una de las razones por las que los desarrolladores no se animan a implementar HTTPS ellos mismos. Y, en cambio, se basan en bibliotecas de código abierto, probadas y confiables (principalmente OpenSSL) para hacer las cosas importantes.
Phishing y malware
Es extremadamente importante tener en cuenta que HTTPS solo verifica tu conexión al sitio web y nada más. El hecho de que tu navegador muestre el icono del candado no significa que el sitio web sea legítimo y que tus datos estén seguros.
Un atacante aún puede crear un sitio web bancario falso y huir con toda tu información personal. Esto independientemente del hecho de que tu sitio web esté protegido por un certificado válido.
Lo mismo ocurre con el malware. Un sitio puede tener un certificado válido y parecer que tiene software confiable disponible para descargar y, en su lugar, instalar malware en su dispositivo.
El punto es que, independientemente de lo que diga tu navegador, debes usar el sentido común y asumir siempre lo peor al tratar con información personal. Siempre que realices operaciones bancarias en línea (o cualquier otra cosa importante), debes verificar dos veces la URL. Esto para asegurarte de que estés realmente en el sitio web de tu banco y no en una página clonada.
Nunca descargues ni ejecutes software en el que no confíes. Y, nunca proporciones información personal antes de estar absolutamente seguro de que el sitio web es legítimo.
Como medida de seguridad adicional, trata de evitar abrir enlaces desde tu correo electrónico cuando sea posible. En ocasiones, esto es inevitable (por ejemplo, enlaces de restablecimiento de contraseña), pero es algo que siempre debes hacer cuando puedas.
Dado que la mayoría de los correos electrónicos en estos días son HTML, es posible crear un hipervínculo que diga https://www.google.com. Sin embargo, en realidad te dirige a “google.com.totallynotahacker.xyz”.
Una aclaración sobre las autoridades de certificación
Como se menciona en la sección sobre confianza, para que un navegador acepte un certificado debe estar firmado por una autoridad certificadora de confianza. Al igual que en el sitio web, las autoridades de certificación tienen sus propias claves utilizadas para firmar las claves de un sitio web.
Si la clave privada de una autoridad de certificación se ve comprometida, todo el mundo está en un gran problema. Un atacante con acceso a esa clave puede hacerse pasar por sitios web en los que tu navegador será engañado para que confíe.
Sin embargo, esto no lo mencioné anteriormente porque las posibilidades de que esto suceda son pocas. Después de todo, nadie confiaría en una autoridad de certificación que tenga malas prácticas de seguridad. No hay mucho que puedas hacer si esto sucede.