Você está na página 1de 5

MAESTRÍA EN GERENCIA DE SISTEMAS CON ÉNFASIS EN

SEGURIDAD INFORMÁTICA

LA CRIPTOGRAFÍA

Por:

JORGE RODRÍGUEZ MENDIETA


El protocolo de Transferencia de Hiper-Texto (https) es la versión segura del http
(Hyper Text Transfer Protocool), usado en cada transacción de la World Wide Web, o
WWW. Además, en la barra de direcciones podremos ver que “http://” será sustituido
por https://, donde la “S” significa “secure”.

¿Y cómo funciona la conexión exactamente? ¿Por qué es más segura? Básicamente, lo


que ocurre es que la página Web codifica la sesión con certificado digital. Estos
certificados de seguridad son conocidos como SSL/TLS (Secure Sockets Layer,
Protocolo de Capa de Conexión Segura /Transmission Layer Security, Seguridad de la
Capa de Transporte) son dos protocolos para enviar paquetes cifrados a través de
Internet, siendo el último el más moderno y si están instalados en la página web se ve el
ícono de un candado en la barra de direcciones. De este modo, el usuario tiene ciertas
garantías de que la información que envíe desde dicha página no podrá ser interceptada
por un atacante, quien lo único que obtendrá será un flujo de datos cifrados que le
resultará imposible de descifrar.

Por otro lado, si están instalados Certificados de Validación Extendida, los usuarios,
además del candado, verán que la barra de dirección del navegador toma un fondo
amarillo (Firefox) o verde (Internet Explorer u Opera) para identificar páginas web
seguras.

HTTP funciona en la capa de aplicación (séptima capa) del Modelo OSI, que es la capa
más alta. Sin embargo, el cifrado que da lugar a HTTPS, se realiza en una capa más
baja, mediante SSL/TLS. HTTPS se basa en el sistema de clave pública y clave privada.
Los protocolos HTTPS son utilizados por navegadores como: Safari, Internet Explorer,
Mozilla Firefox, Opera y Google Chrome, entre otros.

¿Cómo se establece una conexión segura?

Para cifrar datos se necesita una clave. El primer problema aparece rápidamente: ¿cómo
compartimos una clave de forma segura (sin que nadie más pueda saberla)? Con el paso
del tiempo se ha demostrado que el HTTPS no es solo necesario para datos bancarios
sino que su uso está muy recomendado en servicios de mensajería como Facebook o
Twitter, Google y en sitios de correo electrónico como Gmail o Hotmail.

Intercambio de claves

La seguridad de las transacciones se basa en el intercambio de claves entre un cliente y


un servidor. Las claves pública y privada están relacionadas de tal forma que no se
pueden usar una sin la otra. Para enviar un mensaje cifrado a un servidor, se cifra con su
clave pública para que él pueda descifrarlo con su clave privada. Sólo quien tenga la
privada podrá descifrarlo. Por eso es importante no dejar la clave a la vista.

Después de acordar los detalles técnicos que se utilizarán en la transferencia, como por
ejemplo la versión del protocolo o los algoritmos de cifrado, el navegador procede a
cifrar una clave generada en ese mismo momento con la clave pública del servidor al

2
que se está conectando y se la envía. Al final el cliente y el servidor tienen la misma
clave.

De esta forma se supera el primer (y mayor) problema que se tenía: intercambiar la


clave. Como nadie más sabe esa clave, las comunicaciones serán seguras y nadie podrá
verlas (siempre y cuando el algoritmo de cifrado simétrico sea seguro, claro).

¿Qué datos protege HTTPS?

La pregunta obvia es saber qué datos se protegen cuando usamos una conexión HTTPS.
Como está basado en SSL/TLS, que funciona en la capa más baja de comunicación, se
cifra no sólo la página web sino también la URL completa, los parámetros enviados, las
cookies... Lo único que se queda al descubierto son los datos del paquete TCP: el
servidor y el puerto al que nos conectamos.

HTTP es inseguro y está sujeto a ataques man-in-the-middle y eavesdropping que


pueden permitir al atacante obtener acceso a cuentas de un sitio web e información
confidencial. •HTTPS está diseñado para resistir esos ataques y ser seguro.

Configuración del Servidor

Para preparar un servidor web que acepte conexiones HTTPS, el administrador debe
crear un Certificado de clave pública para el servidor web. Este certificado debe estar
firmado por una Autoridad de certificación para que el navegador web lo acepte. La
autoridad certifica que el titular del certificado es quien dice ser.

Los navegadores web generalmente son distribuidos con los certificados firmados por la
mayoría de las Autoridades de Certificación por lo que estos pueden verificar
certificados firmados por ellos.

Los servidores SSL solo pueden presentar estrictamente un certificado para una
combinación de puerto/IP en particular. Esto quiere decir, que en la mayoría de los
casos, no es recomendable usar Hosting virtual name-based con HTTPS. Existe una
solución llamada Server Name Indication (SNI) que envía el hostname al servidor antes
de que la conexión sea cifrada, sin embargo muchos navegadores antiguos no soportan
esta extensión. El soporte para SNI está disponible desde Firefox 2, Opera 8, e Internet
Explorer 7 sobre Windows Vista.

Prácticas recomendadas para desplegar un servidor HTTPS

Utiliza certificados de seguridad potentes. Como parte de la habilitación del protocolo


HTTPS en tu sitio, obtendrás un certificado de seguridad. El certificado lo emite una
autoridad de certificación (CA), que toma las medidas necesarias para verificar que tu
dirección web pertenezca realmente a tu organización y, por lo tanto, protege a los
usuarios de cualquier ataque "man-in-the-middle". Al configurar el certificado,
asegúrate de obtener un nivel de seguridad alto escogiendo una clave de 2048 bits. Si ya

3
tienes un certificado con una clave más débil (de 1024 bits), actualízala a una de 2048
bits. Cuando escojas el certificado de tu sitio debes hacer lo siguiente:

 Escoger el certificado de una CA de confianza que ofrezca asistencia técnica

 Decidir qué tipo de certificado necesitas:

 Un certificado único para un origen seguro único (p. ej.


www.example.com).

 Un certificado para varios dominios para varios orígenes seguros


conocidos (p. ej., www.example.com, cdn.example.com y
example.co.uk).

 Un certificado comodín para un origen seguro con muchos subdominios


dinámicos (p. ej., a.example.com y b.example.com).

 Redirecciona a los usuarios y a los motores de búsqueda a la página o al recurso


HTTPS con redireccionamientos HTTP 301 del servidor.

 Utiliza un servidor web que admita seguridad de transporte HTTP estricta


(HSTS) y comprueba que esté activada. HSTS le indica al navegador que
solicite a las páginas que utilicen el protocolo HTTPS, aunque el usuario escriba
http en la barra de dirección del navegador. También le indica a Google que
proporcione URL seguras en los resultados de búsqueda. Todo esto minimiza el
riesgo de proporcionar a los usuarios contenido que no esté protegido.

Errores comunes al utilizar el protocolo HTTPS/TLS

Durante el proceso para hacer que el sitio sea seguro mediante TLS, se debe evitar
cometer estos errores:

Problema Acción

Certificados caducados Comprueba siempre que tu certificado esté actualizado.

Certificado registrado a Comprueba que hayas registrado tu certificado al nombre de host correcto. Por ejemplo, si
nombre de un sitio web registras el certificado para www.example.com y el sitio web está configurado para utilizar
incorrecto "example.com", tendrás un error de discordancia de nombre de certificado.

Falta de compatibilidad Comprueba que el servidor web sea compatible con SNI y que la audiencia utilice
con la indicación del navegadores que sean compatibles habitualmente. Todos los navegadores modernos son
nombre del servidor compatibles con SNI, pero si quieres admitir navegadores más antiguos necesitarás una IP
(SNI) dedicada.

Problemas de rastreo No bloquees el sitio HTTPS mediante un archivo robots.txt para que no pueda rastrearse.

Problemas de indexación Debes permitir que los motores de búsqueda indexen tus páginas siempre que sea posible.

4
Evita el uso de la metaetiqueta noindex.

Versiones del protocolo Las versiones de OpenSSL anteriores son vulnerables; comprueba que tengas las versiones
anterior más recientes y nuevas de las bibliotecas TLS.

Elementos de seguridad Inserta únicamente contenido HTTPS en las páginas HTTPS.


mezclados

Contenido diferente en Comprueba que el contenido de tus sitios HTTP y HTTPS sea el mismo.
HTTP y HTTPS

Errores de código de Comprueba que el sitio web devuelva el código de estado HTTP correcto. Por ejemplo, 200
estado HTTP en HTTPS OK para páginas accesibles, o 404 o 410 para páginas que no existen.

El Internet ha llegado a un punto de inflexión donde es evidente que el uso selectivo de


HTTPS ya no es suficiente para proteger a los usuarios móviles de hoy, quienes siempre
están en línea. SSL / TLS en sí sigue siendo fundamentalmente sólida, para proteger la
experiencia entera del usuario, no sólo la página de inicio de sesión o el formulario de
compras.

BIBLIOGRAFÍA

ALEGSA. [sitio web]. 2009. Definición de HTTPS (HTTP Secure). [consulta 12


diciembre 2016]. Disponible en: http://www.alegsa.com.ar/Dic/https.php

Online Trust Alliance. [sitio web]. 2012. La protección de su página web con Siempre
en SSL. [consulta 13 diciembre 2016]. Disponible en:
https://otalliance.org/system/files/files/resource/documents/consiempressl.pdf

XATAKAON. [sitio web]. 2011. Diferencia entre HTTP y HTTPS. [consulta 12


diciembre 2016]. Disponible en:
http://www.xatakaon.com/seguridad-en-redes/que-diferencia-hay-entre-http-y-https

Você também pode gostar