Seguridad de red - Guía rápida
En esta era moderna, las organizaciones dependen en gran medida de las redes de computadoras para compartir información en toda la organización de una manera eficiente y productiva. Las redes de computadoras de las organizaciones se están volviendo ahora grandes y ubicuas. Suponiendo que cada miembro del personal tiene una estación de trabajo dedicada, una empresa a gran escala tendría pocos miles de estaciones de trabajo y muchos servidores en la red.
Es probable que estas estaciones de trabajo no estén administradas de forma centralizada ni tengan protección perimetral. Pueden tener una variedad de sistemas operativos, hardware, software y protocolos, con diferentes niveles de conciencia cibernética entre los usuarios. Ahora imagínese, estas miles de estaciones de trabajo en la red de la empresa están conectadas directamente a Internet. Este tipo de red no segura se convierte en el objetivo de un ataque que contiene información valiosa y muestra vulnerabilidades.
En este capítulo, describimos las principales vulnerabilidades de la red y la importancia de la seguridad de la red. En capítulos siguientes, discutiremos los métodos para lograr lo mismo.
Red física
Una red se define como dos o más dispositivos informáticos conectados entre sí para compartir recursos de manera eficiente. Además, conectar dos o más redes juntas se conoce comointernetworking. Por lo tanto, Internet es solo una interconexión, una colección de redes interconectadas.
Para configurar su red interna, una organización tiene varias opciones. Puede utilizar una red cableada o una red inalámbrica para conectar todas las estaciones de trabajo. Hoy en día, las organizaciones utilizan principalmente una combinación de redes inalámbricas y cableadas.
Redes cableadas e inalámbricas
En una red cableada, los dispositivos se conectan entre sí mediante cables. Normalmente, las redes cableadas se basan en el protocolo Ethernet donde los dispositivos se conectan mediante cables de par trenzado sin blindaje (UTP) a los diferentes conmutadores. Estos conmutadores están además conectados al enrutador de red para acceder a Internet.
En la red inalámbrica, el dispositivo está conectado a un punto de acceso a través de transmisiones de radio. Los puntos de acceso se conectan además a través de cables al conmutador / enrutador para acceder a la red externa.
Las redes inalámbricas han ganado popularidad debido a la movilidad que ofrecen. Los dispositivos móviles no necesitan estar atados a un cable y pueden moverse libremente dentro del rango de la red inalámbrica. Esto asegura un intercambio de información eficiente y aumenta la productividad.
Vulnerabilidades y ataques
La vulnerabilidad común que existe tanto en redes cableadas como inalámbricas es un "acceso no autorizado" a una red. Un atacante puede conectar su dispositivo a una red a través de un puerto de concentrador / conmutador no seguro. En este sentido, la red inalámbrica se considera menos segura que la red cableada, porque se puede acceder fácilmente a la red inalámbrica sin ninguna conexión física.
Después de acceder, un atacante puede aprovechar esta vulnerabilidad para lanzar ataques como:
Oler los datos del paquete para robar información valiosa.
Denegación de servicio a usuarios legítimos en una red al inundar el medio de la red con paquetes falsos.
Falsificar identidades físicas (MAC) de hosts legítimos y luego robar datos o lanzar un ataque de 'man-in-the-middle'.
Protocolo de red
El protocolo de red es un conjunto de reglas que gobiernan las comunicaciones entre dispositivos conectados a una red. Incluyen mecanismos para realizar conexiones, así como reglas de formato para el empaquetado de datos de los mensajes enviados y recibidos.
Se han desarrollado varios protocolos de redes informáticas, cada uno diseñado para fines específicos. Los protocolos populares y ampliamente utilizados son TCP / IP con protocolos asociados de nivel superior e inferior.
Protocolo TCP / IP
Transmission Control Protocol (TCP) y Internet Protocol(IP) son dos protocolos de red informáticos distintos que se utilizan principalmente juntos. Debido a su popularidad y amplia adopción, están integrados en todos los sistemas operativos de dispositivos en red.
IP corresponde a la capa de red (capa 3) mientras que TCP corresponde a la capa de transporte (capa 4) en OSI. TCP / IP se aplica a las comunicaciones de red donde se utiliza el transporte TCP para entregar datos a través de redes IP.
Los protocolos TCP / IP se utilizan comúnmente con otros protocolos como HTTP, FTP, SSH en la capa de aplicación y Ethernet en el enlace de datos / capa física.
El conjunto de protocolos TCP / IP se creó en 1980 como una solución de internetworking con muy poca preocupación por los aspectos de seguridad.
Fue desarrollado para una comunicación en la red confiable limitada. Sin embargo, durante un período, este protocolo se convirtió en el estándar de facto para las comunicaciones de Internet no seguras.
Algunas de las vulnerabilidades de seguridad comunes de los trajes de protocolo TCP / IP son:
HTTP es un protocolo de capa de aplicación en la suite TCP / IP que se utiliza para transferir archivos que componen las páginas web desde los servidores web. Estas transferencias se realizan en texto plano y un intruso puede leer fácilmente los paquetes de datos intercambiados entre el servidor y un cliente.
Otra vulnerabilidad HTTP es una autenticación débil entre el cliente y el servidor web durante la inicialización de la sesión. Esta vulnerabilidad puede conducir a un ataque de secuestro de sesión en el que el atacante roba una sesión HTTP del usuario legítimo.
La vulnerabilidad del protocolo TCP es un protocolo de enlace de tres vías para el establecimiento de la conexión. Un atacante puede lanzar un ataque de denegación de servicio "SYN-flooding" para aprovechar esta vulnerabilidad. Establece muchas sesiones a medio abrir al no completar el apretón de manos. Esto conduce a una sobrecarga del servidor y, finalmente, a un bloqueo.
La capa de IP es susceptible a muchas vulnerabilidades. Mediante una modificación del encabezado del protocolo IP, un atacante puede lanzar un ataque de suplantación de IP.
Además de lo mencionado anteriormente, existen muchas otras vulnerabilidades de seguridad en la familia de protocolos TCP / IP tanto en el diseño como en su implementación.
Por cierto, en la comunicación de red basada en TCP / IP, si una capa es pirateada, las otras capas no se dan cuenta del pirateo y toda la comunicación se ve comprometida. Por lo tanto, es necesario emplear controles de seguridad en cada capa para garantizar una seguridad infalible.
Protocolo DNS
Domain Name System(DNS) se utiliza para resolver nombres de dominio de host en direcciones IP. Los usuarios de la red dependen de la funcionalidad de DNS principalmente durante la navegación por Internet escribiendo una URL en el navegador web.
En un ataque al DNS, el objetivo de un atacante es modificar un registro DNS legítimo para que se resuelva en una dirección IP incorrecta. Puede dirigir todo el tráfico de esa IP a la computadora incorrecta. Un atacante puede aprovechar la vulnerabilidad del protocolo DNS o comprometer el servidor DNS para materializar un ataque.
DNS cache poisoninges un ataque que aprovecha una vulnerabilidad encontrada en el protocolo DNS. Un atacante puede envenenar el caché falsificando una respuesta a una consulta de DNS recursiva enviada por un resolutor a un servidor autorizado. Una vez que el caché del sistema de resolución de DNS está envenenado, el host será dirigido a un sitio web malicioso y puede comprometer la información de las credenciales al comunicarse con este sitio.
Protocolo ICMP
Internet Control Management Protocol(ICMP) es un protocolo de gestión de red básico de las redes TCP / IP. Se utiliza para enviar mensajes de error y control sobre el estado de los dispositivos en red.
ICMP es una parte integral de la implementación de la red IP y, por lo tanto, está presente en la configuración de la red. ICMP tiene sus propias vulnerabilidades y se puede abusar de él para lanzar un ataque en una red.
Los ataques comunes que pueden ocurrir en una red debido a vulnerabilidades ICMP son:
ICMP permite a un atacante realizar un reconocimiento de red para determinar la topología de la red y las rutas de acceso a la red. El barrido ICMP implica descubrir todas las direcciones IP de host que están activas en toda la red del objetivo.
Trace route es una utilidad ICMP popular que se utiliza para mapear redes de destino al describir la ruta en tiempo real desde el cliente al host remoto.
Un atacante puede lanzar un ataque de denegación de servicio utilizando la vulnerabilidad ICMP. Este ataque implica el envío de paquetes de ping IPMP que superen los 65.535 bytes al dispositivo de destino. La computadora de destino no puede manejar este paquete correctamente y puede causar que el sistema operativo colapse.
Otros protocolos como ARP, DHCP, SMTP, etc. también tienen sus vulnerabilidades que pueden ser explotadas por el atacante para comprometer la seguridad de la red. Discutiremos algunas de estas vulnerabilidades en capítulos posteriores.
La menor preocupación por el aspecto de seguridad durante el diseño e implementación de protocolos se ha convertido en una de las principales causas de amenazas a la seguridad de la red.
Objetivos de la seguridad de la red
Como se discutió en secciones anteriores, existe una gran cantidad de vulnerabilidades en la red. Por lo tanto, durante la transmisión, los datos son muy vulnerables a los ataques. Un atacante puede apuntar al canal de comunicación, obtener los datos y leerlos o volver a insertar un mensaje falso para lograr sus nefastos objetivos.
La seguridad de la red no solo se preocupa por la seguridad de las computadoras en cada extremo de la cadena de comunicación; sin embargo, su objetivo es garantizar que toda la red sea segura.
La seguridad de la red implica proteger la usabilidad, confiabilidad, integridad y seguridad de la red y los datos. La seguridad eficaz de la red derrota una variedad de amenazas al ingresar o propagarse en una red.
El objetivo principal de la seguridad de la red son la confidencialidad, la integridad y la disponibilidad. Estos tres pilares de la seguridad de la red a menudo se representan comoCIA triangle.
Confidentiality- La función de la confidencialidad es proteger datos comerciales valiosos de personas no autorizadas. La confidencialidad parte de la seguridad de la red asegura que los datos estén disponibles solo para las personas previstas y autorizadas.
Integrity- Este objetivo significa mantener y garantizar la precisión y coherencia de los datos. La función de la integridad es asegurarse de que los datos sean fiables y no sean modificados por personas no autorizadas.
Availability - La función de disponibilidad en Network Security es asegurarse de que los datos, recursos / servicios de red estén continuamente disponibles para los usuarios legítimos, siempre que lo requieran.
Lograr la seguridad de la red
Garantizar la seguridad de la red puede parecer muy sencillo. Los objetivos a alcanzar parecen sencillos. Pero, en realidad, los mecanismos utilizados para lograr estos objetivos son muy complejos y comprenderlos implica un razonamiento sólido.
International Telecommunication Union(UIT), en su recomendación sobre la arquitectura de seguridad X.800, ha definido ciertos mecanismos para llevar la estandarización en los métodos para lograr la seguridad de la red. Algunos de estos mecanismos son:
En-cipherment- Este mecanismo proporciona servicios de confidencialidad de datos al transformar los datos en formularios no legibles para las personas no autorizadas. Este mecanismo utiliza un algoritmo de cifrado-descifrado con claves secretas.
Digital signatures- Este mecanismo es el equivalente electrónico de las firmas ordinarias en los datos electrónicos. Proporciona autenticidad de los datos.
Access control- Este mecanismo se utiliza para proporcionar servicios de control de acceso. Estos mecanismos pueden utilizar la identificación y autenticación de una entidad para determinar y hacer cumplir los derechos de acceso de la entidad.
Habiendo desarrollado e identificado varios mecanismos de seguridad para lograr la seguridad de la red, es fundamental decidir dónde aplicarlos; tanto físicamente (en qué ubicación) como lógicamente (en qué capa de una arquitectura como TCP / IP).
Mecanismos de seguridad en capas de redes
Se han desarrollado varios mecanismos de seguridad de tal manera que se pueden desarrollar en una capa específica del modelo de capa de red OSI.
Security at Application Layer- Las medidas de seguridad utilizadas en esta capa son específicas de la aplicación. Los diferentes tipos de aplicaciones necesitarían medidas de seguridad independientes. Para garantizar la seguridad de la capa de aplicación, es necesario modificar las aplicaciones.
Se considera que diseñar un protocolo de aplicación criptográficamente sólido es muy difícil e implementarlo correctamente es aún más desafiante. Por lo tanto, se prefiere que los mecanismos de seguridad de la capa de aplicación para proteger las comunicaciones de red sean solo soluciones basadas en estándares que se han utilizado durante algún tiempo.
Un ejemplo de protocolo de seguridad de la capa de aplicación son las Extensiones seguras de correo de Internet multipropósito (S / MIME), que se utiliza comúnmente para cifrar mensajes de correo electrónico. DNSSEC es otro protocolo en esta capa que se utiliza para el intercambio seguro de mensajes de consulta DNS.
Security at Transport Layer- Las medidas de seguridad en esta capa se pueden utilizar para proteger los datos en una sola sesión de comunicación entre dos hosts. El uso más común de los protocolos de seguridad de la capa de transporte es proteger el tráfico de sesiones HTTP y FTP. Transport Layer Security (TLS) y Secure Socket Layer (SSL) son los protocolos más comunes utilizados para este propósito.
Network Layer- Las medidas de seguridad en esta capa se pueden aplicar a todas las aplicaciones; por lo tanto, no son específicos de la aplicación. Todas las comunicaciones de red entre dos hosts o redes pueden protegerse en esta capa sin modificar ninguna aplicación. En algunos entornos, el protocolo de seguridad de la capa de red, como Internet Protocol Security (IPsec), proporciona una solución mucho mejor que los controles de la capa de transporte o aplicación debido a las dificultades para agregar controles a aplicaciones individuales. Sin embargo, los protocolos de seguridad en esta capa proporcionan menos flexibilidad de comunicación que puede ser requerida por algunas aplicaciones.
Por cierto, un mecanismo de seguridad diseñado para operar en una capa superior no puede proporcionar protección para los datos en capas inferiores, porque las capas inferiores realizan funciones que las capas superiores no son conscientes. Por lo tanto, puede ser necesario implementar múltiples mecanismos de seguridad para mejorar la seguridad de la red.
En los siguientes capítulos del tutorial, discutiremos los mecanismos de seguridad empleados en diferentes capas de la arquitectura de red OSI para lograr la seguridad de la red.
Ahora se ofrecen varios servicios comerciales en línea a través de aplicaciones cliente-servidor. Los formularios más populares son la aplicación web y el correo electrónico. En ambas aplicaciones, el cliente se comunica con el servidor designado y obtiene los servicios.
Al utilizar un servicio de cualquier aplicación de servidor, el cliente y el servidor intercambian mucha información en la intranet o Internet subyacente. Somos conscientes del hecho de que estas transacciones de información son vulnerables a varios ataques.
La seguridad de la red implica proteger los datos contra ataques mientras se encuentran en tránsito en una red. Para lograr este objetivo, se han diseñado muchos protocolos de seguridad en tiempo real. Dicho protocolo debe proporcionar al menos los siguientes objetivos principales:
- Las partes pueden negociar de forma interactiva para autenticarse entre sí.
- Establezca una clave de sesión secreta antes de intercambiar información en la red.
- Intercambie la información en forma encriptada.
Curiosamente, estos protocolos funcionan en diferentes capas del modelo de red. Por ejemplo, el protocolo S / MIME funciona en la capa de aplicación, el protocolo SSL se desarrolla para funcionar en la capa de transporte y el protocolo IPsec funciona en la capa de red.
En este capítulo, analizaremos diferentes procesos para lograr la seguridad de la comunicación por correo electrónico y los protocolos de seguridad asociados. El método para proteger el DNS se explica a continuación. En los capítulos posteriores, se describirán los protocolos para lograr la seguridad web.
Seguridad del correo electrónico
Hoy en día, el correo electrónico se ha convertido en una aplicación de red muy utilizada. Analicemos brevemente la infraestructura del correo electrónico antes de proceder a conocer los protocolos de seguridad del correo electrónico.
Infraestructura de correo electrónico
La forma más sencilla de enviar un correo electrónico sería enviar un mensaje directamente desde la máquina del remitente a la máquina del destinatario. En este caso, es esencial que ambas máquinas estén funcionando en la red simultáneamente. Sin embargo, esta configuración no es práctica ya que los usuarios ocasionalmente pueden conectar sus máquinas a la red.
De ahí surgió el concepto de configurar servidores de correo electrónico. En esta configuración, el correo se envía a un servidor de correo que está disponible permanentemente en la red. Cuando la máquina del destinatario se conecta a la red, lee el correo del servidor de correo.
En general, la infraestructura de correo electrónico consiste en una malla de servidores de correo, también denominados como Message Transfer Agents (MTA) y máquinas cliente que ejecutan un programa de correo electrónico que incluye un agente de usuario (UA) y un MTA local.
Normalmente, un mensaje de correo electrónico se reenvía desde su UA, atraviesa la malla de MTA y finalmente llega al UA en la máquina del destinatario.
Los protocolos utilizados para el correo electrónico son los siguientes:
Protocolo simple de transferencia de correo (SMTP) utilizado para reenviar mensajes de correo electrónico.
El Protocolo de oficina postal (POP) y el Protocolo de acceso a mensajes de Internet (IMAP) se utilizan para recuperar los mensajes por destinatario del servidor.
MÍMICA
El estándar básico de correo electrónico de Internet se escribió en 1982 y describe el formato de los mensajes de correo electrónico intercambiados en Internet. Principalmente admite mensajes de correo electrónico escritos como texto en alfabeto romano básico.
En 1992, se sintió la necesidad de mejorar el mismo. Por lo tanto, se definieron Extensiones de correo de Internet multipropósito (MIME) estándar adicionales . Es un conjunto de extensiones del estándar básico de correo electrónico de Internet. MIME ofrece la posibilidad de enviar correo electrónico utilizando caracteres distintos a los del alfabeto romano básico, como el alfabeto cirílico (utilizado en ruso), el alfabeto griego o incluso los caracteres ideográficos del chino.
Otra necesidad que satisface MIME es enviar contenidos no textuales, como imágenes o videoclips. Debido a estas características, el estándar MIME se adoptó ampliamente con SMTP para la comunicación por correo electrónico.
Servicios de seguridad de correo electrónico
El uso creciente de la comunicación por correo electrónico para transacciones importantes y cruciales exige la provisión de ciertos servicios de seguridad fundamentales como los siguientes:
Confidentiality - El mensaje de correo electrónico no debe ser leído por nadie más que por el destinatario previsto.
Authentication - El destinatario del correo electrónico puede estar seguro de la identidad del remitente.
Integrity - Garantía al destinatario de que el mensaje de correo electrónico no ha sido alterado desde que fue transmitido por el remitente.
Non-repudiation - El destinatario del correo electrónico puede demostrarle a un tercero que el remitente realmente envió el mensaje.
Proof of submission - El remitente del correo electrónico recibe la confirmación de que el mensaje se entregó al sistema de entrega de correo.
Proof of delivery - El remitente recibe una confirmación de que el destinatario recibió el mensaje.
Los servicios de seguridad como la privacidad, la autenticación, la integridad de los mensajes y el no repudio se proporcionan generalmente mediante el uso de criptografía de clave pública.
Normalmente, hay tres escenarios diferentes de comunicación por correo electrónico. Discutiremos los métodos para lograr los servicios de seguridad anteriores en estos escenarios.
Correo electrónico uno a uno
En este escenario, el remitente envía un mensaje de correo electrónico a un solo destinatario. Por lo general, no más de dos MTA están involucrados en la comunicación.
Supongamos que un remitente desea enviar un correo electrónico confidencial a un destinatario. La provisión de privacidad en este caso se logra de la siguiente manera:
El remitente y el receptor tienen sus claves públicas privadas como (S PVT , S PUB ) y (R PVT , R PUB ) respectivamente.
El remitente genera una clave simétrica secreta, K S para el cifrado. Aunque el remitente podría haber utilizado R PUB para el cifrado, se utiliza una clave simétrica para lograr un cifrado y descifrado más rápidos.
El remitente cifra el mensaje con la clave K S y también cifra K S con la clave pública del destinatario, R PUB .
El remitente envía un mensaje cifrado y K S cifrado al destinatario.
El destinatario primero obtiene K S descifrando K S codificado utilizando su clave privada, R PVT .
El receptor descifra el mensaje utilizando la clave simétrica, K S .
Si en este escenario también se necesitan los servicios de integridad, autenticación y no repudio de mensajes, los siguientes pasos se agregan al proceso anterior.
El remitente produce el hash del mensaje y firma digitalmente este hash con su clave privada, S PVT .
El remitente envía este hash firmado al destinatario junto con otros componentes.
El destinatario utiliza la clave pública S PUB y extrae el hash recibido bajo la firma del remitente.
A continuación, el destinatario codifica el mensaje descifrado y ahora compara los dos valores hash. Si coinciden, se considera que se ha logrado la integridad del mensaje.
Además, el destinatario está seguro de que el remitente envía el mensaje (autenticación). Y por último, el remitente no puede negar que no envió el mensaje (no repudio).
Correo electrónico de uno a varios destinatarios
En este escenario, el remitente envía un mensaje de correo electrónico a dos o más destinatarios. La lista es administrada por el programa de correo electrónico del remitente (UA + MTA local). Todos los destinatarios reciben el mismo mensaje.
Supongamos que el remitente desea enviar un correo electrónico confidencial a muchos destinatarios (por ejemplo, R1, R2 y R3). La provisión de privacidad en este caso se logra de la siguiente manera:
El remitente y todos los destinatarios tienen su propio par de claves públicas y privadas.
El remitente genera una clave simétrica secreta, K sy cifra el mensaje con esta clave.
Luego, el remitente encripta K S varias veces con claves públicas de R1, R2 y R3, obteniendo R1 PUB (K S ), R2 PUB (K S ) y R3 PUB (K S ).
El remitente envía un mensaje cifrado y la correspondiente K S cifrada al destinatario. Por ejemplo, el destinatario 1 (R1) recibe un mensaje cifrado y R1 PUB (K S ).
Cada destinatario primero extrae la clave K S descifrando los K S codificados utilizando su clave privada.
Cada receptor descifra el mensaje utilizando la clave simétrica, K S .
Para proporcionar la integridad, autenticación y no repudio del mensaje, los pasos a seguir son similares a los pasos mencionados anteriormente en el escenario de correo electrónico uno a uno.
Correo electrónico de lista de distribución única
En este escenario, el remitente envía un mensaje de correo electrónico a dos o más destinatarios, pero el remitente no administra localmente la lista de destinatarios. Generalmente, el servidor de correo electrónico (MTA) mantiene la lista de correo.
El remitente envía un correo al MTA que administra la lista de correo y luego el MTA explota el correo a todos los destinatarios de la lista.
En este caso, cuando el remitente desea enviar un correo electrónico confidencial a los destinatarios de la lista de correo (digamos R1, R2 y R3); la privacidad está garantizada de la siguiente manera:
El remitente y todos los destinatarios tienen su propio par de claves públicas y privadas. Exploder Server tiene un par de claves públicas y privadas para cada lista de correo (List PUB , List PVT ) que mantiene.
El remitente genera una clave simétrica secreta K sy luego cifra el mensaje con esta clave.
El remitente luego encripta K S con la clave pública asociada con la lista, obtiene List PUB (K S ).
El remitente envía un mensaje cifrado y List PUB (K S ). El MTA exploder descifra Lista PUB (K S ) utilizando la lista de PVT y obtiene K S .
El exploder encripta K S con tantas claves públicas como miembros haya en la lista.
El Exploder reenvía el mensaje cifrado recibido y la K S cifrada correspondiente a todos los destinatarios de la lista. Por ejemplo, el Exploder reenvía el mensaje cifrado y R1 PUB (K S ) al destinatario 1 y así sucesivamente.
Para proporcionar la integridad, autenticación y no repudio del mensaje, los pasos a seguir son similares a los dados en el caso de un escenario de correo electrónico uno a uno.
Curiosamente, se espera que el programa de correo electrónico que emplea el método de seguridad anterior para proteger el correo electrónico funcione en todos los escenarios posibles discutidos anteriormente. La mayoría de los mecanismos de seguridad mencionados anteriormente para el correo electrónico son proporcionados por dos esquemas populares, Pretty Good Privacy (PGP) y S / MIME. Discutimos ambos en las siguientes secciones.
PGP
Pretty Good Privacy(PGP) es un esquema de cifrado de correo electrónico. Se ha convertido en el estándar de facto para proporcionar servicios de seguridad para la comunicación por correo electrónico.
Como se mencionó anteriormente, utiliza criptografía de clave pública, criptografía de clave simétrica, función hash y firma digital. Proporciona:
- Privacy
- Autenticación del remitente
- Integridad del mensaje
- Non-repudiation
Junto con estos servicios de seguridad, también proporciona compresión de datos y soporte de administración de claves. PGP usa algoritmos criptográficos existentes como RSA, IDEA, MD5, etc., en lugar de inventar los nuevos.
Funcionamiento de PGP
Se calcula el hash del mensaje. (Algoritmo MD5)
El hash resultante de 128 bits se firma utilizando la clave privada del remitente (algoritmo RSA).
La firma digital se concatena al mensaje y el resultado se comprime.
Se genera una clave simétrica de 128 bits, K S, que se utiliza para cifrar el mensaje comprimido con IDEA.
K S se cifra mediante la clave pública del destinatario mediante el algoritmo RSA y el resultado se adjunta al mensaje cifrado.
El formato del mensaje PGP se muestra en el siguiente diagrama. Los ID indican qué clave se utiliza para cifrar KS y qué clave se utilizará para verificar la firma en el hash.
En el esquema PGP, un mensaje está firmado y encriptado, y luego se codifica MIME antes de la transmisión.
Certificado PGP
El certificado de clave PGP se establece normalmente a través de una cadena de confianza. Por ejemplo, la clave pública de A está firmada por B usando su clave pública y la clave pública de B está firmada por C usando su clave pública. A medida que avanza este proceso, establece una red de confianza.
En un entorno PGP, cualquier usuario puede actuar como autoridad de certificación. Cualquier usuario de PGP puede certificar la clave pública de otro usuario de PGP. Sin embargo, dicho certificado solo es válido para otro usuario si el usuario reconoce al certificador como un presentador de confianza.
Existen varios problemas con este método de certificación. Puede resultar difícil encontrar una cadena que vaya de una clave pública conocida y confiable a la clave deseada. Además, puede haber varias cadenas que pueden conducir a diferentes claves para el usuario deseado.
PGP también puede usar la infraestructura PKI con una autoridad de certificación y las claves públicas pueden ser certificadas por CA (certificado X.509).
S / MIME
S / MIME son las siglas de Secure Multipurpose Internet Mail Extension. S / MIME es un estándar de correo electrónico seguro. Se basa en un estándar anterior de correo electrónico no seguro llamado MIME.
Trabajo de S / MIME
El enfoque S / MIME es similar al PGP. También utiliza criptografía de clave pública, criptografía de clave simétrica, funciones hash y firmas digitales. Proporciona servicios de seguridad similares a PGP para la comunicación por correo electrónico.
Los cifrados simétricos más comunes utilizados en S / MIME son RC2 y TripleDES. El método de clave pública habitual es RSA y el algoritmo hash es SHA-1 o MD5.
S / MIME especifica el tipo de MIME adicional, como "application / pkcs7-mime", para el envolvente de datos después del cifrado. Toda la entidad MIME está cifrada y empaquetada en un objeto. S / MIME tiene formatos de mensajes criptográficos estandarizados (diferentes de PGP). De hecho, MIME se amplía con algunas palabras clave para identificar las partes encriptadas y / o firmadas del mensaje.
S / MIME se basa en certificados X.509 para la distribución de claves públicas. Necesita una PKI jerárquica de arriba hacia abajo para el soporte de la certificación.
Empleabilidad de S / MIME
Debido al requisito de un certificado de la autoridad de certificación para la implementación, no todos los usuarios pueden aprovechar S / MIME, ya que algunos pueden desear cifrar un mensaje con un par de claves pública / privada. Por ejemplo, sin la participación o la sobrecarga administrativa de los certificados.
En la práctica, aunque la mayoría de las aplicaciones de correo electrónico implementan S / MIME, el proceso de inscripción de certificados es complejo. En cambio, el soporte de PGP generalmente requiere agregar un complemento y ese complemento viene con todo lo que se necesita para administrar las claves. La Web of Trust no se utiliza realmente. Las personas intercambian sus claves públicas a través de otro medio. Una vez obtenidas, conservan una copia de las claves públicas de aquellos con los que habitualmente se intercambian correos electrónicos.
La capa de implementación en la arquitectura de red para esquemas PGP y S / MIME se muestra en la siguiente imagen. Ambos esquemas proporcionan seguridad a nivel de aplicación para la comunicación por correo electrónico.
Uno de los esquemas, PGP o S / MIME, se utiliza según el entorno. Se puede proporcionar una comunicación segura por correo electrónico en una red cautiva adaptándose a PGP. Para la seguridad del correo electrónico a través de Internet, donde los correos se intercambian con nuevos usuarios desconocidos con mucha frecuencia, S / MIME se considera una buena opción.
Seguridad DNS
En el primer capítulo, mencionamos que un atacante puede utilizar el envenenamiento de caché de DNS para llevar a cabo un ataque al usuario objetivo. Domain Name System Security Extensions (DNSSEC) es un estándar de Internet que puede frustrar tales ataques.
Vulnerabilidad del DNS estándar
En un esquema DNS estándar, cada vez que el usuario desea conectarse a cualquier nombre de dominio, su computadora contacta con el servidor DNS y busca la dirección IP asociada para ese nombre de dominio. Una vez que se obtiene la dirección IP, la computadora se conecta a esa dirección IP.
En este esquema, no hay ningún proceso de verificación involucrado en absoluto. Una computadora le pide a su servidor DNS la dirección asociada con un sitio web, el servidor DNS responde con una dirección IP y su computadora sin duda la acepta como respuesta legítima y se conecta a ese sitio web.
Una búsqueda de DNS en realidad ocurre en varias etapas. Por ejemplo, cuando una computadora solicita "www.tutorialspoint.com", se realiza una búsqueda de DNS en varias etapas:
La computadora primero pregunta al servidor DNS local (proporcionado por el ISP). Si el ISP tiene este nombre en su caché, responde de lo contrario reenvía la consulta al "directorio de la zona raíz" donde puede encontrar ".com". y respuestas de la zona raíz.
Según la respuesta, la computadora pregunta al directorio ".com" donde puede encontrar "tutorialspoint.com".
Con base en la información recibida, la computadora consulta "tutorialspoint.com" donde puede encontrar www. tutorialspoint.com.
DNSSEC definido
La búsqueda de DNS, cuando se realiza mediante DNSSEC, implica la firma de respuestas por parte de la entidad que responde. DNSSEC se basa en criptografía de clave pública.
En el estándar DNSSEC, cada zona DNS tiene un par de claves pública / privada. Toda la información enviada por un servidor DNS está firmada con la clave privada de la zona de origen para garantizar la autenticidad. Los clientes de DNS necesitan conocer las claves públicas de la zona para verificar las firmas. Los clientes pueden estar preconfigurados con las claves públicas de todos los dominios de nivel superior o DNS raíz.
Con DNSSEC, el proceso de búsqueda es el siguiente:
Cuando su computadora va a preguntar a la zona raíz dónde puede encontrar .com, la respuesta está firmada por el servidor de la zona raíz.
La computadora verifica la clave de firma de la zona raíz y confirma que es la zona raíz legítima con información verdadera.
En la respuesta, la zona raíz proporciona la información sobre la clave de firma del servidor de zona .com y su ubicación, lo que permite que la computadora se comunique con el directorio .com y se asegure de que sea legítimo.
A continuación, el directorio .com proporciona la clave de firma y la información para tutorialspoint.com, lo que le permite ponerse en contacto con google.com y verificar que está conectado al tutorialspoint.com real, como lo confirman las zonas superiores.
La información enviada tiene la forma de Conjunto de registros de recursos (RRSets). El ejemplo de RRSet para el dominio "tutorialspoint.com" en el servidor ".com" de nivel superior se muestra en la siguiente tabla.
Nombre de dominio | Tiempo para vivir | Tipo | Valor |
---|---|---|---|
tutorialspoint.com | 86400 | NS | dns.tutorialspoint.com |
dns.tutorialspoint.com | 86400 | UN | 36..1.2.3 |
tutorialspoint.com | 86400 | LLAVE | 3682793A7B73F731029CE2737D ... |
tutorialspoint.com | 86400 | SIG | 86947503A8B848F5272E53930C ... |
El registro KEY es una clave pública de “tutorialspoint.com”.
El registro SIG es el hash firmado del servidor .com de nivel superior de los campos NS, A y KEY para verificar su autenticidad. Su valor es Kcom pvt (H (NS, A, KEY)).
Por lo tanto, se considera que cuando DNSSEC está completamente implementado, la computadora del usuario puede confirmar que las respuestas de DNS son legítimas y verdaderas, y evitar ataques de DNS lanzados a través del envenenamiento de la caché de DNS.
Resumen
El proceso de proteger los correos electrónicos garantiza la seguridad de un extremo a otro de la comunicación. Brinda servicios de seguridad de confidencialidad, autenticación de remitente, integridad de mensajes y no repudio.
Se han desarrollado dos esquemas para la seguridad del correo electrónico: PGP y S / MIME. Ambos esquemas utilizan criptografía de clave secreta y clave pública.
La búsqueda de DNS estándar es vulnerable a ataques como la suplantación de DNS / envenenamiento de caché. Asegurar la búsqueda de DNS es factible mediante el uso de DNSSEC, que emplea la criptografía de clave pública.
En este capítulo, analizamos los mecanismos utilizados en la capa de aplicación para proporcionar seguridad de red para la comunicación de un extremo a otro.
La seguridad de la red implica proteger los datos contra ataques mientras se encuentran en tránsito en una red. Para lograr este objetivo, se han diseñado muchos protocolos de seguridad en tiempo real. Existen estándares populares para protocolos de seguridad de red en tiempo real, como S / MIME, SSL / TLS, SSH e IPsec. Como se mencionó anteriormente, estos protocolos funcionan en diferentes capas del modelo de red.
En el último capítulo, discutimos algunos protocolos populares que están diseñados para proporcionar seguridad en la capa de aplicación. En este capítulo, analizaremos el proceso para lograr la seguridad de la red en la capa de transporte y los protocolos de seguridad asociados.
Para la red basada en el protocolo TCP / IP, las capas físicas y de enlace de datos se implementan típicamente en el terminal de usuario y el hardware de la tarjeta de red. Las capas TCP e IP se implementan en el sistema operativo. Todo lo que esté por encima de TCP / IP se implementa como proceso de usuario.
Necesidad de seguridad en la capa de transporte
Analicemos una transacción comercial típica basada en Internet.
Bob visita el sitio web de Alice para vender productos. En un formulario en el sitio web, Bob ingresa el tipo de bien y la cantidad deseada, su dirección y los detalles de la tarjeta de pago. Bob hace clic en Enviar y espera la entrega de los productos con un débito del importe del precio de su cuenta. Todo esto suena bien, pero en ausencia de seguridad de red, Bob podría tener algunas sorpresas.
Si las transacciones no utilizaban la confidencialidad (cifrado), un atacante podría obtener la información de su tarjeta de pago. El atacante puede realizar compras a expensas de Bob.
Si no se utiliza una medida de integridad de los datos, un atacante podría modificar el pedido de Bob en términos de tipo o cantidad de bienes.
Por último, si no se utiliza la autenticación del servidor, un servidor podría mostrar el famoso logotipo de Alice, pero el sitio podría ser un sitio malicioso mantenido por un atacante, que se hace pasar por Alice. Después de recibir la orden de Bob, podría tomar el dinero de Bob y huir. O podría llevar a cabo un robo de identidad recopilando el nombre de Bob y los datos de la tarjeta de crédito.
Los esquemas de seguridad de la capa de transporte pueden abordar estos problemas mejorando la comunicación de red basada en TCP / IP con confidencialidad, integridad de datos, autenticación de servidor y autenticación de cliente.
La seguridad en esta capa se usa principalmente para asegurar transacciones web basadas en HTTP en una red. Sin embargo, puede ser utilizado por cualquier aplicación que se ejecute sobre TCP.
Filosofía del diseño TLS
Los protocolos Transport Layer Security (TLS) operan por encima de la capa TCP. El diseño de estos protocolos utiliza interfaces de programa de aplicación (API) populares para TCP, llamadas "sockets" para la interfaz con la capa TCP.
Las aplicaciones ahora están interconectadas a la capa de seguridad de transporte en lugar de a TCP directamente. La capa de seguridad de transporte proporciona una API simple con sockets, que es similar y análoga a la API de TCP.
En el diagrama anterior, aunque TLS reside técnicamente entre la aplicación y la capa de transporte, desde la perspectiva común es un protocolo de transporte que actúa como una capa TCP mejorada con servicios de seguridad.
TLS está diseñado para operar a través de TCP, el protocolo confiable de capa 4 (no en el protocolo UDP), para simplificar el diseño de TLS, porque no tiene que preocuparse por el 'tiempo de espera' y la 'retransmisión de datos perdidos'. La capa de TCP continúa haciendo eso como de costumbre, lo que satisface la necesidad de TLS.
¿Por qué TLS es popular?
La razón de la popularidad del uso de una seguridad en la capa de transporte es la simplicidad. El diseño e implementación de la seguridad en esta capa no requiere ningún cambio en los protocolos TCP / IP que se implementan en un sistema operativo. Solo los procesos y aplicaciones del usuario deben diseñarse / modificarse, lo que es menos complejo.
Capa de conexión segura (SSL)
En esta sección, discutimos la familia de protocolos diseñados para TLS. La familia incluye SSL versiones 2 y 3 y protocolo TLS. SSLv2 ahora ha sido reemplazado por SSLv3, por lo que nos centraremos en SSL v3 y TLS.
Breve historia de SSL
En el año 1995, Netscape desarrolló SSLv2 y se usó en Netscape Navigator 1.1. La versión 1 de SSL nunca se publicó ni se utilizó. Más tarde, Microsoft mejoró SSLv2 e introdujo otro protocolo similar llamado Tecnología de comunicaciones privadas (PCT).
Netscape mejoró sustancialmente SSLv2 en varios problemas de seguridad e implementó SSLv3 en 1999. El Grupo de Trabajo de Ingeniería de Internet (IETF) posteriormente introdujo un protocolo TLS (Seguridad de la Capa de Transporte) similar como estándar abierto. El protocolo TLS no es interoperable con SSLv3.
TLS modificó los algoritmos criptográficos para la expansión y autenticación de claves. Además, TLS sugirió el uso de criptografía abierta Diffie-Hellman (DH) y Digital Signature Standard (DSS) en lugar de la criptografía RSA patentada utilizada en SSL. Pero debido a la expiración de la patente RSA en 2000, no existían razones sólidas para que los usuarios cambiaran de SSLv3 ampliamente implementado a TLS.
Características destacadas de SSL
Las características más destacadas del protocolo SSL son las siguientes:
SSL proporciona seguridad en la conexión de red a través de:
Confidentiality - La información se intercambia de forma cifrada.
Authentication- Las entidades de comunicación se identifican mediante el uso de certificados digitales. La autenticación del servidor web es obligatoria, mientras que la autenticación del cliente es opcional.
Reliability - Mantiene controles de integridad de mensajes.
SSL está disponible para todas las aplicaciones TCP.
Compatible con casi todos los navegadores web.
Proporciona facilidad para hacer negocios con nuevas entidades en línea.
Desarrollado principalmente para comercio electrónico web.
Arquitectura de SSL
SSL es específico de TCP y no funciona con UDP. SSL proporciona una interfaz de programación de aplicaciones (API) a las aplicaciones. Las bibliotecas / clases C y Java SSL están disponibles.
El protocolo SSL está diseñado para interactuar entre la aplicación y la capa de transporte, como se muestra en la siguiente imagen:
SSL en sí no es un protocolo de una sola capa como se muestra en la imagen; de hecho, está compuesto por dos subcapas.
La subcapa inferior se compone de un componente del protocolo SSL llamado Protocolo de registro SSL. Este componente proporciona servicios de integridad y confidencialidad.
La subcapa superior consta de tres componentes de protocolo relacionados con SSL y un protocolo de aplicación. El componente de la aplicación proporciona el servicio de transferencia de información entre las interacciones cliente / servidor. Técnicamente, también puede operar sobre la capa SSL. Tres componentes del protocolo relacionados con SSL son:
- Protocolo de protocolo de enlace SSL
- Cambiar el protocolo de especificación de cifrado
- Protocolo de alerta.
Estos tres protocolos gestionan todos los intercambios de mensajes SSL y se describen más adelante en esta sección.
Funciones de los componentes del protocolo SSL
Los cuatro subcomponentes del protocolo SSL manejan varias tareas para una comunicación segura entre la máquina cliente y el servidor.
Protocolo de registro
La capa de registro formatea los mensajes de protocolo de la capa superior.
Fragmenta los datos en bloques manejables (longitud máxima de 16 KB). Opcionalmente, comprime los datos.
Cifra los datos.
Proporciona un encabezado para cada mensaje y un hash (código de autenticación de mensaje (MAC)) al final.
Entrega los bloques formateados a la capa TCP para su transmisión.
Protocolo de protocolo de enlace SSL
Es la parte más compleja de SSL. Se invoca antes de que se transmitan los datos de la aplicación. Crea sesiones SSL entre el cliente y el servidor.
El establecimiento de la sesión implica la autenticación del servidor, la negociación de claves y algoritmos, el establecimiento de claves y la autenticación del cliente (opcional).
Una sesión se identifica mediante un conjunto único de parámetros de seguridad criptográficos.
Varias conexiones TCP seguras entre un cliente y un servidor pueden compartir la misma sesión.
Acciones de protocolo de handshake a través de cuatro fases. Estos se discuten en la sección siguiente.
Protocolo ChangeCipherSpec
La parte más simple del protocolo SSL. Se compone de un único mensaje intercambiado entre dos entidades comunicantes, el cliente y el servidor.
A medida que cada entidad envía el mensaje ChangeCipherSpec, cambia su lado de la conexión al estado seguro según lo acordado.
El estado pendiente de los parámetros de cifrado se copia en el estado actual.
El intercambio de este mensaje indica que todos los intercambios de datos futuros están cifrados y la integridad está protegida.
Protocolo de alerta SSL
Este protocolo se utiliza para informar errores, como mensaje inesperado, MAC de registro incorrecto, negociación de parámetros de seguridad fallida, etc.
También se utiliza para otros fines, como notificar el cierre de la conexión TCP, notificar la recepción de un certificado incorrecto o desconocido, etc.
Establecimiento de sesión SSL
Como se mencionó anteriormente, hay cuatro fases para el establecimiento de una sesión SSL. Estos se manejan principalmente mediante el protocolo SSL Handshake.
Phase 1 - Establecimiento de capacidades de seguridad.
Esta fase comprende el intercambio de dos mensajes: Client_hello y Server_hello .
Client_hello contiene una lista de algoritmos criptográficos admitidos por el cliente, en orden decreciente de preferencia.
Server_hello contiene la especificación de cifrado seleccionada (CipherSpec) y un nuevo session_id .
El CipherSpec contiene campos como -
Algoritmo de cifrado (DES, 3DES, RC2 y RC4)
Algoritmo MAC (basado en MD5, SHA-1)
Algoritmo de clave pública (RSA)
Ambos mensajes tienen "nonce" para evitar el ataque de repetición.
Phase 2 - Autenticación e intercambio de claves del servidor.
El servidor envía el certificado. El software del cliente viene configurado con claves públicas de varias organizaciones "confiables" (CA) para verificar el certificado.
El servidor envía el conjunto de cifrado elegido.
El servidor puede solicitar un certificado de cliente. Normalmente no se hace.
El servidor indica el final de Server_hello .
Phase 3 - Autenticación de clientes e intercambio de claves.
El cliente envía el certificado, solo si lo solicita el servidor.
También envía el Pre-master Secret (PMS) cifrado con la clave pública del servidor.
El cliente también envía el mensaje Certificate_verify si él envía el certificado para demostrar que tiene la clave privada asociada con este certificado. Básicamente, el cliente firma un hash de los mensajes anteriores.
Phase 4 - Terminar.
El cliente y el servidor se envían mensajes Change_cipher_spec entre sí para hacer que el estado de cifrado pendiente se copie al estado actual.
A partir de ahora, todos los datos están cifrados y protegidos por integridad.
El mensaje "Finalizado" de cada extremo verifica que el intercambio de claves y los procesos de autenticación se hayan realizado correctamente.
Las cuatro fases, discutidas anteriormente, ocurren dentro del establecimiento de la sesión TCP. El establecimiento de la sesión SSL comienza después de TCP SYN / SYNACK y finaliza antes de TCP Fin.
Reanudación de una sesión desconectada
Es posible reanudar una sesión desconectada (a través de un mensaje de alerta ), si el cliente envía un hello_request al servidor con la información de session_id cifrada .
Luego, el servidor determina si el session_id es válido. Si está validado, intercambia ChangeCipherSpec y mensajes terminados con el cliente y reanuda las comunicaciones seguras.
Esto evita volver a calcular los parámetros de cifrado de la sesión y ahorra computación en el servidor y en el cliente.
Claves de sesión SSL
Hemos visto que durante la Fase 3 del establecimiento de la sesión SSL, el cliente envía un secreto pre-maestro al servidor encriptado usando la clave pública del servidor. El secreto maestro y varias claves de sesión se generan de la siguiente manera:
El secreto maestro se genera (a través del generador de números pseudoaleatorios) usando -
El secreto del pre-maestro.
Dos nonces (RA y RB) intercambiados en los mensajes client_hello y server_hello.
A continuación, se derivan seis valores secretos de este secreto maestro como:
Clave secreta utilizada con MAC (para datos enviados por servidor)
Clave secreta utilizada con MAC (para datos enviados por el cliente)
Clave secreta e IV utilizados para el cifrado (por servidor)
Clave secreta e IV utilizados para el cifrado (por cliente)
Protocolo TLS
Para proporcionar un estándar de Internet abierto de SSL, IETF lanzó el protocolo Transport Layer Security (TLS) en enero de 1999. TLS se define como un estándar de Internet propuesto en RFC 5246.
Características sobresalientes
El protocolo TLS tiene los mismos objetivos que SSL.
Permite que las aplicaciones cliente / servidor se comuniquen de manera segura mediante la autenticación, evitando escuchas y resistiendo la modificación de mensajes.
El protocolo TLS se encuentra por encima de la capa TCP de transporte orientada a la conexión confiable en la pila de capas de red.
La arquitectura del protocolo TLS es similar al protocolo SSLv3. Tiene dos subprotocolos: el protocolo TLS Record y el protocolo TLS Handshake.
Aunque los protocolos SSLv3 y TLS tienen una arquitectura similar, se realizaron varios cambios en la arquitectura y el funcionamiento, especialmente para el protocolo de reconocimiento.
Comparación de protocolos TLS y SSL
Existen ocho diferencias principales entre los protocolos TLS y SSLv3. Estos son los siguientes:
Protocol Version - El encabezado del segmento del protocolo TLS lleva el número de versión 3.1 para diferenciar entre el número 3 transportado por el encabezado del segmento del protocolo SSL.
Message Authentication- TLS emplea un código de autenticación de mensajes hash con clave (H-MAC). El beneficio es que H-MAC opera con cualquier función hash, no solo MD5 o SHA, como lo establece explícitamente el protocolo SSL.
Session Key Generation - Existen dos diferencias entre el protocolo TLS y SSL para la generación de material clave.
El método de cálculo de secretos maestros y pre-maestros es similar. Pero en el protocolo TLS, el cálculo del secreto maestro usa el estándar HMAC y la salida de función pseudoaleatoria (PRF) en lugar de MAC ad-hoc.
El algoritmo para calcular las claves de sesión y los valores de inicio (IV) es diferente en TLS que en el protocolo SSL.
Mensaje de protocolo de alerta -
El protocolo TLS admite todos los mensajes utilizados por el protocolo de alerta de SSL, excepto que ningún mensaje de alerta de certificado se vuelve redundante. El cliente envía un certificado vacío en caso de que no se requiera la autenticación del cliente.
Muchos mensajes de alerta adicionales se incluyen en el protocolo TLS para otras condiciones de error como record_overflow, decode_error, etc.
Supported Cipher Suites- SSL admite conjuntos de cifrado RSA, Diffie-Hellman y Fortezza. El protocolo TLS admite todos los trajes excepto Fortezza.
Client Certificate Types- TLS define los tipos de certificados que se solicitarán en un mensaje de solicitud de certificado . SSLv3 es compatible con todos estos. Además, SSL admite otros tipos de certificados como Fortezza.
CertificateVerify y mensajes terminados -
En SSL, se utiliza un procedimiento de mensaje complejo para el mensaje certificate_verify . Con TLS, la información verificada está contenida en los propios mensajes de protocolo de enlace, evitando así este complejo procedimiento.
El mensaje terminado se calcula de diferentes maneras en TLS y SSLv3.
Padding of Data- En el protocolo SSL, el relleno agregado a los datos del usuario antes del cifrado es la cantidad mínima requerida para que el tamaño total de los datos sea igual a un múltiplo de la longitud del bloque del cifrado. En TLS, el relleno puede ser cualquier cantidad que dé como resultado un tamaño de datos que sea un múltiplo de la longitud del bloque de cifrado, hasta un máximo de 255 bytes.
Las diferencias anteriores entre los protocolos TLS y SSLv3 se resumen en la siguiente tabla.
Navegación segura: HTTPS
En esta sección, analizaremos el uso del protocolo SSL / TLS para realizar una navegación web segura.
HTTPS definido
El protocolo Hyper Text Transfer Protocol (HTTP) se utiliza para la navegación web. La función de HTTPS es similar a HTTP. La única diferencia es que HTTPS proporciona una navegación web "segura". HTTPS significa HTTP sobre SSL. Este protocolo se utiliza para proporcionar la conexión encriptada y autenticada entre el navegador web del cliente y el servidor del sitio web.
La navegación segura a través de HTTPS garantiza que el siguiente contenido esté encriptado:
- URL de la página web solicitada.
- Contenidos de la página web proporcionados por el servidor al cliente usuario.
- Contenido de los formularios cumplimentados por el usuario.
- Cookies establecidas en ambas direcciones.
Trabajo de HTTPS
El protocolo de aplicación HTTPS normalmente utiliza uno de los dos protocolos de seguridad de la capa de transporte más populares: SSL o TLS. El proceso de navegación segura se describe en los siguientes puntos.
Solicita una conexión HTTPS a una página web ingresando https: // seguido de URL en la barra de direcciones del navegador.
El navegador web inicia una conexión con el servidor web. El uso de https invoca el uso del protocolo SSL.
Una aplicación, navegador en este caso, usa el puerto del sistema 443 en lugar del puerto 80 (usado en el caso de http).
El protocolo SSL pasa por un protocolo de reconocimiento para establecer una sesión segura como se discutió en secciones anteriores.
El sitio web envía inicialmente su certificado digital SSL a su navegador. Tras la verificación del certificado, el protocolo de enlace SSL avanza para intercambiar los secretos compartidos de la sesión.
Cuando el servidor utiliza un certificado digital SSL de confianza, los usuarios pueden ver un icono de candado en la barra de direcciones del navegador. Cuando se instala un certificado de validación extendida en un sitio web, la barra de direcciones se vuelve verde.
Una vez establecida, esta sesión consta de muchas conexiones seguras entre el servidor web y el navegador.
Uso de HTTPS
El uso de HTTPS proporciona al usuario confidencialidad, autenticación del servidor e integridad del mensaje. Permite la conducción segura del comercio electrónico en Internet.
Evita que los datos sean escuchados y niega el robo de identidad, que son ataques comunes en HTTP.
Los navegadores y servidores web actuales están equipados con soporte HTTPS. Sin embargo, el uso de HTTPS sobre HTTP requiere más potencia informática en el cliente y en el servidor para llevar a cabo el cifrado y el protocolo de enlace SSL.
Protocolo de shell seguro (SSH)
Las características más destacadas de SSH son las siguientes:
SSH es un protocolo de red que se ejecuta sobre la capa TCP / IP. Está diseñado para reemplazar TELNET, que proporcionaba medios no seguros para la instalación de inicio de sesión remoto.
SSH proporciona una comunicación cliente / servidor segura y se puede utilizar para tareas como la transferencia de archivos y el correo electrónico.
SSH2 es un protocolo predominante que proporciona una seguridad de comunicación de red mejorada sobre la versión anterior SSH1.
Definición de SSH
SSH está organizado en tres subprotocolos.
Transport Layer Protocol- Esta parte del protocolo SSH proporciona confidencialidad de los datos, autenticación del servidor (host) e integridad de los datos. Opcionalmente, también puede proporcionar compresión de datos.
Server Authentication- Las claves de host son asimétricas como las claves públicas / privadas. Un servidor utiliza una clave pública para demostrar su identidad a un cliente. El cliente verifica que el servidor contactado sea un host "conocido" de la base de datos que mantiene. Una vez que el servidor está autenticado, se generan las claves de sesión.
Session Key Establishment- Después de la autenticación, el servidor y el cliente acuerdan el cifrado que se utilizará. Las claves de sesión las generan tanto el cliente como el servidor. Las claves de sesión se generan antes de la autenticación del usuario para que los nombres de usuario y las contraseñas se puedan enviar cifrados. Estas teclas generalmente se reemplazan a intervalos regulares (digamos, cada hora) durante la sesión y se destruyen inmediatamente después de su uso.
Data Integrity- SSH utiliza algoritmos de código de autenticación de mensajes (MAC) para verificar la integridad de los datos. Es una mejora sobre el CRC de 32 bits utilizado por SSH1.
User Authentication Protocol- Esta parte de SSH autentica al usuario en el servidor. El servidor verifica que el acceso se otorgue solo a los usuarios previstos. Actualmente se utilizan muchos métodos de autenticación, como contraseñas escritas, Kerberos, autenticación de clave pública, etc.
Connection Protocol - Esto proporciona múltiples canales lógicos a través de una única conexión SSH subyacente.
Servicios SSH
SSH proporciona tres servicios principales que permiten la provisión de muchas soluciones seguras. Estos servicios se describen brevemente a continuación:
Secure Command-Shell (Remote Logon)- Permite al usuario editar archivos, ver el contenido de directorios y acceder a aplicaciones en el dispositivo conectado. Los administradores de sistemas pueden iniciar / ver / detener servicios y procesos de forma remota, crear cuentas de usuario y cambiar los permisos de archivos / directorios, etc. Todas las tareas que son factibles en el símbolo del sistema de una máquina ahora se pueden realizar de forma segura desde la máquina remota mediante el inicio de sesión remoto seguro.
Secure File Transfer- El Protocolo de transferencia de archivos SSH (SFTP) está diseñado como una extensión de SSH-2 para la transferencia segura de archivos. En esencia, es un protocolo separado en capas sobre el protocolo Secure Shell para manejar transferencias de archivos. SFTP cifra tanto el nombre de usuario / contraseña como los datos del archivo que se transfieren. Utiliza el mismo puerto que el servidor Secure Shell, es decir, el puerto del sistema no 22.
Port Forwarding (Tunneling)- Permite proteger los datos de aplicaciones basadas en TCP / IP no seguras. Una vez que se ha configurado el reenvío de puertos, Secure Shell redirige el tráfico de un programa (generalmente un cliente) y lo envía a través del túnel cifrado al programa del otro lado (generalmente un servidor). Varias aplicaciones pueden transmitir datos a través de un único canal seguro multiplexado, lo que elimina la necesidad de abrir muchos puertos en un firewall o enrutador.
Beneficios y limitaciones
Los beneficios y limitaciones de emplear la seguridad de las comunicaciones en la capa de transporte son los siguientes:
Beneficios
Transport Layer Security es transparente para las aplicaciones.
El servidor está autenticado.
Los encabezados de la capa de aplicación están ocultos.
Es más detallado que los mecanismos de seguridad en la capa 3 (IPsec), ya que funciona a nivel de conexión de transporte.
Limitaciones
Aplicable solo a aplicaciones basadas en TCP (no UDP).
Los encabezados TCP / IP están claros.
Adecuado para la comunicación directa entre el cliente y el servidor. No se ocupa de aplicaciones seguras que utilizan una cadena de servidores (por ejemplo, correo electrónico)
SSL no proporciona no repudio ya que la autenticación del cliente es opcional.
Si es necesario, la autenticación del cliente debe implementarse por encima de SSL.
Resumen
En la última década ha surgido un gran número de aplicaciones web en Internet. Muchos portales de gobierno electrónico y comercio electrónico se han conectado. Estas aplicaciones requieren que la sesión entre el servidor y el cliente sea segura, proporcionando confidencialidad, autenticación e integridad de las sesiones.
Una forma de mitigar un posible ataque durante la sesión de un usuario es utilizar un protocolo de comunicación seguro. En este capítulo se analizan dos de estos protocolos de comunicación, Secure Sockets Layer (SSL) y Transport Layer Security (TLS). Ambos protocolos funcionan en la capa de transporte.
Otro protocolo de capa de transporte, Secure Shell (SSH), diseñado para reemplazar TELNET, proporciona medios seguros para la instalación de inicio de sesión remoto. Es capaz de proporcionar varios servicios como Secure Command Shell y SFTP.
El empleo de la seguridad de la capa de transporte tiene muchos beneficios. Sin embargo, el protocolo de seguridad diseñado en estas capas solo se puede utilizar con TCP. No brindan seguridad para las comunicaciones implementadas mediante UDP.
Los controles de seguridad de la capa de red se han utilizado con frecuencia para proteger las comunicaciones, particularmente en redes compartidas como Internet porque pueden brindar protección para muchas aplicaciones a la vez sin modificarlas.
En los capítulos anteriores, discutimos que muchos protocolos de seguridad en tiempo real han evolucionado para la seguridad de la red, garantizando principios básicos de seguridad como privacidad, autenticación de origen, integridad de mensajes y no repudio.
La mayoría de estos protocolos permanecieron enfocados en las capas superiores de la pila de protocolos OSI, para compensar la falta de seguridad inherente en el Protocolo de Internet estándar. Aunque valiosos, estos métodos no se pueden generalizar fácilmente para su uso con cualquier aplicación. Por ejemplo, SSL se desarrolla específicamente para proteger aplicaciones como HTTP o FTP. Pero hay varias otras aplicaciones que también necesitan comunicaciones seguras.
Esta necesidad dio lugar a desarrollar una solución de seguridad en la capa IP para que todos los protocolos de capa superior pudieran aprovecharla. En 1992, el Grupo de trabajo de ingeniería de Internet (IETF) comenzó a definir un 'IPsec' estándar.
En este capítulo, analizaremos cómo se logra la seguridad en la capa de red utilizando este conjunto muy popular de protocolo IPsec.
Seguridad en la capa de red
Cualquier esquema que se desarrolle para proporcionar seguridad de red debe implementarse en alguna capa de la pila de protocolos, como se muestra en el diagrama a continuación:
Capa | Protocolos de comunicación | Protocolos de seguridad |
---|---|---|
Capa de aplicación | HTTP FTP SMTP | PGP. S / MIME, HTTPS |
Capa de transporte | TCP / UDP | SSL, TLS, SSH |
Capa de red | IP | IPsec |
El marco popular desarrollado para garantizar la seguridad en la capa de red es Internet Protocol Security (IPsec).
Características de IPsec
IPsec no está diseñado para funcionar solo con TCP como protocolo de transporte. Funciona con UDP, así como con cualquier otro protocolo por encima de IP como ICMP, OSPF, etc.
IPsec protege todo el paquete presentado a la capa IP, incluidos los encabezados de capa superior.
Dado que los encabezados de capa superior están ocultos y llevan el número de puerto, el análisis del tráfico es más difícil.
IPsec funciona de una entidad de red a otra entidad de red, no de un proceso de solicitud a otro. Por lo tanto, la seguridad se puede adoptar sin necesidad de realizar cambios en las aplicaciones / computadoras de los usuarios individuales.
IPsec, que se utiliza ampliamente para proporcionar comunicaciones seguras entre entidades de red, también puede proporcionar seguridad de host a host.
El uso más común de IPsec es proporcionar una red privada virtual (VPN), ya sea entre dos ubicaciones (puerta de enlace a puerta de enlace) o entre un usuario remoto y una red empresarial (de host a puerta de enlace).
Funciones de seguridad
Las importantes funciones de seguridad proporcionadas por IPsec son las siguientes:
Confidencialidad
Permite a los nodos de comunicación cifrar mensajes.
Evita las escuchas de terceros.
Autenticación de origen e integridad de datos.
Proporciona garantía de que un paquete recibido fue realmente transmitido por la parte identificada como origen en el encabezado del paquete.
Confirma que el paquete no ha sido alterado o de otra manera.
Gestión de claves.
Permite el intercambio seguro de llaves.
Protección contra ciertos tipos de ataques de seguridad, como ataques de repetición.
Red privada virtual
Idealmente, cualquier institución querría tener su propia red privada de comunicación para garantizar la seguridad. Sin embargo, puede resultar muy costoso establecer y mantener dicha red privada en un área geográficamente dispersa. Requeriría administrar una infraestructura compleja de enlaces de comunicación, enrutadores, DNS, etc.
IPsec proporciona un mecanismo sencillo para implementar una red privada virtual (VPN) para tales instituciones. La tecnología VPN permite que el tráfico entre oficinas de la institución se envíe a través de la Internet pública cifrando el tráfico antes de ingresar a la Internet pública y separándolo lógicamente del resto del tráfico. El funcionamiento simplificado de VPN se muestra en el siguiente diagrama:
Descripción general de IPsec
IPsec es un marco / conjunto de protocolos para proporcionar seguridad en la capa IP.
Origen
A principios de la década de 1990, pocas instituciones utilizaban Internet, principalmente con fines académicos. Pero en décadas posteriores, el crecimiento de Internet se volvió exponencial debido a la expansión de la red y a varias organizaciones que la utilizan para la comunicación y otros fines.
Con el crecimiento masivo de Internet, combinado con las debilidades de seguridad inherentes al protocolo TCP / IP, se sintió la necesidad de una tecnología que pueda proporcionar seguridad de red en Internet. La Junta de Arquitectura de Internet (IAB) publicó un informe titulado "Seguridad en la arquitectura de Internet" en 1994. En él se identificaban las áreas clave para los mecanismos de seguridad.
La IAB incluyó autenticación y cifrado como características de seguridad esenciales en IPv6, la IP de próxima generación. Afortunadamente, estas capacidades de seguridad se definieron de manera que se puedan implementar tanto con el IPv4 actual como con el IPv6 futurista.
Marco de seguridad, IPsec se ha definido en varias 'Solicitudes de comentarios' (RFC). Algunas RFC especifican algunas partes del protocolo, mientras que otras abordan la solución como un todo.
Operaciones dentro de IPsec
Se puede considerar que la suite IPsec tiene dos operaciones separadas, cuando se realizan al unísono, proporcionando un conjunto completo de servicios de seguridad. Estas dos operaciones son la comunicación IPsec y el intercambio de claves de Internet.
Comunicación IPsec
Suele estar asociado con la funcionalidad estándar de IPsec. Implica encapsulación, cifrado y hash de los datagramas IP y el manejo de todos los procesos de paquetes.
Es responsable de gestionar la comunicación de acuerdo con las Asociaciones de Seguridad (SA) disponibles establecidas entre las partes comunicantes.
Utiliza protocolos de seguridad como Authentication Header (AH) y Encapsulated SP (ESP).
La comunicación IPsec no está involucrada en la creación de claves ni en su administración.
La operación de comunicación IPsec en sí misma se conoce comúnmente como IPsec.
Intercambio de claves de Internet (IKE)
IKE es el protocolo de gestión automática de claves utilizado para IPsec.
Técnicamente, la administración de claves no es esencial para la comunicación IPsec y las claves se pueden administrar manualmente. Sin embargo, la administración manual de claves no es deseable para redes grandes.
IKE es responsable de la creación de claves para IPsec y de proporcionar autenticación durante el proceso de establecimiento de claves. Aunque IPsec se puede usar para cualquier otro protocolo de administración de claves, IKE se usa de manera predeterminada.
IKE define dos protocolos (Oakley y SKEME) que se utilizarán con el marco de gestión de claves ya definido Protocolo de gestión de claves de la Asociación de seguridad de Internet (ISAKMP).
ISAKMP no es específico de IPsec, pero proporciona el marco para crear SA para cualquier protocolo.
Este capítulo analiza principalmente la comunicación IPsec y el protocolo asociado empleado para lograr la seguridad.
Modos de comunicación IPsec
La comunicación IPsec tiene dos modos de funcionamiento; modos de transporte y túnel. Estos modos se pueden usar en combinación o individualmente dependiendo del tipo de comunicación deseada.
Modo de transporte
IPsec no encapsula un paquete recibido de la capa superior.
El encabezado de IP original se mantiene y los datos se reenvían según los atributos originales establecidos por el protocolo de capa superior.
El siguiente diagrama muestra el flujo de datos en la pila de protocolos.
La limitación del modo de transporte es que no se pueden proporcionar servicios de pasarela. Está reservado para comunicaciones punto a punto como se muestra en la siguiente imagen.
Modo túnel
Este modo de IPsec proporciona servicios de encapsulación junto con otros servicios de seguridad.
En las operaciones en modo túnel, todo el paquete de la capa superior se encapsula antes de aplicar el protocolo de seguridad. Se agrega un nuevo encabezado IP.
El siguiente diagrama muestra el flujo de datos en la pila de protocolos.
El modo de túnel generalmente se asocia con actividades de puerta de enlace. La encapsulación brinda la capacidad de enviar varias sesiones a través de una única puerta de enlace.
La comunicación típica en modo túnel es la que se muestra en el siguiente diagrama.
En lo que respecta a los puntos finales, tienen una conexión de capa de transporte directa. El datagrama de un sistema enviado a la puerta de enlace se encapsula y luego se reenvía a la puerta de enlace remota. La puerta de enlace remota asociada desencapsula los datos y los reenvía al punto final de destino en la red interna.
Con IPsec, el modo de tunelización también se puede establecer entre la puerta de enlace y el sistema final individual.
Protocolos IPsec
IPsec utiliza los protocolos de seguridad para proporcionar los servicios de seguridad deseados. Estos protocolos son el corazón de las operaciones de IPsec y todo lo demás está diseñado para admitir estos protocolos en IPsec.
Las asociaciones de seguridad entre las entidades comunicantes se establecen y mantienen mediante el protocolo de seguridad utilizado.
Hay dos protocolos de seguridad definidos por IPsec: Encabezado de autenticación (AH) y Carga útil de seguridad encapsulada (ESP).
Encabezado de autenticación
El protocolo AH proporciona un servicio de integridad de datos y autenticación de origen. Opcionalmente, se adapta a la resistencia a la reproducción de mensajes. Sin embargo, no proporciona ninguna forma de confidencialidad.
AH es un protocolo que proporciona autenticación de todo o parte del contenido de un datagrama mediante la adición de un encabezado. El encabezado se calcula en función de los valores del datagrama. Las partes del datagrama que se utilizan para el cálculo y dónde colocar el encabezado dependen del modo de cooperación (túnel o transporte).
El funcionamiento del protocolo AH es sorprendentemente sencillo. Puede considerarse similar a los algoritmos utilizados para calcular sumas de comprobación o realizar comprobaciones CRC para la detección de errores.
El concepto detrás de AH es el mismo, excepto que en lugar de usar un algoritmo simple, AH usa un algoritmo de hash especial y una clave secreta conocida solo por las partes que se comunican. Se establece una asociación de seguridad entre dos dispositivos que especifica estos detalles.
El proceso de AH pasa por las siguientes fases.
Cuando se recibe un paquete IP de la pila de protocolo superior, IPsec determina la Asociación de Seguridad (SA) asociada a partir de la información disponible en el paquete; por ejemplo, dirección IP (origen y destino).
Desde SA, una vez que se identifica que el protocolo de seguridad es AH, se calculan los parámetros del encabezado AH. El encabezado AH consta de los siguientes parámetros:
El campo de encabezado especifica el protocolo del paquete que sigue al encabezado AH. El índice de parámetro de secuencia (SPI) se obtiene de SA existente entre las partes comunicantes.
El número de secuencia se calcula e inserta. Estos números proporcionan capacidad opcional a AH para resistir el ataque de repetición.
Los datos de autenticación se calculan de forma diferente según el modo de comunicación.
En el modo de transporte, el cálculo de los datos de autenticación y el ensamblaje del paquete IP final para la transmisión se muestra en el siguiente diagrama. En el encabezado de IP original, el cambio se realiza solo en el número de protocolo como 51 para la aplicación indicada de AH.
En el modo Túnel, el proceso anterior tiene lugar como se muestra en el siguiente diagrama.
Protocolo de seguridad de encapsulación (ESP)
ESP proporciona servicios de seguridad como confidencialidad, integridad, autenticación de origen y resistencia a la reproducción opcional. El conjunto de servicios proporcionados depende de las opciones seleccionadas en el momento del establecimiento de la Asociación de seguridad (SA).
En ESP, los algoritmos utilizados para el cifrado y la generación de autenticadores están determinados por los atributos utilizados para crear el SA.
El proceso de ESP es el siguiente. Los dos primeros pasos son similares al proceso de AH como se indicó anteriormente.
Una vez que se determina que ESP está involucrado, se calculan los campos del paquete ESP. La disposición del campo ESP se muestra en el siguiente diagrama.
El proceso de cifrado y autenticación en modo transporte se muestra en el siguiente diagrama.
En el caso del modo Túnel, el proceso de encriptación y autenticación es como se muestra en el siguiente diagrama.
Aunque la autenticación y la confidencialidad son los servicios principales que proporciona ESP, ambos son opcionales. Técnicamente, podemos usar el cifrado NULL sin autenticación. Sin embargo, en la práctica, uno de los dos debe implementarse para usar ESP de manera efectiva.
El concepto básico es usar ESP cuando se desea autenticación y cifrado, y usar AH cuando se desea autenticación extendida sin cifrado.
Asociaciones de seguridad en IPsec
Security Association (SA) es la base de una comunicación IPsec. Las características de SA son:
Antes de enviar datos, se establece una conexión virtual entre la entidad emisora y la entidad receptora, denominada “Asociación de seguridad (SA)”.
IPsec ofrece muchas opciones para realizar el cifrado y la autenticación de la red. Cada conexión IPsec puede proporcionar cifrado, integridad, autenticidad o los tres servicios. Cuando se determina el servicio de seguridad, las dos entidades pares IPsec deben determinar exactamente qué algoritmos utilizar (por ejemplo, DES o 3DES para el cifrado; MD5 o SHA-1 para la integridad). Después de decidir los algoritmos, los dos dispositivos deben compartir claves de sesión.
SA es un conjunto de parámetros de comunicación anteriores que proporciona una relación entre dos o más sistemas para crear una sesión IPsec.
SA es de naturaleza simple y, por lo tanto, se requieren dos SA para las comunicaciones bidireccionales.
Las SA se identifican mediante un número de índice de parámetros de seguridad (SPI) que existe en el encabezado del protocolo de seguridad.
Tanto las entidades emisoras como las receptoras mantienen información de estado sobre la SA. Es similar a los puntos finales TCP que también mantienen información de estado. IPsec está orientado a la conexión como TCP.
Parámetros de SA
Cualquier SA se identifica de forma única mediante los siguientes tres parámetros:
Índice de parámetros de seguridad (SPI).
Es un valor de 32 bits asignado a SA. Se utiliza para distinguir entre diferentes SA que terminan en el mismo destino y utilizan el mismo protocolo IPsec.
Cada paquete de IPsec lleva un encabezado que contiene un campo SPI. El SPI se proporciona para mapear el paquete entrante a una SA.
El SPI es un número aleatorio generado por el remitente para identificar la SA al destinatario.
Destination IP Address - Puede ser la dirección IP del enrutador final.
Security Protocol Identifier - Indica si la asociación es AH o ESP SA.
En el siguiente diagrama se muestra un ejemplo de SA entre dos enrutadores involucrados en la comunicación IPsec.
Bases de datos administrativas de seguridad
En IPsec, hay dos bases de datos que controlan el procesamiento del datagrama IPsec. Una es la base de datos de asociaciones de seguridad (SAD) y la otra es la base de datos de políticas de seguridad (SPD). Cada terminal de comunicación que utilice IPsec debe tener un SAD y un SPD separados lógicamente.
Base de datos de asociaciones de seguridad
En la comunicación IPsec, el punto final mantiene el estado SA en la base de datos de asociaciones de seguridad (SAD). Cada entrada de SA en la base de datos de SAD contiene nueve parámetros, como se muestra en la siguiente tabla:
No Señor. | Parámetros y descripción |
---|---|
1 | Sequence Number Counter Para comunicaciones salientes. Este es el número de secuencia de 32 bits proporcionado en los encabezados AH o ESP. |
2 | Sequence Number Overflow Counter Establece una bandera de opción para evitar más comunicaciones utilizando el SA específico |
3 | 32-bit anti-replay window Se utiliza para determinar si un paquete entrante AH o ESP es una reproducción |
4 | Lifetime of the SA Tiempo hasta que SA permanece activo |
5 | Algorithm - AH Usado en el AH y la clave asociada |
6 | Algorithm - ESP Auth Se usa en la parte de autenticación del encabezado ESP |
7 | Algorithm - ESP Encryption Utilizado en el cifrado del ESP y su información clave asociada |
8 | IPsec mode of operation Modo transporte o túnel |
9 | Path MTU(PMTU) Cualquier unidad de transmisión máxima de ruta observada (para evitar la fragmentación) |
Todas las entradas de SA en el SAD están indexadas por los tres parámetros de SA: dirección IP de destino, identificador de protocolo de seguridad y SPI.
Base de datos de políticas de seguridad
SPD se utiliza para procesar paquetes salientes. Ayuda a decidir qué entradas de SAD se deben utilizar. Si no existe ninguna entrada SAD, se utiliza SPD para crear nuevas.
Cualquier entrada de SPD contendría:
Puntero a SA activo mantenido en SAD.
Campos de selección: campo en el paquete entrante de la capa superior que se utiliza para decidir la aplicación de IPsec. Los selectores pueden incluir direcciones de origen y destino, números de puerto si es relevante, ID de aplicaciones, protocolos, etc.
Los datagramas IP salientes van desde la entrada SPD hasta la SA específica, para obtener los parámetros de codificación. El datagrama IPsec entrante llega a la SA correcta directamente usando el triple SPI / DEST IP / Protocolo, y de allí extrae la entrada SAD asociada.
SPD también puede especificar el tráfico que debe omitir IPsec. SPD puede considerarse como un filtro de paquetes donde las acciones que se deciden son la activación de procesos SA.
Resumen
IPsec es un conjunto de protocolos para proteger las conexiones de red. Es un mecanismo bastante complejo, porque en lugar de dar una definición sencilla de un algoritmo de cifrado específico y una función de autenticación, proporciona un marco que permite la implementación de cualquier cosa en la que ambos extremos de la comunicación estén de acuerdo.
El encabezado de autenticación (AH) y la carga útil de seguridad encapsulada (ESP) son los dos principales protocolos de comunicación utilizados por IPsec. Mientras que AH solo se autentica, ESP puede cifrar y autenticar los datos transmitidos a través de la conexión.
El modo de transporte proporciona una conexión segura entre dos puntos finales sin cambiar el encabezado IP. El modo túnel encapsula todo el paquete IP de carga útil. Agrega un nuevo encabezado IP. Este último se utiliza para formar una VPN tradicional, ya que proporciona un túnel virtual seguro a través de una Internet que no es de confianza.
La configuración de una conexión IPsec implica todo tipo de opciones de cifrado. La autenticación generalmente se construye sobre un hash criptográfico como MD5 o SHA-1. Los algoritmos de cifrado son DES, 3DES, Blowfish y AES, que son comunes. También son posibles otros algoritmos.
Ambos puntos finales que se comunican necesitan conocer los valores secretos utilizados en el cifrado o el hash. Las claves manuales requieren la entrada manual de los valores secretos en ambos extremos, presumiblemente transmitidos por algún mecanismo fuera de banda, e IKE (Intercambio de claves de Internet) es un mecanismo sofisticado para hacer esto en línea.
Hemos visto que el rápido crecimiento de Internet ha suscitado una gran preocupación por la seguridad de la red. Se han desarrollado varios métodos para proporcionar seguridad en la aplicación, el transporte o la capa de red de una red.
Muchas organizaciones incorporan medidas de seguridad en capas OSI superiores, desde la capa de aplicación hasta la capa de IP. Sin embargo, un área que generalmente se deja desatendida es el endurecimiento de la capa de enlace de datos. Esto puede abrir la red a una variedad de ataques y compromisos.
En este capítulo, analizaremos los problemas de seguridad en la capa de enlace de datos y los métodos para contrarrestarlos. Nuestra discusión se centrará en la red Ethernet.
Problemas de seguridad en la capa de enlace de datos
La capa de enlace de datos en las redes Ethernet es muy propensa a varios ataques. Los ataques más comunes son:
Suplantación de ARP
El Protocolo de resolución de direcciones (ARP) es un protocolo que se utiliza para asignar una dirección IP a una dirección de máquina física reconocible en la Ethernet local. Cuando una máquina host necesita encontrar una dirección física de Control de acceso a medios (MAC) para una dirección IP, transmite una solicitud ARP. El otro host que posee la dirección IP envía un mensaje de respuesta ARP con su dirección física.
Cada máquina host en la red mantiene una tabla, llamada 'caché ARP'. La tabla contiene la dirección IP y las direcciones MAC asociadas de otro host en la red.
Dado que ARP es un protocolo sin estado, cada vez que un host recibe una respuesta ARP de otro host, aunque no haya enviado una solicitud ARP, acepta esa entrada ARP y actualiza su caché ARP. El proceso de modificar la caché ARP de un host de destino con una entrada falsificada conocida como envenenamiento ARP o suplantación de ARP.
La suplantación de ARP puede permitir que un atacante se haga pasar por un host legítimo y luego intercepte tramas de datos en una red, las modifique o las detenga. A menudo, el ataque se utiliza para lanzar otros ataques, como intermediarios, secuestro de sesiones o denegación de servicio.
Inundación MAC
Cada conmutador de Ethernet tiene una tabla de memoria direccionable por contenido (CAM) que almacena las direcciones MAC, los números de puerto del conmutador y otra información. La mesa tiene un tamaño fijo. En el ataque de inundación MAC, el atacante inunda el conmutador con direcciones MAC utilizando paquetes ARP falsificados hasta que la tabla CAM está llena.
Una vez que el CAM se inunda, el conmutador entra en modo de concentrador y comienza a transmitir el tráfico que no tiene entrada CAM. El atacante que está en la misma red, ahora recibe todas las tramas que estaban destinadas solo a un host específico.
Robo de puertos
Los conmutadores Ethernet tienen la capacidad de aprender y vincular direcciones MAC a los puertos. Cuando un conmutador recibe tráfico de un puerto con una dirección de origen MAC, vincula el número de puerto y esa dirección MAC.
El ataque de robo de puertos aprovecha esta capacidad de los conmutadores. El atacante inunda el conmutador con tramas ARP falsificadas con la dirección MAC del host de destino como dirección de origen. Switch se engaña al creer que el host de destino está en el puerto, en el que en realidad está conectado un atacante.
Ahora, todos los marcos de datos destinados al host objetivo se envían al puerto del conmutador del atacante y no al host objetivo. Por lo tanto, el atacante ahora recibe todos los marcos que en realidad estaban destinados solo al host de destino.
Ataques DHCP
El Protocolo de configuración dinámica de host (DHCP) no es un protocolo de enlace de datos, pero las soluciones a los ataques DHCP también son útiles para frustrar los ataques de Capa 2.
DHCP se utiliza para asignar direcciones IP de forma dinámica a las computadoras durante un período de tiempo específico. Es posible atacar a los servidores DHCP provocando la denegación de servicio en la red o haciéndose pasar por el servidor DHCP. En un ataque de inanición de DHCP, el atacante solicita todas las direcciones DHCP disponibles. Esto da como resultado una denegación de servicio al host legítimo en la red.
En el ataque de suplantación de identidad de DHCP, el atacante puede implementar un servidor DHCP falso para proporcionar direcciones a los clientes. Aquí, el atacante puede proporcionar a las máquinas host una puerta de enlace predeterminada con las respuestas DHCP. Los marcos de datos del host ahora se guían a la puerta de enlace de enrutamiento donde el atacante puede interceptar todos los paquetes y responder a la puerta de enlace real o eliminarlos.
Otros ataques
Además de los ataques populares mencionados anteriormente, existen otros ataques como la transmisión basada en la capa 2, la denegación de servicio (DoS) y la clonación de MAC.
En el ataque de difusión, el atacante envía respuestas ARP falsificadas a los hosts de la red. Estas respuestas ARP configuran la dirección MAC de la puerta de enlace predeterminada a la dirección de transmisión. Esto hace que todo el tráfico saliente se difunda, lo que permite que el atacante lo rastree en la misma Ethernet. Este tipo de ataque también afecta la capacidad de la red.
En los ataques DoS basados en la Capa 2, el atacante actualiza las cachés ARP de los hosts en la red con direcciones MAC inexistentes. Se supone que la dirección MAC de cada tarjeta de interfaz de red en una red es única a nivel mundial. Sin embargo, se puede cambiar fácilmente habilitando la clonación de MAC. El atacante deshabilita el host objetivo a través del ataque DoS y luego usa las direcciones IP y MAC del host objetivo.
El atacante ejecuta los ataques para lanzar ataques de nivel superior con el fin de poner en peligro la seguridad de la información que viaja por la red. Puede interceptar todos los fotogramas y podría leer los datos del fotograma. El atacante puede actuar como intermediario y modificar datos o simplemente eliminar el marco que conduce a DoS. Puede secuestrar la sesión en curso entre el host de destino y otras máquinas, y comunicar información incorrecta por completo.
Protección de LAN Ethernet
Discutimos algunos ataques ampliamente conocidos en la capa de enlace de datos en la sección anterior. Se han desarrollado varios métodos para mitigar este tipo de ataques. Algunos de los métodos importantes son:
Seguridad Portuaria
Es una función de seguridad de capa 2 disponible en conmutadores Ethernet inteligentes. Implica vincular un puerto físico de un conmutador a una dirección o direcciones MAC específicas. Cualquiera puede acceder a una red insegura simplemente conectando el host a uno de los puertos de conmutador disponibles. Pero la seguridad del puerto puede asegurar el acceso a la capa 2.
De forma predeterminada, la seguridad del puerto limita el recuento de direcciones MAC de entrada a uno. Sin embargo, es posible permitir que más de un host autorizado se conecte desde ese puerto a través de la configuración. Las direcciones MAC permitidas por interfaz se pueden configurar estáticamente. Una alternativa conveniente es habilitar el aprendizaje de direcciones MAC "pegajoso" donde las direcciones MAC serán aprendidas dinámicamente por el puerto del switch hasta que se alcance el límite máximo para el puerto.
Para garantizar la seguridad, la reacción al cambio en las direcciones MAC especificadas en un puerto o el exceso de direcciones en un puerto se puede controlar de muchas formas diferentes. El puerto se puede configurar para apagar o bloquear las direcciones MAC que exceden un límite especificado. La mejor práctica recomendada es cerrar el puerto. La seguridad del puerto evita la inundación de MAC y los ataques de clonación.
Indagación DHCP
Hemos visto que la suplantación de DHCP es un ataque en el que el atacante escucha las solicitudes de DHCP del host en la red y las responde con una respuesta DHCP falsa antes de que la respuesta DHCP autorizada llegue al host.
El espionaje de DHCP puede prevenir tales ataques. El espionaje de DHCP es una función de cambio. El conmutador se puede configurar para determinar qué puertos del conmutador pueden responder a las solicitudes de DHCP. Los puertos de conmutador se identifican como puertos confiables o no confiables.
Solo los puertos que se conectan a un servidor DHCP autorizado se configuran como "confiables" y se les permite enviar todo tipo de mensajes DHCP. Todos los demás puertos del conmutador no son de confianza y solo pueden enviar solicitudes DHCP. Si se ve una respuesta DHCP en un puerto que no es de confianza, el puerto se cierra.
Prevención de la suplantación de ARP
El método de seguridad del puerto puede prevenir la inundación de MAC y los ataques de clonación. Sin embargo, no evita la suplantación de ARP. La seguridad del puerto valida la dirección de origen MAC en el encabezado de la trama, pero las tramas ARP contienen un campo de origen MAC adicional en la carga útil de datos, y el host usa este campo para completar su caché ARP. Algunos métodos para evitar la suplantación de ARP se enumeran a continuación.
Static ARP- Una de las acciones recomendadas es emplear entradas ARP estáticas en la tabla ARP del host. Las entradas de ARP estáticas son entradas permanentes en una caché de ARP. Sin embargo, este método no es práctico. Además, no permite el uso de algún Protocolo de configuración dinámica de host (DHCP), ya que se debe utilizar IP estática para todos los hosts de la red de capa 2.
Intrusion Detection System- El método de defensa es utilizar un sistema de detección de intrusiones (IDS) configurado para detectar grandes cantidades de tráfico ARP. Sin embargo, IDS tiende a informar falsos positivos.
Dynamic ARP Inspection- Este método de prevención de la suplantación de ARP es similar a la de DHCP. Utiliza puertos confiables y no confiables. Las respuestas ARP se permiten en la interfaz del conmutador solo en puertos confiables. Si llega una respuesta ARP al conmutador en un puerto que no es de confianza, el contenido del paquete de respuesta ARP se compara con la tabla de vinculación DHCP para verificar su precisión. Si la respuesta ARP no es válida, la respuesta ARP se descarta y el puerto se desactiva.
Protección del protocolo de árbol de expansión
El Protocolo de árbol de expansión (STP) es un protocolo de administración de enlaces de capa 2. El objetivo principal de STP es garantizar que no haya bucles de flujo de datos cuando la red tenga rutas redundantes. Generalmente, las rutas redundantes se crean para brindar confiabilidad a la red. Pero pueden formar bucles mortales que pueden provocar un ataque DoS en la red.
Protocolo de árbol de expansión
Para proporcionar la redundancia de ruta deseada, así como para evitar una condición de bucle, STP define un árbol que abarca todos los conmutadores de una red. STP fuerza ciertos enlaces de datos redundantes a un estado bloqueado y mantiene otros enlaces en un estado de reenvío.
Si un enlace en el estado de reenvío se rompe, STP reconfigura la red y redefine las rutas de datos activando la ruta de espera adecuada. STP se ejecuta en puentes y conmutadores implementados en la red. Todos los conmutadores intercambian información para la selección del conmutador raíz y para la posterior configuración de la red. Las unidades de datos de protocolo de puente (BPDU) transportan esta información. Mediante el intercambio de BPDU, todos los conmutadores de la red eligen un puente / conmutador raíz que se convierte en el punto focal de la red y controla los enlaces bloqueados y reenviados.
Ataques a STP
Tomando el control del puente raíz. Es uno de los tipos de ataque más disruptivos en la capa 2. De forma predeterminada, un conmutador de LAN toma cualquier BPDU enviada desde el conmutador vecino al valor nominal. Por cierto, STP es confiable, sin estado y no proporciona ningún mecanismo de autenticación sólido.
Una vez en el modo de ataque raíz, el switch atacante envía un BPDU cada 2 segundos con la misma prioridad que el puente raíz actual, pero con una dirección MAC numéricamente más baja, lo que asegura su victoria en el proceso de elección del puente raíz. El conmutador del atacante puede lanzar un ataque DoS ya sea al no reconocer correctamente otros conmutadores que provocan una inundación de BPDU o al someter a los conmutadores a un proceso excesivo de BPDUS al afirmar que es root al mismo tiempo y retraerse en rápida sucesión.
DoS usando Flood of Configuration BPDU. El switch atacante no intenta hacerse cargo de root. En cambio, genera una gran cantidad de BPDU por segundo, lo que lleva a una utilización de CPU muy alta en los conmutadores.
Prevención de ataques a STP
Afortunadamente, la contramedida a un ataque de adquisición de root es simple y directa. Dos características ayudan a derrotar un ataque de adquisición de raíz.
Root Guard- Root Guard restringe los puertos del switch a partir de los cuales se puede negociar el puente raíz. Si un puerto 'habilitado para root-guard' recibe BPDU que son superiores a los que envía el puente raíz actual, entonces ese puerto se mueve a un estado de raíz inconsistente y no se reenvía tráfico de datos a través de ese puerto. La protección de raíz se implementa mejor en los puertos que se conectan a conmutadores que no se espera que asuman el control como puente raíz.
BPDU-Guard- La protección de BPDU se utiliza para proteger la red de los problemas que pueden ser causados por la recepción de BPDU en los puertos de acceso. Estos son los puertos que no deberían recibirlos. La protección BPDU se implementa mejor en los puertos orientados al usuario para evitar que un atacante inserte un conmutador no autorizado.
Asegurar la LAN virtual
En las redes locales, las redes de área local virtuales (VLAN) a veces se configuran como una medida de seguridad para limitar la cantidad de hosts susceptibles a los ataques de capa 2. Las VLAN crean límites de red, sobre los cuales no puede cruzar el tráfico de difusión (ARP, DHCP).
Red de área local virtual
Se puede configurar una red que emplee conmutadores que admitan capacidades de VLAN para definir varias VLAN en una única infraestructura de LAN física.
La forma común de VLAN es una VLAN basada en puertos. En esta estructura de VLAN, los puertos del conmutador se agrupan en VLAN mediante el software de gestión del conmutador. Por tanto, un único conmutador físico puede actuar como varios conmutadores virtuales.
El empleo de VLAN proporciona aislamiento de tráfico. Divide la red de capa 2 de difusión grande en redes de capa 2 lógica más pequeñas y, por lo tanto, reduce el alcance de ataques como ARP / DHCP Spoofing. Las tramas de datos de una VLAN pueden moverse desde / hacia dentro de los puertos que pertenecen a la misma VLAN solamente. El reenvío de tramas entre dos VLAN se realiza mediante enrutamiento.
Las VLAN generalmente abarcan varios conmutadores, como se muestra en el diagrama anterior. El enlace entre los puertos troncales transporta tramas de todas las VLAN definidas en varios conmutadores físicos. Por lo tanto, las tramas de VLAN enviadas entre conmutadores no pueden ser simples tramas de formato Ethernet IEEE 802.1. Dado que estas tramas se mueven en el mismo enlace físico, ahora necesitan llevar información de ID de VLAN. El protocolo IEEE 802.1Q agrega / elimina campos de encabezado adicionales a tramas Ethernet simples reenviadas entre puertos troncales.
Cuando el campo que sigue a los dos campos de direcciones IP es 0x8100 (> 1500), la trama se identifica como trama 802.1Q. El valor del Identificador de protocolo de etiqueta (TPI) de 2 bytes es 81-00. El campo TCI consta de información de prioridad de 3 bits, indicador de eliminación elegible (DEI) de 1 bit e ID de VLAN de 12 bits. Este campo de prioridad de 3 bits y el campo DEI no son relevantes para las VLAN. Los bits de prioridad se utilizan para proporcionar calidad de servicio.
Cuando una trama no pertenece a ninguna VLAN, existe una ID de VLAN predeterminada con la que se considera que está asociada.
Ataque a VLAN y medidas de prevención
En un ataque de salto de VLAN, un atacante en una VLAN puede obtener acceso al tráfico en otras VLAN que normalmente no serían accesibles. Eludiría un dispositivo de capa 3 (enrutador) cuando se comunicara de una VLAN a otra, frustrando así el propósito de la creación de VLAN.
El salto de VLAN se puede realizar mediante dos métodos; cambiar la suplantación de identidad y el etiquetado doble.
Switch Spoofing
Puede ocurrir cuando el puerto del conmutador, al que está conectado el atacante, está en modo 'trunking' o en modo 'negociación automática'. El atacante actúa como un conmutador y agrega encabezados de encapsulación 802.1Q con etiquetas VLAN para las VLAN remotas de destino a sus tramas salientes. El conmutador receptor interpreta esas tramas como provenientes de otro conmutador 802.1Q y envía las tramas a la VLAN de destino.
Las dos medidas preventivas contra los ataques de suplantación de identidad de conmutadores son configurar los puertos de borde en modo de acceso estático y deshabilitar la negociación automática en todos los puertos.
Etiquetado doble
En este ataque, un atacante conectado en el puerto VLAN nativo del conmutador antepone dos etiquetas VLAN en el encabezado del marco. La primera etiqueta es de VLAN nativa y la segunda es para VLAN de destino. Cuando el primer conmutador recibe las tramas del atacante, elimina la primera etiqueta, ya que las tramas de la VLAN nativa se reenvían sin etiqueta en el puerto troncal.
Dado que la segunda etiqueta nunca fue eliminada por el primer conmutador, el conmutador receptor identifica la etiqueta restante como el destino de la VLAN y reenvía las tramas al host de destino en esa VLAN. El ataque de doble etiquetado explota el concepto de VLAN nativa. Dado que la VLAN 1 es la VLAN predeterminada para los puertos de acceso y la VLAN nativa predeterminada en los troncales, es un objetivo fácil.
La primera medida de prevención es eliminar todos los puertos de acceso de la VLAN 1 predeterminada, ya que el puerto del atacante debe coincidir con el de la VLAN nativa del conmutador. La segunda medida de prevención es asignar la VLAN nativa en todos los enlaces troncales del conmutador a alguna VLAN no utilizada, digamos VLAN id 999. Y por último, todos los conmutadores deben configurarse para llevar a cabo el etiquetado explícito de las tramas VLAN nativas en el puerto troncal.
Asegurar la LAN inalámbrica
La red de área local inalámbrica es una red de nodos inalámbricos dentro de un área geográfica limitada, como un edificio de oficinas o un campus escolar. Los nodos son capaces de comunicarse por radio.
LAN inalámbrico
La LAN inalámbrica generalmente se implementa como extensiones de la LAN con cable existente para proporcionar acceso a la red con movilidad del dispositivo. Las tecnologías de LAN inalámbrica más ampliamente implementadas se basan en el estándar IEEE 802.11 y sus enmiendas.
Los dos componentes principales de la LAN inalámbrica son:
Access Points (APs)- Estas son estaciones base para la red inalámbrica. Transmiten y reciben radiofrecuencias para comunicarse con clientes inalámbricos.
Wireless Clients- Estos son dispositivos informáticos que están equipados con una tarjeta de interfaz de red inalámbrica (WNIC). Las computadoras portátiles, teléfonos IP, PDA son ejemplos típicos de clientes inalámbricos.
Muchas organizaciones han implementado LAN inalámbricas. Estas redes están creciendo fenomenalmente. Por lo tanto, es fundamental comprender las amenazas en las LAN inalámbricas y aprender las medidas preventivas comunes para garantizar la seguridad de la red.
Ataques en LAN inalámbrica
Los ataques típicos que se llevan a cabo en una LAN inalámbrica son:
Eavesdropping - El atacante monitorea pasivamente las redes inalámbricas en busca de datos, incluidas las credenciales de autenticación.
Masquerading - El atacante se hace pasar por un usuario autorizado y obtiene acceso y privilegios en redes inalámbricas.
Traffic Analysis - El atacante monitorea las transmisiones a través de redes inalámbricas para identificar patrones de comunicación y participantes.
Denial of Service - El atacante impide o restringe el uso normal o la administración de LAN inalámbrica o dispositivos de red.
Message Modification/Replay - El atacante modifica o responde a un mensaje legítimo enviado a través de redes inalámbricas eliminándolo, agregándolo, cambiándolo o reordenándolo.
Medidas de seguridad en LAN inalámbrica
Las medidas de seguridad proporcionan los medios para derrotar los ataques y gestionar los riesgos de las redes. Se trata de medidas técnicas, operativas y de gestión de la red. A continuación describimos las medidas técnicas adoptadas para garantizar la confidencialidad, disponibilidad e integridad de los datos transmitidos a través de LAN inalámbricas.
En las LAN inalámbricas, todos los AP deben configurarse para brindar seguridad a través del cifrado y la autenticación del cliente. Los tipos de esquemas utilizados en la LAN inalámbrica para brindar seguridad son los siguientes:
Privacidad equivalente por cable (WEP)
Es un algoritmo de cifrado integrado en el estándar 802.11 para proteger las redes inalámbricas. El cifrado WEP utiliza el cifrado de flujo RC4 (Rivest Cipher 4) con claves de 40 bits / 104 bits y un vector de inicialización de 24 bits. También puede proporcionar autenticación de punto final.
Sin embargo, es el mecanismo de seguridad de cifrado más débil, ya que se han descubierto varias fallas en el cifrado WEP. WEP tampoco tiene protocolo de autenticación. Por lo tanto, no se recomienda utilizar WEP.
Protocolo 802.11i
En este protocolo son posibles numerosas y más fuertes formas de cifrado. Ha sido desarrollado para reemplazar el esquema WEP débil. Proporciona un mecanismo de distribución de claves. Admite una clave por estación y no usa la misma clave para todas. Utiliza un servidor de autenticación separado del punto de acceso.
IEEE802.11i exige el uso de un protocolo denominado Modo contador con Protocolo CBC-MAC (CCMP). CCMP proporciona confidencialidad e integridad de los datos transferidos y autenticidad del remitente. Se basa en el cifrado de bloque Advanced Encryption Standard (AES).
El protocolo IEEE802.11i tiene cuatro fases de funcionamiento.
STA y AP se comunican y descubren capacidades de seguridad mutua, como algoritmos compatibles.
STA y AS se autentican mutuamente y juntos generan Master Key (MK). AP actúa como "paso a través".
STA deriva la clave maestra por pares (PMK). AS deriva el mismo PMK y lo envía a AP.
STA, AP utilizan PMK para derivar la clave temporal (TK) que se utilizará para el cifrado de mensajes y la integridad de los datos.
Otras normas
Wi-Fi Protected Access(WPA): este protocolo implementa la mayor parte del estándar IEEE 802.11i. Existía antes de IEEE 802.11i y utiliza el algoritmo RC4 para el cifrado. Tiene dos modos de funcionamiento. En el modo "Enterprise", WPA utiliza el protocolo de autenticación 802.1x para comunicarse con el servidor de autenticación y, por lo tanto, las claves maestras previas (PMK) son específicas de la estación cliente. En el modo 'Personal', no usa 802.1x, PMK se reemplaza por una clave precompartida, como se usa para entornos de LAN inalámbrica Small Office Home Office (SOHO).
WPA también incluye una verificación de integridad de mensajes de sonido que reemplaza la verificación de redundancia cíclica (CRC) que se usaba en el estándar WEP.
WPA2- WPA2 reemplazó al WPA. WPA2 implementa todos los elementos obligatorios del esquema IEEE 802.11i. En particular, incluye soporte obligatorio para CCMP, un modo de cifrado basado en AES con gran seguridad. Por lo tanto, en lo que respecta a los ataques, WPA2 / IEEE802.11i proporciona soluciones adecuadas para defenderse de las debilidades de WEP, los ataques man-in-the-middle, la falsificación de paquetes y los ataques de repetición. Sin embargo, el ataque DoS no se aborda adecuadamente y no existen protocolos sólidos para detener tales ataques básicamente porque dichos ataques apuntan a la capa física como si interfirieran con la banda de frecuencia.
Resumen
En este capítulo, consideramos los ataques y las técnicas de mitigación asumiendo una red Ethernet conmutada que ejecuta IP. Si su red no utiliza Ethernet como protocolo de capa 2, es posible que algunos de estos ataques no sean aplicables, pero es probable que dicha red sea vulnerable a diferentes tipos de ataques.
La seguridad es tan fuerte como el eslabón más débil. Cuando se trata de redes, la capa 2 puede ser un eslabón muy débil. Las medidas de seguridad de capa 2 mencionadas en este capítulo contribuyen en gran medida a proteger una red de muchos tipos de ataques.
El control de acceso a la red es un método para mejorar la seguridad de una red organizacional privada al restringir la disponibilidad de los recursos de la red a los dispositivos terminales que cumplen con la política de seguridad de la organización. Un esquema de control de acceso a la red típico consta de dos componentes principales, como el acceso restringido y la protección de límites de red.
El acceso restringido a los dispositivos de red se logra mediante la autenticación de usuarios y el control de autorización, que es responsable de identificar y autenticar a los diferentes usuarios en el sistema de red. La autorización es el proceso de otorgar o denegar permisos de acceso específicos a un recurso protegido.
Network Boundary Protectioncontrola la conectividad lógica dentro y fuera de las redes. Por ejemplo, se pueden implementar varios cortafuegos para evitar el acceso no autorizado a los sistemas de red. También se pueden implementar tecnologías de detección y prevención de intrusiones para defenderse de los ataques de Internet.
En este capítulo, discutiremos los métodos para la identificación y autenticación de usuarios para el acceso a la red, seguidos por varios tipos de firewalls y sistemas de detección de intrusos.
Asegurar el acceso a los dispositivos de red
Restringir el acceso a los dispositivos en la red es un paso muy esencial para proteger una red. Dado que los dispositivos de red forman parte de los equipos de comunicación y de computación, comprometerlos puede hacer que se caiga toda la red y sus recursos.
Paradójicamente, muchas organizaciones garantizan una excelente seguridad para sus servidores y aplicaciones, pero dejan los dispositivos de red de comunicación con una seguridad rudimentaria.
Un aspecto importante de la seguridad de los dispositivos de red es el control y la autorización de acceso. Se han desarrollado muchos protocolos para abordar estos dos requisitos y mejorar la seguridad de la red a niveles más altos.
Autenticación y autorización de usuarios
La autenticación de usuario es necesaria para controlar el acceso a los sistemas de red, en particular a los dispositivos de infraestructura de red. La autenticación tiene dos aspectos: autenticación de acceso general y autorización funcional.
La autenticación de acceso general es el método para controlar si un usuario en particular tiene "algún" tipo de derecho de acceso al sistema al que está intentando conectarse. Por lo general, este tipo de acceso está asociado con el usuario que tiene una "cuenta" con ese sistema. La autorización se ocupa de los "derechos" de los usuarios individuales. Por ejemplo, decide qué puede hacer un usuario una vez autenticado; el usuario puede estar autorizado para configurar el dispositivo o solo ver los datos.
La autenticación del usuario depende de factores que incluyen algo que él sabe (contraseña), algo que tiene (token criptográfico) o algo que es (biométrico). El uso de más de un factor para la identificación y autenticación proporciona la base para la autenticación multifactor.
Autenticación basada en contraseña
Como mínimo, todos los dispositivos de red deben tener autenticación de nombre de usuario y contraseña. La contraseña no debe ser trivial (al menos 10 caracteres, alfabetos mixtos, números y símbolos).
En caso de acceso remoto por parte del usuario, se debe utilizar un método para garantizar que los nombres de usuario y las contraseñas no se pasen en claro a través de la red. Además, las contraseñas también deben cambiarse con una frecuencia razonable.
Métodos de autenticación centralizados
El sistema de autenticación basado en dispositivos individuales proporciona una medida básica de control de acceso. Sin embargo, un método de autenticación centralizado se considera más efectivo y eficiente cuando la red tiene una gran cantidad de dispositivos con una gran cantidad de usuarios que acceden a estos dispositivos.
Tradicionalmente, la autenticación centralizada se utilizaba para resolver los problemas que se enfrentaban en el acceso a la red remota. En los sistemas de acceso remoto (RAS), la administración de usuarios en los dispositivos de red no es práctica. Colocar toda la información del usuario en todos los dispositivos y luego mantener esa información actualizada es una pesadilla administrativa.
Los sistemas de autenticación centralizados, como RADIUS y Kerberos, resuelven este problema. Estos métodos centralizados permiten almacenar y administrar la información del usuario en un solo lugar. Por lo general, estos sistemas se pueden integrar sin problemas con otros esquemas de administración de cuentas de usuario, como Active Directory de Microsoft o directorios LDAP. La mayoría de los servidores RADIUS pueden comunicarse con otros dispositivos de red en el protocolo RADIUS normal y luego acceder de forma segura a la información de la cuenta almacenada en los directorios.
Por ejemplo, el Servidor de autenticación de Internet (IAS) de Microsoft conecta RADIUS y Active Directory para proporcionar autenticación centralizada para los usuarios de los dispositivos. También asegura que la información de la cuenta de usuario esté unificada con las cuentas de dominio de Microsoft. El diagrama anterior muestra un controlador de dominio de Windows que funciona como un servidor de Active Directory y un servidor RADIUS para que los elementos de red se autentiquen en un dominio de Active Directory.
Listas de control de acceso
Muchos dispositivos de red se pueden configurar con listas de acceso. Estas listas definen nombres de host o direcciones IP que están autorizadas para acceder al dispositivo. Es típico, por ejemplo, restringir el acceso a los equipos de red desde las IP, excepto para el administrador de la red.
Esto protegería entonces contra cualquier tipo de acceso que pudiera no estar autorizado. Estos tipos de listas de acceso sirven como una última defensa importante y pueden ser bastante poderosos en algunos dispositivos con diferentes reglas para diferentes protocolos de acceso.
Casi todas las organizaciones de mediana y gran escala tienen presencia en Internet y tienen una red organizativa conectada a ella. La partición de la red en el límite entre Internet exterior y la red interna es esencial para la seguridad de la red. A veces, la red interna (intranet) se conoce como el lado "confiable" y la Internet externa como el lado "no confiable".
Tipos de cortafuegos
El cortafuegos es un dispositivo de red que aísla la red interna de la organización de una red externa / Internet más grande. Puede ser un hardware, software o sistema combinado que evita el acceso no autorizado a la red interna o desde ella.
Todos los paquetes de datos que entran o salen de la red interna pasan a través del firewall, que examina cada paquete y bloquea los que no cumplen con los criterios de seguridad especificados.
La implementación de un firewall en los límites de la red es como agregar la seguridad en un solo punto. Es análogo a cerrar un apartamento en la entrada y no necesariamente en cada puerta.
El firewall se considera un elemento esencial para lograr la seguridad de la red por las siguientes razones:
Es poco probable que la red interna y los hosts estén protegidos adecuadamente.
Internet es un lugar peligroso con delincuentes, usuarios de empresas competidoras, ex empleados descontentos, espías de países hostiles, vándalos, etc.
Para evitar que un atacante lance ataques de denegación de servicio en un recurso de red.
Para evitar modificaciones / accesos ilegales a datos internos por parte de un atacante externo.
El cortafuegos se clasifica en tres tipos básicos:
- Filtro de paquetes (sin estado y con estado)
- Puerta de enlace a nivel de aplicación
- Puerta de enlace a nivel de circuito
Sin embargo, estas tres categorías no se excluyen mutuamente. Los firewalls modernos tienen una combinación de habilidades que pueden ubicarlos en más de una de las tres categorías.
Cortafuegos de filtrado de paquetes sin estado y con estado
En este tipo de implementación de firewall, la red interna está conectada a la red externa / Internet a través de un firewall de enrutador. El cortafuegos inspecciona y filtra los datos paquete por paquete.
Packet-filtering firewalls permitir o bloquear los paquetes principalmente en función de criterios tales como direcciones IP de origen y / o destino, protocolo, números de puerto de origen y / o destino, y varios otros parámetros dentro del encabezado IP.
La decisión puede basarse en factores distintos a los campos de encabezado IP, como el tipo de mensaje ICMP, los bits TCP SYN y ACK, etc.
La regla de filtrado de paquetes tiene dos partes:
Selection criteria - Se utiliza como condición y coincidencia de patrones para la toma de decisiones.
Action field- Esta parte especifica la acción que se debe tomar si un paquete IP cumple con los criterios de selección. La acción podría ser bloquear (denegar) o permitir (permitir) el paquete a través del firewall.
El filtrado de paquetes generalmente se logra mediante la configuración de listas de control de acceso (ACL) en enrutadores o conmutadores. ACL es una tabla de reglas de filtrado de paquetes.
A medida que el tráfico entra o sale de una interfaz, el cortafuegos aplica ACL de arriba a abajo a cada paquete entrante, encuentra criterios coincidentes y permite o niega los paquetes individuales.
Stateless firewalles una especie de herramienta rígida. Mira el paquete y lo permite si cumple con los criterios, incluso si no es parte de ninguna comunicación en curso establecida.
Por tanto, estos cortafuegos se sustituyen por stateful firewallsen las redes modernas. Este tipo de firewalls ofrece un método de inspección más profundo sobre los únicos métodos de inspección de paquetes basados en ACL de firewalls sin estado.
El firewall con estado monitorea la configuración de la conexión y el proceso de desconexión para controlar las conexiones a nivel de TCP / IP. Esto les permite realizar un seguimiento del estado de las conexiones y determinar qué hosts tienen conexiones abiertas y autorizadas en un momento dado.
Hacen referencia a la base de reglas solo cuando se solicita una nueva conexión. Los paquetes que pertenecen a conexiones existentes se comparan con la tabla de estado de conexiones abiertas del firewall, y se toma la decisión de permitir o bloquear. Este proceso ahorra tiempo y también proporciona seguridad adicional. No se permite que ningún paquete traspase el firewall a menos que pertenezca a una conexión ya establecida. Puede agotar el tiempo de espera de las conexiones inactivas en el firewall, después de lo cual ya no admite paquetes para esa conexión.
Pasarelas de aplicación
Una puerta de enlace de nivel de aplicación actúa como un nodo de retransmisión para el tráfico de nivel de aplicación. Interceptan paquetes entrantes y salientes, ejecutan proxies que copian y reenvían información a través de la puerta de enlace y funcionan comoproxy server, evitando cualquier conexión directa entre un servidor o cliente confiable y un host no confiable.
Los proxies son específicos de la aplicación. Pueden filtrar paquetes en la capa de aplicación del modelo OSI.
Proxies específicos de la aplicación
Un proxy específico de la aplicación acepta paquetes generados solo por una aplicación específica para la que están diseñados para copiar, reenviar y filtrar. Por ejemplo, solo un proxy Telnet puede copiar, reenviar y filtrar el tráfico Telnet.
Si una red se basa solo en una puerta de enlace de nivel de aplicación, los paquetes entrantes y salientes no pueden acceder a los servicios que no tienen proxies configurados. Por ejemplo, si una puerta de enlace ejecuta servidores proxy FTP y Telnet, solo los paquetes generados por estos servicios pueden atravesar el firewall. Todos los demás servicios están bloqueados.
Filtrado a nivel de aplicación
Una puerta de enlace proxy a nivel de aplicación examina y filtra paquetes individuales, en lugar de simplemente copiarlos y reenviarlos a ciegas a través de la puerta de enlace. Los proxies específicos de la aplicación verifican cada paquete que pasa a través de la puerta de enlace, verificando el contenido del paquete a través de la capa de la aplicación. Estos proxies pueden filtrar tipos particulares de comandos o información en los protocolos de aplicación.
Las puertas de enlace de aplicaciones pueden restringir la realización de acciones específicas. Por ejemplo, la puerta de enlace se puede configurar para evitar que los usuarios ejecuten el comando 'FTP put'. Esto puede evitar que un atacante modifique la información almacenada en el servidor.
Transparente
Aunque las puertas de enlace a nivel de aplicación pueden ser transparentes, muchas implementaciones requieren la autenticación del usuario antes de que los usuarios puedan acceder a una red que no es de confianza, un proceso que reduce la verdadera transparencia. La autenticación puede ser diferente si el usuario es de la red interna o de Internet. Para una red interna, se puede permitir que una lista simple de direcciones IP se conecte a aplicaciones externas. Pero desde el lado de Internet se debe implementar una autenticación fuerte.
Una puerta de enlace de aplicaciones en realidad retransmite segmentos TCP entre las dos conexiones TCP en las dos direcciones (Cliente ↔ Proxy ↔ Servidor).
Para los paquetes salientes, la puerta de enlace puede reemplazar la dirección IP de origen por su propia dirección IP. El proceso se conoce como traducción de direcciones de red (NAT). Garantiza que las direcciones IP internas no estén expuestas a Internet.
Puerta de enlace a nivel de circuito
La puerta de enlace a nivel de circuito es una solución intermedia entre el filtro de paquetes y la puerta de enlace de la aplicación. Se ejecuta en la capa de transporte y, por lo tanto, puede actuar como proxy para cualquier aplicación.
Similar a una puerta de enlace de aplicaciones, la puerta de enlace a nivel de circuito tampoco permite una conexión TCP de un extremo a otro a través de la puerta de enlace. Establece dos conexiones TCP y retransmite los segmentos TCP de una red a la otra. Pero no examina los datos de la aplicación como la puerta de enlace de la aplicación. Por lo tanto, en algún momento se le llama 'Pipe Proxy'.
CALCETINES
SOCKS (RFC 1928) se refiere a una puerta de enlace a nivel de circuito. Es un mecanismo de proxy de red que permite a los hosts de un lado de un servidor SOCKS obtener acceso completo a los hosts del otro lado sin requerir accesibilidad IP directa. El cliente se conecta al servidor SOCKS en el firewall. Luego, el cliente ingresa a una negociación para que se utilice el método de autenticación y se autentica con el método elegido.
El cliente envía una solicitud de retransmisión de conexión al servidor SOCKS, que contiene la dirección IP de destino y el puerto de transporte deseados. El servidor acepta la solicitud después de verificar que el cliente cumple con los criterios básicos de filtrado. Luego, en nombre del cliente, la puerta de enlace abre una conexión con el host no confiable solicitado y luego monitorea de cerca el protocolo de enlace TCP que sigue.
El servidor SOCKS informa al cliente y, en caso de éxito, comienza a transmitir los datos entre las dos conexiones. Las puertas de enlace a nivel de circuito se utilizan cuando la organización confía en los usuarios internos y no desea inspeccionar el contenido o los datos de la aplicación enviados en Internet.
Implementación de firewall con DMZ
Un cortafuegos es un mecanismo que se utiliza para controlar el tráfico de red "dentro" y "fuera" de una red interna de la organización. En la mayoría de los casos, estos sistemas tienen dos interfaces de red, una para la red externa, como Internet, y la otra para el lado interno.
El proceso de firewall puede controlar estrictamente lo que se permite atravesar de un lado a otro. Una organización que desee proporcionar acceso externo a su servidor web puede restringir todo el tráfico que llega al firewall excepto para el puerto 80 (el puerto http estándar). El resto del tráfico, como el tráfico de correo, FTP, SNMP, etc., no está permitido a través del firewall hacia la red interna. En el siguiente diagrama se muestra un ejemplo de un cortafuegos simple.
En la implementación simple anterior, aunque todos los demás accesos desde el exterior están bloqueados, es posible que un atacante se comunique no solo con un servidor web sino con cualquier otro host en la red interna que haya dejado el puerto 80 abierto por accidente o de otra manera.
Por lo tanto, el problema al que se enfrentan la mayoría de las organizaciones es cómo habilitar el acceso legítimo a servicios públicos como la web, FTP y correo electrónico mientras se mantiene una estricta seguridad de la red interna. El enfoque típico es implementar firewalls para proporcionar una zona desmilitarizada (DMZ) en la red.
En esta configuración (ilustrada en el diagrama siguiente), se implementan dos firewalls; uno entre la red externa y la DMZ, y otro entre la DMZ y la red interna. Todos los servidores públicos están ubicados en la DMZ.
Con esta configuración, es posible tener reglas de firewall que permitan el acceso público a los servidores públicos, pero el firewall interior puede restringir todas las conexiones entrantes. Al tener DMZ, los servidores públicos cuentan con la protección adecuada en lugar de colocarlos directamente en una red externa.
Sistema de detección / prevención de intrusiones
Los cortafuegos de filtrado de paquetes operan según reglas que involucran únicamente encabezados TCP / UDP / IP. No intentan establecer comprobaciones de correlación entre diferentes sesiones.
El sistema de detección / prevención de intrusiones (IDS / IPS) lleva a cabo una inspección profunda de paquetes (DPI) mirando el contenido del paquete. Por ejemplo, verificando cadenas de caracteres en un paquete con la base de datos de virus conocidos, cadenas de ataque.
Las puertas de enlace de aplicaciones miran el contenido del paquete, pero solo para aplicaciones específicas. No buscan datos sospechosos en el paquete. IDS / IPS busca datos sospechosos contenidos en paquetes e intenta examinar la correlación entre múltiples paquetes para identificar cualquier ataque, como escaneo de puertos, mapeo de redes y denegación de servicio, etc.
Diferencia entre IDS e IPS
IDS e IPS son similares en la detección de anomalías en la red. IDS es una herramienta de "visibilidad", mientras que IPS se considera una herramienta de "control".
Los sistemas de detección de intrusiones se encuentran a un lado de la red, monitorean el tráfico en muchos puntos diferentes y brindan visibilidad del estado de seguridad de la red. En caso de que IDS notifique una anomalía, el administrador de la red u otro dispositivo de la red iniciará las acciones correctivas.
Los sistemas de prevención de intrusiones son como un cortafuegos y se colocan en línea entre dos redes y controlan el tráfico que las atraviesa. Hace cumplir una política específica sobre la detección de anomalías en el tráfico de la red. Por lo general, descarta todos los paquetes y bloquea todo el tráfico de la red al notar una anomalía hasta que el administrador solucione la anomalía.
Tipos de IDS
Hay dos tipos básicos de IDS.
Signature-based IDS
Necesita una base de datos de ataques conocidos con sus firmas.
La firma se define por los tipos y el orden de los paquetes que caracterizan un ataque en particular.
La limitación de este tipo de IDS es que solo se pueden detectar ataques conocidos. Este IDS también puede generar una falsa alarma. Puede ocurrir una falsa alarma cuando un flujo de paquetes normal coincide con la firma de un ataque.
Un ejemplo conocido de IDS público de código abierto es el IDS “Snort”.
Anomaly-based IDS
Este tipo de IDS crea un patrón de tráfico de funcionamiento normal de la red.
Durante el modo IDS, observa los patrones de tráfico que son estadísticamente inusuales. Por ejemplo, carga inusual de ICMP, crecimiento exponencial en escaneos de puertos, etc.
La detección de cualquier patrón de tráfico inusual genera la alarma.
El principal desafío al que se enfrenta este tipo de implementación de IDS es la dificultad para distinguir entre el tráfico normal y el tráfico inusual.
Resumen
En este capítulo, discutimos los diversos mecanismos empleados para el control de acceso a la red. El enfoque de la seguridad de la red a través del control de acceso es técnicamente diferente a la implementación de controles de seguridad en las diferentes capas de la red discutidas en los capítulos anteriores de este tutorial. Sin embargo, aunque los enfoques de implementación son diferentes, son complementarios entre sí.
El control de acceso a la red consta de dos componentes principales: autenticación de usuario y protección de límites de red. RADIUS es un mecanismo popular para proporcionar autenticación central en la red.
El cortafuegos proporciona protección de los límites de la red al separar una red interna de la Internet pública. El firewall puede funcionar en diferentes capas de protocolo de red. IDS / IPS permite monitorear las anomalías en el tráfico de la red para detectar el ataque y tomar acciones preventivas contra el mismo.
La información y la comunicación eficiente son dos de los temas estratégicos más importantes para el éxito de cualquier negocio. Con el advenimiento de los medios electrónicos de comunicación y almacenamiento, cada vez más empresas han optado por utilizar redes de datos para comunicarse, almacenar información y obtener recursos. Existen diferentes tipos y niveles de infraestructuras de red que se utilizan para administrar el negocio.
Se puede afirmar que en el mundo moderno nada tuvo un impacto mayor en las empresas que las computadoras en red. Pero las redes conllevan amenazas de seguridad que, si se mitigan, permiten que los beneficios de las redes superen los riesgos.
Papel de la red en los negocios
Hoy en día, casi todas las empresas consideran las redes informáticas como un recurso. Este recurso les permite recopilar, analizar, organizar y difundir información que es esencial para su rentabilidad. La mayoría de las empresas han instalado redes para seguir siendo competitivas.
El papel más obvio de las redes informáticas es que las organizaciones pueden almacenar prácticamente cualquier tipo de información en una ubicación central y recuperarla en el lugar deseado a través de la red.
Beneficios de las redes
Las redes de computadoras permiten a las personas compartir información e ideas fácilmente, para que puedan trabajar de manera más eficiente y productiva. Las redes mejoran actividades como compras, ventas y servicio al cliente. Las redes hacen que los procesos comerciales tradicionales sean más eficientes, más manejables y menos costosos.
Los principales beneficios que una empresa obtiene de las redes informáticas son:
Resource sharing - Una empresa puede reducir la cantidad de dinero gastada en hardware al compartir componentes y periféricos conectados a la red.
Streamlined business processes - Las redes informáticas permiten a las empresas optimizar sus procesos comerciales internos.
Collaboration among departments - Cuando dos o más departamentos de negocios conectan partes seleccionadas de sus redes, pueden optimizar los procesos comerciales que normalmente requieren cantidades excesivas de tiempo y esfuerzo y, a menudo, plantean dificultades para lograr una mayor productividad.
Improved Customer Relations - Las redes brindan a los clientes muchos beneficios, como conveniencia para hacer negocios, respuesta rápida del servicio, etc.
Hay muchos otros beneficios específicos de la empresa que se derivan de la creación de redes. Estos beneficios han hecho que sea esencial para todo tipo de empresas adoptar redes informáticas.
Necesidad de seguridad en la red
Las amenazas en las redes cableadas o inalámbricas han aumentado significativamente debido al avance de la tecnología moderna con la creciente capacidad de las redes informáticas. El uso abrumador de Internet en el mundo actual para diversas transacciones comerciales ha planteado desafíos de robo de información y otros ataques a los activos intelectuales comerciales.
En la era actual, la mayoría de los negocios se llevan a cabo a través de aplicaciones de red y, por lo tanto, todas las redes corren el riesgo de ser atacadas. Las amenazas de seguridad más comunes para la red empresarial son la interceptación y el robo de datos y el robo de identidad.
La seguridad de la red es un campo especializado que se ocupa de frustrar dichas amenazas y brindar protección de la usabilidad, confiabilidad, integridad y seguridad de la infraestructura de redes de computadoras de una empresa.
Importancia de la seguridad de la red para las empresas
Protecting Business Assets- Este es el objetivo principal de la seguridad de la red. Activos significa la información que se almacena en las redes informáticas. La información es tan crucial y valiosa como cualquier otro activo tangible de la empresa. La seguridad de la red se preocupa por la integridad, protección y acceso seguro a la información confidencial.
Compliance with Regulatory Requirements - Las medidas de seguridad de la red ayudan a las empresas a cumplir con las normativas gubernamentales y específicas de la industria sobre seguridad de la información.
Secure Collaborative Working- La seguridad de la red fomenta la colaboración de los compañeros de trabajo y facilita la comunicación con clientes y proveedores ofreciéndoles acceso seguro a la red. Aumenta la confianza del cliente y del consumidor en que su información confidencial está protegida.
Reduced Risk - La adopción de la seguridad de la red reduce el impacto de las violaciones de seguridad, incluidas las acciones legales que pueden llevar a la quiebra a las pequeñas empresas.
Gaining Competitive Advantage- El desarrollo de un sistema de seguridad eficaz para las redes otorga una ventaja competitiva a una organización. En el ámbito de los servicios financieros y el comercio electrónico de Internet, la seguridad de la red adquiere una importancia primordial.