Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce...

40
Fernando Lorge [email protected] Introducción a la seguridad En redes de datos - 2 - 2015 - Laboratorio de REDES Recuperación de Información y Estudios de la Web Administración y Gestión de Redes Lic. en Sistemas de Información

Transcript of Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce...

Page 1: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Fernando [email protected]

Introducción a la seguridadEn redes de datos - 2

- 2015 -

Laboratorio de REDESRecuperación de Informacióny Estudios de la Web

Administración y Gestión de RedesLic. en Sistemas de Información

Page 2: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

¿Cómo proteger los datos?

● Diferentes soluciones a diferentes niveles:● End-to-end – link-level – network-level● PGP, S/MIME, Secure Shell (ssh), Transport Layer Security (TLS),

IPSec, L2tp, user-space vpn's

Protección decomunicaciones

Page 3: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Pretty Good Privacy / OpenPGP

● Pretty Good Privacy (PGP) desarrollado por Phil Zimmermann in 1991● Año 2007: Estándar OpenPGP de IETF (RFC 4880).● Provee servicios de integridad de datos para mensajes y archivos

mediante:● Firmas digitales● Cifrado (simétrico y de clave pública)● Compresión● Conversión Radix64

● Además provee administración de claves y certificados.

Protección decomunicaciones

Page 4: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

OpenPGP

Algoritmos soportados (gpg --version):

● Clave Pública: RSA, RSA-E, RSA-S, ELG-E, DSA

● Cifrado simétrico: 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH, CAMELLIA128, CAMELLIA192, CAMELLIA256.

● Hash: MD5, SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224

● Compresión: Sin compresiónSin compresión, ZIP, ZLIB, BZIP2

● Para envío por SMTP: Radix64.

● Alternativa para correo: Secure/Multipurpose Internet Mail Extensions (S/MIME RFC 5751) - Mensaje PKCS#7

Protección decomunicaciones

Page 5: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Redes Privadas Virtuales (VPN)

“Una VPN es un conjunto de herramientas que permite a redes de diferentes lugares conectarse de forma segura,

utilizando una red pública como capa de transporte” [James Yonan:The User-Space VPN and OpenVPN”]

● Proveen un medio de establecer comunicaciones seguras sobre redes públicas o inseguras.

● Utilizan cifrado para proveer confidencialidad, autenticidad e integridad.

Protección decomunicaciones

Page 6: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Redes Privadas Virtuales (VPN)

Objetivos:

● Conectar usuarios de forma segura a sus redes empresariales (Acceso Remoto)

● Vincular sucursales con una red empresarial (Intranet).● Ampliar la existente infraestructura de red de una organización para

incluir socios, proveedores y clientes (Extranet)

Protección decomunicaciones

Page 7: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Redes Privadas Virtuales (VPN)

Servicios:● Autenticación de usuarios: Solamente usuarios autorizados pueden

tener acceso a la VPN.● Administración de claves: Se debe generar y actualizar las claves de

cifrado para los clientes VPN y el servidor VPN: La tecnología VPN debe encapsular los datos privados agregando una cabecera adicional que permita a estos transitar por la red pública, esto se conoce como túnel.

● Administración de direcciones: Se debe asignar a los clientes de la VPN las direcciones IP dentro de la intranet corporativa y asegurar que dichas direcciones se mantengan privadas.

Protección decomunicaciones

Page 8: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Redes Privadas Virtuales (VPN)

Servicios:● Cifrado de datos: Los datos transmitidos sobre la infraestructura de red

pública tienen que ser ilegibles para los clientes no autorizados de la VPN

● Encapsulamiento: La tecnología VPN debe encapsular los datos privados agregando una cabecera adicional que permita a estos transitar por la red pública, esto se conoce como túnel.

● Soporte a múltiples protocolos: Proveer soporte para los protocolos utilizados en la red pública.

Protección decomunicaciones

Page 9: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Redes Privadas Virtuales (VPN)

Tipos:

● De acceso remoto (Remote access): Conectan usuarios a redes a través de un Servidor de Acceso a la Red (NAS) (Interactúa con server de Autenticación, Autorización y Contabilidad).

● Sitio a sitio (site-to-site): Conectan redes con redes mediante gestores de tráfico. (conexiones iniciadas en 1 sentido o ambos)

Protección decomunicaciones

Page 10: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

IPSec

● Desarrollado en los '90, originalmente obligatorio en ipv6, luego recomendado. Opcional en ipv4.

● Última actualización 2005 (RFC 4301)● 2 Modos de Operación:

● Transporte● Túnel

● Servicio de Autenticación● Authentication Header (RFC 4302)

● Servicio de Confidencialidad y/o integridad:● IP Encapsulating Security Payload (RFC 4303)

Protección decomunicaciones

Page 11: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

IPSec

● AH Protocol:● Provee autenticación, integridad y protección frente a reenvíos. (no

confidencialidad)● Asegura la carga de un paquete IP, y porciones del header IP.

● ESP Protocol:● Puede proveer autenticación, integridad, protección frente a reenvíos

y confidencialidad.● Asegura todo la carga de un paquete IP. (no sus headers)

Protección decomunicaciones

Page 12: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

IPSec

● Asociaciones de seguridad (Security Associations - SAs)● Describen exactamente como se alcanzará la protección deseada

para cada conexión.● Algunos parámetros típicos de una SA incluyen:

● Algoritmo de Cifrado, algoritmo de hash, clave de cifrado, clave de autenticación, tiempo de vida de claves, valores de inicialización.

● Seteo manual o automático (ISAKMP).● Identificada por:

● Security Parameter Index (SPI)● IP destino● Security protocol Identifier

Protección decomunicaciones

Page 13: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

IPSec

● Base de datos de Asociaciones de Seguridad (Security Association Database, SAD)● Definen los parámetros asociados a cada SA:

● Security Parameter Index● Sequence Number Counter● Sequence Counter Overflow● Anti-Reply Window● AH Information● ESP Information● Lifetime● IPSec Protocol Mode● Path MTU● DSCP values● Tunnel header IP source and destination address...

Protección decomunicaciones

Page 14: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

IPSec

● Base de datos de Políticas de Seguridad (Security Policy Database, SPD)● Definen cómo se aplica IPSec al tráfico transmitido o recibido.● Opciones de procesamiento: DISCARD, BYPASS, PROTECT● En las entradas se utilizan “Selectores”:

● Local Address,● Remote Address,● Next Layer Protocol,● Local Port, or ICMP message type/code or Mobility Header type

(depending on the next layer protocol)● Remote Port, or ICMP message type/code or Mobility Header type

(depending on the next layer protocol)

Protección decomunicaciones

Page 15: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Protección decomunicaciones

Page 16: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Protección decomunicaciones

Page 17: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Protección decomunicaciones

Page 18: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Protección decomunicaciones

Page 19: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Transport Layer Security (TLS) Protocol

● Basado en Secure Sockets Layer (SSL) desarrollado por Netsacape:● SSL v2.0: 1995.● SSL v3.0: 1996. (RFC Historic 6101, per RFC 7568 -Junio 2015-

“SSLv3 MUST NOT be used”)● TLS v1.0: 1999. (RFC 2246)● TLS v1.1: 2006. (RFC 4346)● TLS v1.2: 2008. (RFC 5246)● TLS v1.3: draft-ietf-tls-tls13-07

● Implementado sobre TCP proporciona seguridad a protocolos de aplicación como HTTP, SNMP, SIP, etc.

● Provee Cifrado y Autenticación mediante certificadosx509 (de 1 o ambos extremos)

Protección decomunicaciones

Page 20: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Transport Layer Security (TLS) Protocol

● Arquitectura:

● El protocolo TLS Record provee confidencialidad e integridad.

Protección decomunicaciones

TLS Record Protocol

TCP

IP

HandshakeProtocol

AlertProtocol

Change CipherSpec Protocol

Application DataProtocol (HTTP, etc)

Page 21: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Transport Layer Security (TLS) ProtocolTLS Record Protocol

● Funcionamiento:● Toma mensajes de aplicación a transmitir (HTTP, SMTP, o los

protocolos Handshake, Alert y Change Cipher Spec del propio TLS).● Fragmenta en bloques a enviar de 16384 bytes o menor.● Comprime los datos (opcional)● Aplica un código de autenticación de mensaje (HMAC definido en

RFC 2104 -basado en hash)● Cifra el mensaje y el MAC calculado utilizando algoritmos simétricos

(AES, IDEA, RC2, RC4, 3DES...)● Agrega encabezado:

● Content-Type (protocolo de nivel superior)● Major Version● Minor Version● Compressed Length

Protección decomunicaciones

Page 22: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Transport Layer Security (TLS) ProtocolTLS Record Protocol

● Formato:

Protección decomunicaciones

Fragment

IP

ContentTypel

MajorVersion

MinorVersion

Compressedlength

Page 23: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Transport Layer Security (TLS) ProtocolTLS Record Protocol

● Formato:

● Content Type: Protocolo de nivel superior● change_cipher_spec(20)● alert(21)● handshake(22)● application_data(23)

● Version: Major 3, Minor 3 para TLS v1.2● Length: Longitud en bytes del fragmento (No debe superar 2^14 + 2048)● Fragment: Datos de aplicación protegidos por cifrado. (posiblemente

comprimidos + PAD + MAC)

Protección decomunicaciones

Page 24: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Transport Layer Security (TLS) ProtocolAlert Protocol

● Transmisión de mensajes de alerta entre pares.

● Mensajes de 2 bytes:

● El primero indica la criticidad (1-warning o 2-fatal)

● El segundo indica la alerta específica

● Mensajes de alerta con nivel fatal determina la finalización inmediata de la conexión.

● Cifrado y comprimido de acuerdo al estado actual.

Protección decomunicaciones

Page 25: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Transport Layer Security (TLS) ProtocolChange Cipher Spec Protocol

● Señala el cambio en especificaciones de cifrado y claves negociadas previamente a partir del próximo registro.

● Mensaje único de 1 byte (valor 1) cifrado y comprimido de acuerdo al estado actual.

Protección decomunicaciones

Page 26: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Transport Layer Security (TLS) ProtocolHandshake Protocol

● Permite la autenticación de las partes y la negociación de parámetros de seguridad (algoritmos de cifrado y MAC, claves..).

● Mensajes de 3 campos:

● Tipo (1 byte)● Longitud (3 bytes)● Contenido (0+ bytes)

Protección decomunicaciones

Page 27: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Transport Layer Security (TLS) ProtocolHandshake Protocol

● Se negocia una sesión con los siguientes ítems:

● Session identifier● Peer certificate● Compression method● Cipher spec (pseudorandom function, bulk data encryption algorithm,

MAC algorithm, mac_length)● Master secret (48-byte secret compartido entre cliente y servidor)● Is resumable

Protección decomunicaciones

Page 28: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Transport Layer Security (TLS) ProtocolHandshake Protocol

Protección decomunicaciones

Page 29: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Transport Layer Security (TLS) ProtocolHandshake Protocol

Protección decomunicaciones

Page 30: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Secure Shell (SSH)

● Login remoto.● Tunneling de conexiones TCP/IP.● Compuesto por

● Transport Layer Protocol. (RFC 4253)● Authentication Protocol. (RFC 4252)● Connection Protocol. (RFC 4254)

● Autenticación de hosts mediante “Host Keys”● Negociación de intercambio de claves, algoritmos de cifrado simétrico y

de clave pública, autenticación de mensajes y hash.

Protección decomunicaciones

Page 31: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Secure Shell (SSH)

● SSH Transport Layer Protocol:

Provee autenticación, confidencialidad e integridad (opcional compresión)● SSH User Authenticacion Protocol:

Autentica usuario frente al servidor● SSH Connection Protocol:

Multiplexa múltiples canales de comunicación lógicos.

Protección decomunicaciones

SSH UserAuthentication Protocol

SSHConnection Protocol

SSH TransportLayer Protocol

TCP

IP

Page 32: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

SSH: Transport Layer Protocol

Protección decomunicaciones

Page 33: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

SSH: User autenticacion protocol

● Métodos de autenticación:

● Clave pública (publickey)

● Contraseña (password)

● Basada en host (hostbased)

Protección decomunicaciones

Page 34: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

SSH: Connection Protocol

Tipos de canales:

● Session● X11● Forwarded-tcpip● Direct-tcp

Protección decomunicaciones

Page 35: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Virtual LANs

● Subred lógica a nivel 2 definida por software.● Segmentan una red en diferentes dominios de broadcast.● Se utilizan para agrupar servers, pc's, etc. de acuerdo a requerimientos

similares de manejo de datos y seguridad.● La comunicación entre dispositivos de diferentes VLANs debe

realizarse a nivel 3.

Virtual LANs

Page 36: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Virtual LAN

● Algunas ventajas:● Independizan la ubicación física de los dispositivos.● Permiten aislar entre sí diferentes partes de una red.● Permiten cambiar el dominio de broadcast y acceso a recursos de un

dispositivo sin moverlo físicamente. (o cambiando el puerto del switch al que se conecta).

● Dirigir tráfico broadcast sólo a aquellos dispositivos que necesitan recibirlo, para reducir el tráfico en la red.

● La comunicación entre dispositivos de diferentes VLANs deberealizarse a nivel 3.

Virtual LANs

Page 37: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

IEEE 802.1Q

4094 vlans posibles

Virtual LANs

Page 38: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

IEEE 802.1ad(Stacked VLAN o QinQ)

● Client Tagging (C-tag)

● Service provider tagging (S-tag)

Virtual LANs

Page 39: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Private VLANs

● Puerto Promiscuo.

● Puertos host:

● Isolated ports

● Community ports

Virtual LANs

Page 40: Introducción a la seguridad En redes de datos - 2 · transitar por la red pública, esto se conoce como túnel. ... dispositivo sin moverlo físicamente. (o cambiando el puerto del

Próxima: Práctica Seguridad

Bibliografía:

Cryptography and Network Security - Principles and Practice, Fifth Edition, William Stallings, Prentice Hall. 2011

● www.icic.gob.ar● www.snort.org● Insecure.org

Bibliografía