II.

Cómo proteger las conexiones web

Para que una red funcione, debe haber varias capas de responsabilidad. Dichas capas están representadas en el modelo OSI (Open Systems Interconnection, Interconexión de Sistemas Abiertos). Son las siguientes:

  • La capa física de la red, que representa el nivel inferior de la red. Esta capa se encarga de la transmisión física de los datos: es responsable de que, si el emisor envía un 1, el receptor reciba un 1. La capa física puede transmitir datos a través de cables de luz (ópticos), por ejemplo. Tiene que determinar si se puede enviar tráfico en ambos sentidos al mismo tiempo, cómo se establece la conexión, etc.

  • La capa de enlace de datos es responsable de la detección y corrección de errores, así como de empaquetar los datos en paquetes llamados tramas. Se asegura de que los datos entren en la red. También define a qué dirección de hardware van destinados los datos: por ejemplo, pueden dirigirse a distintas interfaces de red dentro de un mismo ordenador.

  • La capa de red es la responsable de enrutar los datos a la máquina de destino, dentro de la red. Recuerda que la red puede estar conectada a otra red y que, a veces, ni siquiera usa el mismo protocolo de comunicación. La capa de red transfiere los datos a la capa de transporte.

  • La capa de transporte gestiona las conexiones entre el nodo inicial y el nodo final (los nodos son las piezas físicas que componen una red). También define cómo se gestiona la conexión, si se espera que los paquetes lleguen en orden y si se debe solicitar que se envíen de nuevo los paquetes perdidos. La capa de transporte, además, gestiona la velocidad de transferencia, para que los nodos más rápidos dejen funcionar a los más lentos.

  • La capa de sesión se ocupa de establecer y mantener las conexiones.

  • La capa de presentación gestiona, entre otras cosas, la codificación, de manera que los ordenadores puedan comunicarse de manera comprensible para ambos nodos, aunque internamente no representen los datos de la misma forma. Además, la capa de presentación se encarga del cifrado en algunos casos, por ejemplo, al navegar por un sitio web seguro de Internet.

  • La capa de aplicación se encarga de la capa del protocolo en cuestión. Por ejemplo, en los navegadores web, el protocolo HTTP define cómo las aplicaciones deben solicitar las páginas web.

El modelo de Interconexión de Sistemas Abiertos (OSI), formado por siete capas
El modelo de Interconexión de Sistemas Abiertos (OSI), formado por siete capas

Cada bit de datos que se envía, por ejemplo, la página web de este curso, pasa por las diferentes capas de la red (la llamada pila de red). El sitio web de este curso utiliza TLS (Transport Layer Security, Seguridad de la Capa de Transporte): el protocolo SSL que aparece en la imagen de arriba se ha reemplazado por TLS en la mayoría de los casos. TLS es una forma de cifrar los datos para evitar que las capas inferiores puedan observar los datos incluidos en los paquetes. Si el sitio web del curso no utilizara TLS, tus datos se enviarían en texto en claro a través de todas las capas y todos los ordenadores que participaran en la transmisión de los datos. En el peor de los casos, podrían atravesar decenas de nodos. Todos esos ordenadores podrían, en teoría, observar y robar esos datos.

Note

Está bien saber que este sitio web emplea TLS para garantizar la seguridad, pero ¿qué pasaría si los datos en cuestión no fueran el contenido del curso, sino datos personales sensibles, bancarios o de salud? ¿Cómo puedes confiar en los nodos por los que se envían tus datos cuando ni siquiera puedes saber quién los controla? Vamos a averiguarlo.

Cómo proteger las conexiones web

Cuando se envían y reciben datos a través de Internet, se suele hacer a través de un navegador web. Los navegadores seguros usan un protocolo llamado TLS (Seguridad de la Capa de Transporte) para proteger el tráfico entre el navegador que utilizas para acceder a Internet (el cliente) y el servidor al que envías datos o del que los recibes (por ejemplo, el servidor de un sitio web).

Puedes comprobar que la conexión está protegida por TLS fijándote en la barra de direcciones del navegador: debes asegurarte de que aparezca un candado junto al nombre del dominio y que dicho dominio sea el correcto. Si no hay un candado al lado de la URL, significa que no te está protegiendo el cifrado.

Una lupa sobre un candado situado en la barra de direcciones del navegador
Una lupa sobre un candado situado en la barra de direcciones del navegador

Como capa de seguridad de la red, TLS emplea protocolos criptográficos para autenticar, verificar y proporcionar un intercambio seguro de comunicaciones cifradas desde el punto del navegador hasta el servidor de destino. Al hacerlo, protege el contenido de los paquetes de datos para que no queden expuestos a las capas inferiores de la red ni a los nodos de terceros que transmiten los datos a lo largo de la ruta.

El protocolo TLS gestiona el intercambio de las claves de cifrado de forma segura. Recuerda que la clave de cifrado es lo que protege la confidencialidad y verifica la integridad de la comunicación (el mensaje) que se envía.

Los navegadores que usan TLS intentan protegerte comprobando la validez del certificado del servidor del sitio web y que el certificado coincida con el nombre del dominio del sitio web (la URL). Si el certificado del servidor no es válido o si se utiliza en otro sitio, el navegador te advierte de que no tienes esa protección. En ese caso, aparece un mensaje en la pantalla para avisarte de que la autoridad de certificación no es válida. Esto puede significar, entre otras cosas, que un atacante está insertando su propio certificado en sustitución del de Google.

Todavía es posible conectarse a los sitios web que usan el protocolo HTTP, que no es seguro. Todos los datos que se envían entre tu navegador y el servidor de esos sitios web pueden estar a la vista de quien controle los nodos por los que se enruten esos datos.

Ataques contra TLS

Pero no basta con confiar en el icono del candado. Cualquiera puede crear un certificado para indicar a los navegadores qué cifrado deben aplicar a la conexión.

Un atacante puede intentar engañarte para que utilices su sitio web en lugar del sitio genuino, con trucos sencillos como cambiar la dirección URL por una muy parecida a la original. Por ejemplo, puede sustituir la letra L minúscula por el número 1. En la mayoría de los tipos de letra, ambos caracteres se parecen lo suficiente como para engañar al usuario si no presta atención. Estos sitios también pueden utilizar cifrado, por lo que el simple hecho de ver el icono del candado no siempre significa que la conexión sea segura. Si recibes un mensaje que contiene un enlace, pueden engañarte para que accedas a un sitio web de esta manera. Un buen modo de evitar este tipo de sustituciones de las URL es escribir la dirección en lugar de hacer clic en el enlace que has recibido.

En los ataques man-in-the-middle (MITM), o ataques de intermediario, el atacante se sitúa entre el servidor y tu dispositivo para descifrar tu tráfico, almacenarlo y volver a cifrarlo antes de retransmitirlo al servidor. Este tipo de ataques son bastante fáciles de realizar si no usas cifrado. La forma en que el protocolo TLS intercambia las claves y verifica el servidor está diseñada para protegerte de estos ataques. Pero, si haces caso omiso de los mensajes de advertencia sobre los sitios no seguros, puedes sufrir un ataque de intermediario.

Note
Unas manos sosteniendo una tableta con un icono de sitio web poco seguro
Unas manos sosteniendo una tableta con un icono de sitio web poco seguro

Consejos para verificar la seguridad de red del navegador y del sitio web:

Comprueba siempre la validez del certificado: debe haber un candado en la barra de direcciones. No ignores las advertencias que muestra el navegador. Si dice que el certificado del servidor no es de confianza, no utilices ese sitio web.

Es importante precisar que TLS y otros protocolos de seguridad como SSL no solo se utilizan para las comunicaciones entre los navegadores web y los servidores de los sitios web. Actualmente, también se pueden usar—y se usan— en otro tipo de aplicaciones, como los clientes de correo electrónico, los servicios en la nube y las aplicaciones móviles. Es importante tenerlo en cuenta porque, cada vez más, los datos que enviamos y recibimos en Internet se transfieren a través de aplicaciones móviles y de la nube. No obstante, es un poco más complicado averiguar si esas comunicaciones son seguras, como veremos más adelante en esta misma sección.

Cómo usar una VPN para protegerse

¿Cómo puedes protegerte del espionaje en Internet y de los ataques de intermediario? Una solución muy recomendable es utilizar una VPN (virtual private network, red privada virtual). Las VPN cifran tus datos y los dirigen desde tu ordenador hasta un nodo intermedio conocido y de confianza, que descifra los datos y los transfiere para que continúen su viaje hasta el nodo de destino.

La VPN es algo así como un sobre adicional que cifra el contenido (el sobre que contiene los datos originales) desde el nodo de tu ordenador y, cuando llega al nodo de salida, descifra el sobre exterior y permite que los datos originales continúen su ruta como de costumbre. Esto puede evitar, por ejemplo, que las redes Wi-Fi hostiles espíen tus comunicaciones.

Note

No deberías usar conexiones Wi-Fi públicas porque son inseguras por naturaleza. Pero si aun así lo haces, es imprescindible que utilices una VPN para protegerte. Por regla general, si alguna vez te conectas a una red Wi-Fi pública, como la conexión gratuita de una cafetería, asegúrate de desactivar el uso compartido de archivos en tu dispositivo y, cuando salgas del establecimiento, usa la opción de «olvidar la red» en tu configuración de redes. Esto evitará que el dispositivo se vuelva a conectar involuntariamente a este tipo de redes, algo que puede suceder sin que te des cuenta si no tomas medidas.

Un ejemplo de VPN es tener una aplicación de VPN en el teléfono móvil o en un dispositivo físico situado en el perímetro de tu red de confianza (por ejemplo, un router de la red interna de la empresa). Sea cual sea la implementación de la VPN, cuando se activa, este sistema protege y oculta la comunicación ante las capas de red subyacentes y, al hacerlo, también la esconde de los nodos que gestionan el tráfico.

Una red donde aparece una conexión protegida por VPN
Una red donde aparece una conexión protegida por VPN

Sin embargo, hay que tener en cuenta que, una vez que el tráfico cifrado por la VPN sale del nodo del servidor del proveedor de servicios de VPN, continúa su viaje hacia el nodo de destino de la manera habitual. Por ello, si no se utiliza un protocolo de red seguro como TLS o el cifrado de extremo a extremo (consulta la sección 3.1), el tráfico será visible para todos los nodos del resto de la ruta.

Las VPN también se pueden usar para ocultar el origen de tu tráfico y que parezca provenir del nodo de salida de la VPN. Esta función puede utilizarse para eludir restricciones geográficas o esconder tu tráfico de las redes potencialmente hostiles. Las VPN también permiten ocultar las comunicaciones ante los Gobiernos hostiles que intentan espiar a sus ciudadanos. En ese caso, la VPN cifra y enmascara el destino de la comunicación hasta que finaliza la conexión en un nodo de salida que puede estar en otro país.

A menudo, los sistemas de VPN se emplean también para conectar redes que están separadas. Lo más habitual es usarlos para extender una red entre varias oficinas de una misma empresa. Aunque las redes de las diferentes oficinas no estén conectadas entre sí físicamente, la VPN puede hacer que parezcan una sola. El tráfico dirigido a la red interna se enruta a través de la conexión de VPN cifrada hasta el nodo de salida, que en este caso estará en el perímetro de la otra red.

Note

Las VPN no siempre son la solución. Por ejemplo, si tienes una VPN en tu móvil y conectas un ordenador portátil a Internet a través de la conexión de ese móvil, la conexión del portátil no estará protegida por la VPN. El teléfono actúa como un router y no utiliza el túnel VPN para ese tipo de conexiones, aunque todas las aplicaciones del teléfono móvil sí usen la VPN.

En un caso como este, lo mejor es activar la VPN en el ordenador portátil.

Seguridad en aplicaciones y servicios de la nube

Lo habitual, hasta hace poco, era que los datos se alojaran en un ordenador llamado servidor y una persona se ocupara de gestionar dicho servidor y su seguridad. Muchas técnicas de ciberseguridad, como el control del acceso y el almacenamiento de registros, se remontan a los inicios de la informática, cuando los dispositivos eran más sencillos y todos los datos se alojaban localmente.

En los años ochenta y noventa, la comercialización y la consumerización de la informática personal hicieron que los consumidores tuvieran que proteger personalmente sus ordenadores, o puntos finales (del inglés endpoints), como se les suele llamar en los entornos corporativos. Normalmente, bastaba con instalar un programa antivirus. Hoy en día sabemos que esto no es suficiente, especialmente para la ciberseguridad de las empresas y organizaciones. Como mínimo, es aconsejable recibir formación periódicamente sobre el protocolo básico de ciberseguridad que se debe seguir, si los empleados de la empresa trabajan a distancia o viajan por trabajo.

En la actualidad, los puntos finales —como ordenadores, teléfonos móviles o tabletas— no se dedican únicamente al uso laboral o particular, sino que ambos fines se mezclan en el uso de los dispositivos y los contenidos que almacenan. También está menos claro dónde se alojan los datos. Por ello, es difícil averiguar dónde se encuentran los controles de seguridad de las aplicaciones que usas en el día a día.

¿Usamos la nube o, más bien, IaaS, PaaS o SaaS?

Es posible que hayas oído que la nube es inherentemente segura. Por otro lado, hay quien dice que la nube es, simplemente, el ordenador de otra persona.

Ambas afirmaciones se acercan a la realidad, pero forman parte de los numerosos mitos existentes sobre la ciberseguridad. Para entender el tipo de nube en cuestión, tenemos que hacernos varias preguntas. Las respuestas a dichas preguntas también determinan el tipo de controles y técnicas de ciberseguridad que debemos usar.

Cuando hablamos de la nube, nos referimos a prácticamente cualquier procesamiento de datos que esté gestionado por otras personas. Sin embargo, hay diferencias entre los diversos tipos de nube, IaaS, PaaS y SaaS:

  • En la IaaS (infraestructura como servicio), un proveedor de alojamiento como AWS, Azure o GCP aloja servidores virtuales en un entorno ampliable. En este caso, el cliente es quien debe mantener protegidos los sistemas y servicios operativos que utilice.

  • La PaaS (plataforma como servicio) la ofrecen los mismos proveedores, pero esta modalidad proporciona también software de bases de datos o de inteligencia de datos como servicio, por ejemplo. En este caso, el cliente puede centrarse en la función que le facilita la plataforma y, al mismo tiempo, protegerla mediante una configuración adecuada.

  • El SaaS (software como servicio) incluye servicios como Salesforce, Office 365 y Gmail. En este caso, el cliente es el que menos control tiene sobre cómo se protege el servicio. Sin embargo, sigue siendo responsabilidad del cliente gestionar sus identidades en el servicio y seguir las recomendaciones de seguridad en la red, como hemos aprendido en este curso.

«¿Es seguro instalar esta aplicación?»

Es una pregunta muy común. La información que publica el proveedor junto con la aplicación no nos dice mucho sobre lo seguro que es el procesamiento de los datos de la aplicación o del sistema en el que se basa.

Para analizar la ciberseguridad de una aplicación, hay que tener en cuenta lo siguiente:

  • ¿Quién publica la aplicación? ¿Es la tienda del fabricante o una entidad desconocida? Las tiendas de aplicaciones (como Google Play o la App Store de Apple) revisan las apps para detectar si contienen alguna función dañina, como stalkerware, malware y puertas traseras.

  • ¿Qué información recopila la aplicación del usuario, con o sin su consentimiento?

  • ¿Cómo se protege la información que se transfiere entre la aplicación y el sistema en el que se basa (backend)? (Para obtener más información, consulta el capítulo 3).

  • ¿Cómo se protege la información entre el emisor y el receptor (cifrado de extremo a extremo)?

  • ¿Cuál es la seguridad de los protocolos de cifrado y la gestión de claves? Por ejemplo, ¿la aplicación tiene un certificado TLS?

  • ¿Cómo puede procesar técnicamente tu información el editor de la aplicación?

  • ¿El editor está sujeto a alguna legislación que le exija entregar su información a las autoridades locales (por ejemplo, si es de China)?

  • ¿El editor intercepta y modifica el contenido de la información en tránsito (también, por ejemplo, WeChat en China)?

Comprobar todo esto supondría un gran esfuerzo incluso para un profesional, así que puedes ver lo que han hecho otros para averiguarlo. Puedes empezar por preguntar si se ha realizado recientemente alguna auditoría del código o algún análisis de seguridad independiente.

Tal vez, el mejor análisis disponible públicamente sea la comparación de las características de seguridad y privacidad de las diferentes aplicaciones de chat (Signal, Telegram, WhatsApp y Facebook Messenger).

Para cotejar otras aplicaciones, puedes consultar, por ejemplo, la comparación de la EFF (Electronic Frontier Foundation). Es una comparativa ya obsoleta, pero también puedes encontrar una versión más reciente y mucho más detallada en Securemessagingapp.com.

Note

Es importante recordar que, sea cual sea el tipo de software —desde el software del sistema de tus dispositivos hasta los antivirus, los sistemas de VPN o las aplicaciones—, es importante instalar las últimas actualizaciones (asegurándote siempre de que el aviso de actualización provenga de una fuente segura y de confianza). Las actualizaciones de software pueden parecer poco importantes y mucha gente las ignora, pero casi siempre contienen parches de seguridad imprescindibles, sin los cuales tu dispositivo y tus comunicaciones pueden ser vulnerables a los ataques.

Next section
III. Tu plan de acción de ciberseguridad