Post on 13-Feb-2015
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
3
Ejemplo TCP/IPEjemplo TCP/IP
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
4
SMTPFTP
TCP
HTTP
IP
• ¿Qué tenemos inicialmente?
• Podemos aplicar seguridad en cualquiera de estos puntos
Stack TCP/IPStack TCP/IP
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
5
SMTPFTP
SSL/PCT/TLS
HTTP
IPTCP
SMTPFTP
TCP
HTTP
ESPAH
IPNetwork Transport
S/MIMES-HTTP
IPTCP
Application
SMTPFTPHTTP
IPTCP
SET PGP
Presentation
¿Dónde podemos aplicar Seguridad?¿Dónde podemos aplicar Seguridad?
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
6
Header IPv4 (Repaso)Header IPv4 (Repaso)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
7
Header IPv6 (Repaso)Header IPv6 (Repaso)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
8
IPSec no es un protocolo aislado. En vez de ello IPSec provee un conjunto de algoritmos de seguridad más un marco de trabajo que permite que dos entidades que se comunican usen cualquier algoritmo de seguridad apropiado.
IP Security (Overview)IP Security (Overview)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
9
• Aplicaciones de IPSec– Hacer segura la conectividad entre dos
sucursales de una organización sobre Internet: VPN.
– Hacer seguro el acceso remoto desde Internet.– Establecer conectividad extranet e intranet con
otras organizaciones.– Mejorar la seguridad en e-commerce.– Mejorar la SET.
IP Security (Overview)IP Security (Overview)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
10
IP Security: escenarioIP Security: escenario
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
11
• Beneficios de IPSec– Soporta integridad y autentificación (AH (Authentication
Header) y encripción (ESP (Encrypted Security Payload)) en capa 3.
– Transparente a las aplicaciones (se inserta bajo la capa de transporte (TCP, UDP)).
– Es transparente a los usuarios.– Provee seguridad para usuarios individuales.
• IPSec puede asegurar que:– Un advertisement proveniente de un router o vecino llega
realmente de un router autorizado.– Un redirect message viene desde el router al cual se le
envió el paquete inicial.– Un routing update no puede ser falsificado.
IP Security (Overview)IP Security (Overview)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
12
Arquitectura de IPSec (1)Arquitectura de IPSec (1)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
13
• Documentos de IPSec:– RFC 2401: An overview of security
architecture– RFC 2402: Description of a packet encryption
extension to IPv4 and IPv6– RFC 2406: Description of a packet emcryption
extension to IPv4 and IPv6– RFC 2408: Specification of key managament
capabilities– Muchísimas RFC más.
Arquitectura de IPSec (2)Arquitectura de IPSec (2)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
14
Arquitectura de IPSec (3)Arquitectura de IPSec (3)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
15
DOI = Domain of Interpretation
Organización de las RFC’s de IPSecOrganización de las RFC’s de IPSec
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
16
• Control de Acceso.• Integridad no orientada a conexión (connectionless).• Autentificación del origen de los datos.• Rechazo de paquetes reenviados (replay).• Confidencialidad (encripción).• Confidencialidad limitada sobre el flujo del tráfico.
Servicios de IPSecServicios de IPSec
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
17
• Concepto clave que aparece en los mecanismos de autenticidad y confidencialidad.
• Es una relación de un solo sentido (one way) entre un emisor y un receptor.
• Una SA se encuentra identificada por 3 parámetros:– Security Parameter Index (SPI)– Dirección IP Destino– Security Protocol Identifier
Security AssociationsSecurity Associations (SA) (SA)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
18
Encripta y autentifica el paquete IP interno.
Encripta el IP payload y cualquier extension header del IPv6.
Autentifica el IP payload pero no el IP header.
ESP con autentificación
Encripta el paquete IP interno.
Encripta el IP payload y cualquier extension header del IPv6.
ESP
Autentifica el paquete IP interno completo más ciertas porciones del header del IP externo.
Autentifica el IP payload y ciertas porciones del header IP y el extension header del IPv6.
AH
Tunnel Mode SA
Transport Mode SA
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
19
Servicios de IPSecServicios de IPSec
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
20
Antes de aplicar AHAntes de aplicar AH
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
21
• Protección para los protocolos de nivel superior
• end-end (C/S, 2 WS)
Transport ModeTransport Mode (Autentificación AH) (Autentificación AH)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
22
• Protección del paquete IP completo.
• host-subnet, subnet-subnet.
Tunnel ModeTunnel Mode (Autentificación AH) (Autentificación AH)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
23
• Brinda soporte para integridad de datos y autentificación (código MAC (clave secreta compartida)) de los paquetes IP.
• Protege de ataques replay.
Header de AutentificaciónHeader de Autentificación
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
24
Transport mode SA
Tunnel mode SA
Autentificación End-to-End vs. End-to-Autentificación End-to-End vs. End-to-IntermediateIntermediate
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
25
• ESP provee los servicios de confidencialidad (mensaje (total) y tráfico (parcial)).
Encapsulating Security PayloadEncapsulating Security Payload
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
26
• Encripción (long MAC default = 96 bits):– Three-key triple DES (3DES)– RC5– IDEA– Three-key triple IDEA (3IDEA)– CAST– Blowfish– etc. (DOI)
• Autentificación:– HMAC-MD5-96– HMAC-SHA-1-96
Algoritmos de Encripción y AutentificaciónAlgoritmos de Encripción y Autentificación
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
27
Encripción y Autentificación ESPEncripción y Autentificación ESP
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
28
Encripción y Autentificación ESPEncripción y Autentificación ESP
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
29
Un SA puede implementar AH o ESP pero no ambos.Solución: múltiples SA’s.
* = IPSec
Combinaciones de SA’sCombinaciones de SA’s
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
30
* = IPSec
Combinaciones de SA’sCombinaciones de SA’s
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
31
* = IPSec
Combinaciones de SA’sCombinaciones de SA’s
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
32
* = IPSec
Combinaciones de SA’sCombinaciones de SA’s
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
33
• Dos tipos:– Manual
• Administrador.
– Automatizada• Oakley Key Determination Protocol.
– Manejo de claves.
• Internet Security Association and Key Management Protocol (ISAKMP).
– Protocolo de manejo asociado a las claves.
Manejo de ClavesManejo de Claves
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
34
• Presenta tres métodos de autentificación:– Firma digital.
– Criptografía de clave pública.
– Criptografía de clave simétrica.
• Características:– cookies.
– DH para negociar grupos y para intercambio de claves públicas.
– números random (defensa contra replay).
– Autentifica el intercambio DH para evitar ataques MiM.
OakleyOakley
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
35
ISAKMPISAKMP
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
36
• Los standards IPSec recomiendan usar el AH para proteger el ESP
– AH valida las direcciones IP y el contenido del mensaje (payload).
• Si se omite el ESP
– Sin el ESP, es posible el eavesdrop de la información autentificada (es un problema si se reutilizan passwords secretos).
• Si se omite el AH
– Generalmente ESP no protege contra modificación.
– ESP es vulnerable al header cut-and-paste attack
• el atacante saca el ESP de los paquetes e inserta un nuevo ESP destinado a otra máquina (cuando se utiliza el IPSec proxy).
• Una solución es asignar SA’s únicos a diferentes pares de hosts que necesitan comunicarse (horrible para los administradores!).
Uso de Headers y SeguridadUso de Headers y Seguridad
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
37
• Comer, D. Internetworking with TCP/IP, Volume I: Principles, Protocols and Architecture. Prentice Hall, 1995.
• Stevens, W. TCP/IP Illustrated, Volume 1: The Protocols. Addison-Wesley, 1994.
• Stallings, W. Network Security Essentials. Capítulo 6. Prentice Hall, 2000.
Lectura RecomendadaLectura Recomendada
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
39
• La web es una vidriera muy visible.
• El software (complejo) detrás de los servers de web puede ocultar muchos problemas de seguridad.
• Los servers de web son (relativamente) fáciles de configurar y administrar.
• Los usuarios generalemente NO saben acerca de los riesgos que corren en el mundo www.
Consideraciones acerca de laConsideraciones acerca de laSeguridad en la WWWSeguridad en la WWW
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
40
Seguridad en TCP/IPSeguridad en TCP/IP
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
41
• SSL (Secure Socket Layer) fue creado por Netscape.
• SSLv1 fue rápidamente reemplazado por SSLv2.
• SSLv2 tiene algunos problemas de seguridad pero todavía se utiliza.
• PCT fue la respuesta MicroSoft a SSLv2. Arregla algunos de los problemas de SSLv2 pero fue reemplazado por SSLv3.
• El grupo de desarrollo de TLS (Transport Layer Security) se formó dentro del IETF.
• La primer versión de TLS puede verse como SSLv3.1
SSL y TLS: HistoriaSSL y TLS: Historia
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
42
• Permite comunicaciones seguras entre dos computadoras siempre y cuando al menos una de ellas tenga un certificado confiable para la otra (evitando MiM).
• Evita que los desarrolladores de aplicaciones tengan que enfrentar las complejidades y peligros del diseño de criptosistemas.
• Soporta autentificación, encripción e intercambio de claves.
• Conexiones confiables (integridad) vía funciones hash seguras.
• Eficiente, extensible, fácil de integrar.
¿Qué Problemas resuelve SSL?¿Qué Problemas resuelve SSL?
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
43
Arquitectura SSLArquitectura SSL
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
44
Arquitectura SSLArquitectura SSL
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
45
SSL Record ProtocolSSL Record Protocol
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
46
Formato del Registro SSLFormato del Registro SSL
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
47
SSL Record Protocol PayloadSSL Record Protocol Payload
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
48
• Es la parte más compleja de SSL.
• Permite que el server y el cliente se autentifiquen mutuamente.
• Es quien negocia los parámetros de seguridad y las claves criptográficas (crea el Master Secret).
• Los parámetros de seguridad negociados son:
– Protocol version (ej: SSL 3.0, TLS 3.1, etc.).
– CipherSuite (algoritmo criptográfico, algoritmo clave pública, hash. ).
– Compression method (ej: none).
• Se utiliza antes de que la aplicación transmita los datos (obvio).
Handshake Protocol Handshake Protocol (1)(1)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
49
Handshake Protocol Handshake Protocol (2)(2)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
50
1. El cliente envía el msj. ClientHello
2. El server hace un ACK con el msj. ServerHello
3. El server envía su certificado
4. El server solicita al cliente su certificado
5. El cliente envía su certificado
6. El cliente envía el msj. ClientKeyExchange
7. El cliente envía el msj. Certificate Verify
8. Ambos envían msjs. ChangeCipherSpec
9. Ambos envían msjs. Finished
Server Certificate
Clave Privada del Server
Clave Pública del Server
Digital Sig
MasterSecret
ClienteServidor
Handshake Protocol Handshake Protocol (3)(3)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
51
• Objetivo: minimizar el número de SSL handshakes:
– Las operaciones sobre claves privadas son lentas.
– Los round trips de red son lentos (2 por handshake)
• Si dos entidades se comunicaron recientemente ya poseen el MasterSecret. Si las dos partes están de acuerdo, el viejo master secret puede reutilizarse (resuming a session).
• Hack: se agrega estado a un protocolo stateless (http).
• Se puede hacer el resume aún si la sesión padre sigue activa (se hace el resume de las nuevas conexiones).
Handshake Protocol: Handshake Protocol: continuando sesionescontinuando sesiones
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
52
• Cuidado con utilizar criptografía débil! Cuidado con SSL viejo!
Recién habilitado en el 2001 en versiones exportables.
Debilidades de SSLDebilidades de SSL (1)(1)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
53
• Problemas con el Certificado
– no está firmado por una CA (Certificate Authority) confiable.
– Certificado expirado.
– El nombre (DNS) de un sitio coincide con lo que aparece en el certificado.
– Nombres parecidos (www.ebuy.com en vez de www.ebay.com).
• ¿qué está mal aquí?
https://www.company.com/order_form.cgi
<FORM ACTION=“http://www.company.com/process_order.cgi” METHOD=POST>
Debilidades de SSLDebilidades de SSL (2)(2)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
54
• Mismo registro de formato (record format) que en SSL.• Definido en la RFC 2246.• Similar a SSLv3.• Diferencias en:
– número de versión– message authentication code (MAC)– generación de números (pseudo)aleatorios– códigos de alerta– paquetes de cifrado– tipos de certificado del cliente– mensajes certificate_verify y finished– cálculos criptográficos– relleno– pequeñas mejoras después de 2 años de experiencia en el mercado
Transport Layer SecurityTransport Layer Security (TLS) (TLS)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
55
IPv6 vs. SSLIPv6 vs. SSL
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
56
• Es una especificación abierta de encripción y seguridad.
• Creada (1996) para proteger transacciones con tarjeta de crédito sobre la Internet.
• Compañías involucradas:– MasterCard, Visa, IBM, Microsoft, Netscape, RSA,
Terisa y Verisign.
• No es un sistema de pago.• Es un conjunto de protocolos y formatos de
seguridad que le permiten al usuario utilizar su tarjeta de crédito de forma segura.
SecureSecure ElectronicElectronic TransactionsTransactions (SET) (SET)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
57
• Brinda un canal de comunicación seguro en una transacción.
• Provee confianza debido al uso de certificados digitales X.509v3.
• Asegura privacidad.
Servicios Provistos por SETServicios Provistos por SET
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
58
• Confidencialidad de la información– La info. de la transacción viaja segura por la red y el número
de la tarjeta lo obtendrá únicamente el banco. Usa DES.
• Integridad de los datos– Firma digital (RSA) o SHA-1.
• Autentificación del poseedor de la tarjeta– El vendedor puede verificar que es un número correcto de
tarjeta.
• Autentificación del comerciante– El cliente puede verificar que el comerciante tiene una
relación válida con la institución financiera.
Puntos Destacables de SETPuntos Destacables de SET
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
59
Participantes de SETParticipantes de SET
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
60
• El cliente abre una cuenta y tarjeta (VISA, MC, etc) en su banco.• El cliente recibe un certificado (firmado por el banco).• El comerciante tiene sus propios certificados.
– Uno para firmar, otro para intercambio de claves y el certif. público del gate.
• El cliente hace un pedido (orden) en la www del comerciante.• El cliente verifica la autenticidad del comerciante.• La orden y el pago son enviados.
– El comerciante no puede obtener el número de tarjeta del cliente pero verifica su autenticidad.
• El comerciante solicita autorización de pago al gw.• El comerciante le confirma al cliente su orden.• El comerciante envía la orden (mercadería, servicio, etc.).• El comerciante solicita el pago al gw.
Secuencia de Eventos para una SETSecuencia de Eventos para una SET
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
61
H(OI))]||)(([ PIHHEDScKR
Dual SignatureDual Signature
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
62
El dueño de la tarjeta envía un pedido de compra
Proceso de Pago (1)Proceso de Pago (1)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
63
El comerciante verifica el pedido de compra
Proceso de Pago (2)Proceso de Pago (2)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
64
• Autorización del Pago:– Authorization Request– Authorization Response
• Captura del Pago:– Capture Request– Capture Response
Proceso de Pago (3)Proceso de Pago (3)
Seguridad en Sistemas: IPSec - WWWSeguridad en Sistemas: IPSec - WWW
65
• Drew, G. Using SET for Secure Electronic Commerce. Prentice Hall, 1999
• Garfinkel, S., and Spafford, G. Web Security & Commerce. O’Reilly and Associates, 1997
• MasterCard SET site• Visa Electronic Commerce Site• SETCo (documents and glossary of terms)• Stallings, W. Network Security Essentials.
Capítulo 7. Prentice Hall, 2000.
Lectura y Web sites recomendadosLectura y Web sites recomendados