Capítulo 8 Seguridad en Redes

Slides:



Advertisements
Presentaciones similares
Universidad De Valencia
Advertisements

Jorge de Nova Segundo UD4: Instalación y administración de servicios Web Seguridad del protocolo HTTP.
SEGURIDAD EN INTERNET EQUIPO No. 1 TELECOMUNICACIONES II Seguridad de Redes Seguridad de Redes Protección al proceso mediante el cual la información es.
Curso de Seguridad Informática
PROTOCOLO SEGURO HTTPS
- Firma digital y cifrado de mensajes.
CIFRADO DE FLUJO.
Unidad 8 Capa de PRESENTACIÓN
Que es el protocolo “SSL”
Trabajo de redes Inma Gómez Durán
Redes I Unidad 7.
Protocolos de seguridad en redes inalámbricas Universidad Carlos III de Madrid Protocolos de Comunicaciones para Sistemas Móviles Saulo Barajas 7jun04.
Seguridad en las redes de computadores
Seguridad del protocolo HTTP
Capítulo 8 Seguridad en Redes WEP, FW, IDS
EL CORREO ELECTRONICO. Introducción : El correo electrónico es el servicio de Internet con más usuarios de todo el mundo. Con este servicio se pueden.
2da. Parte Capítulos 5-12: Transmisión de Paquetes
Seguridad Informática y Criptografía Material Docente de Libre Distribución Ultima actualización: 02/03/04 Archivo con 13 diapositivas Jorge Ramió Aguirre.
VPN - Red privada virtual
Lissette Oteiza María Angélica Seguel Saul Gajardo
Capítulo 7 Seguridad en las redes de computadores Nota sobre el uso de estas diapositivas ppt: Proporcionamos estas diapositivas de forma gratuita para.
Práctica I – Cifrado. Cifrado  Cifrado simétrico  Cifrado asimétrico.
Criptografía de clave privada: Cifrado de Vernam o “one-time pad”
(Organización y Manejo de Archivos)
Seguridad en Internet.
8.6-1 Capítulo 8, Sección 8.6: IPsec Material basado en el Texto: Computer Networking: A Top Down Approach Featuring the Internet, Jim Kurose, Keith Ross.
Criptografía de clave pública
SEGURIDAD DE REDES CARRERA DE INGENIERÍA DE SISTEMAS Ing. Moisés Toapanta, MSc. Guayaquil, junio del 2014.
6: Redes Inalámbricas y Móviles6-1 Capítulo 6 redes inalámbricas y móviles Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition.
1 Capítulo 21: Interacción Cliente Servidor ICD 327: Redes de Computadores Agustín J. González.
Seguridad Informática WALC 2002 ¿ Que es seguridad informática? Seguridad Informática es el conjunto de reglas, planes y acciones que permiten asegurar.
Capítulo 8 Seguridad en Redes Generalidades y Principios Basado en: Computer Networking: A Top Down Approach, 5 th edition. Jim Kurose, Keith Ross Addison-Wesley,
Tema 3 – Técnicas de Acceso Remoto y Seguridad Perimetral
CRIPTOGRAFÍA BÁSICA Juan Jesús Bru Castro.
Capa de enlace.
Gestión de Negocios Tema XVIII: La Empresa Digital, negocios en línea y Comercio Electrónico.
Capítulo 8 Seguridad en Redes Conexiones TCP Seguras: SSL Basado en: Computer Networking: A Top Down Approach 5 th edition. Jim Kurose, Keith Ross Addison-Wesley,
HERRAMIENTAS DE SEGURIDAD
¿Qué es esto? / /
Capa Transporte3-1 Capítulo 3: Capa transporte ELO322: Redes de Computadores Agustín J. González Este material está basado en el material preparado como.
Capa de Red4-1 Capítulo 4: Capa Red - IV ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo al texto Computer.
Que es la criptografia Es el arte o ciencia de cifrar y descifrar información mediante técnicas especiales. Empleada frecuentemente para permitir un intercambio.
TECNOLOGÍAS DE SEGURIDAD CIFRADO Y AUTENTICACIÓN RODRIGUEZ ROBLEDA ALBERTO.
Tema 2 – Implantación de mecanismos de seguridad activa
Seguridad Informática y Criptografía Material Docente de Libre Distribución Ultima actualización: 03/03/03 Archivo con 14 diapositivas Jorge Ramió Aguirre.
CONCEPTOS DE REDES Y PUERTOS MAS CONOCIDOS
PROTOCOLO SSL ERIKA JAZMÍN GUERRERO BARAJAS MÓNICA ELIZABETH VÉLEZ LUNA.
Técnicas de cifrado. Clave pública y clave privada:
Computer Networking: A Top Down Approach. Jim Kurose, Keith Ross.
Seguridad del protocolo HTTP:
Certificación Digital
Técnicas de cifrado. Clave pública y clave privada Gabriel Montañés León.
Integrantes : Eduardo Gutiérrez Droguett Yoshio Jujihara Astorga Eduardo Becerra Olivares Nicolás Ibarra Betanzo Johan Contreras Ramírez Profesor: Luis.
algoritmo de cifrado RSA
Protocolo ssl. Introducción El protocolo SSL (Secure Sockets Layer) fue diseñado con el objeto de proveer privacidad y confiabilidad a la comunicación.
Por: Juan Giovanny Lima González.
Capítulo 5: Capa Enlace de Datos - I
Técnicas de cifrado. Clave pública y clave privada:
Firma Electrónica Eduardo Chiara Galván
Unidad 4. Servicios de acceso remoto
SEGURIDAD EN LA CONEXIÓN CON REDES PÚBLICAS. Técnicas de Cifrado: El cifrado es un método que permite aumentar la seguridad de un mensaje o de un archivo.
TALLER DE DESARROLLO WEB
El protocolo SSL (Secure Sockets Layer) fue diseñado con el objeto de proveer privacidad y confiabilidad a la comunicación entre dos aplicaciones. Este.
Guardando el secreto Protección de datos.
María Guadalupe Moreno Rodríguez protocolo SSL María yessenia Ríos Duran 305.
Capítulo 8 Seguridad en Redes:
Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 1 Seguridad en Redes, Enfoque hacia Criptografía Miguel Jimeno, Ph.D. Departamento.
Criptografía. La criptografía (del griego κρύπτω krypto, «oculto», y γράφω griego graphos, «escribir», literalmente «escritura oculta») es el arte o arte.
Para generar una transmisión segura de datos, debemos contar con un canal que sea seguro, esto es debemos emplear técnicas de forma que los datos que.
Capítulo 8, Sección 8.6: IPsec
Transcripción de la presentación:

Capítulo 8 Seguridad en Redes Generalidades y Principios Basado en: Computer Networking: A Top Down Approach , Jim Kurose, Keith Ross Addison-Wesley 1

Capítulo 8 contenidos 8.1 ¿Qué es la seguridad en la red? 8.2 Principios de criptografía 8.3 Integridad de mensajes 8.4 Dando seguridad a e-mail 8.5 Conexiones TCP seguras: SSL 8.6 Seguridad en capa de Red: IPsec 8.7 Seguridad en redes locales inalámbricas 8.8 Cortafuegos y Sistemas de detección de intrusión (IDS) Esta clase 2

¿Qué es la seguridad en la Red? 4 servicios básicos: Confidencialidad Autenticación Integridad del Mensaje Acceso y disponibilidad No nos referiremos aquí a la seguridad física de los recintos computacionales y redes que también forman parte de la seguridad de una red. 3

¿Qué es la seguridad en la Red? Confidencialidad: sólo el Tx y Rx deseado deberían “entender” el contenido del mensaje Tx encripta el mensaje Rx decripta el mensaje Autenticación: Tx y Rx requieren confirmar la identidad del otro. Integridad del Mensaje: Tx y Rx desean asegurar que el mensaje no sea alterado sin ser detectado Acceso y disponibilidad: servicio debe estar accesible y disponible a los usuarios. 4

Amigos y enemigos: Alicia, Bob, Trudy Bob, Alice desean comunicarse con “seguridad” Trudy (intruso) podría interceptar, borrar, agregar mensajes 5

¿Qué puede hacer un atacante? Mucho espiar: interceptar mensajes Insertar activamente mensajes en la conexión Suplantación de Identidad: puede fingir la dirección fuente del paquete (u otro campo) secuestro: capturar la conexión en curso removiendo el Tx o Rx poniéndose a sí mismo en su lugar Denegación de servicio: impedir que el servicio pueda ser usado por otros (e.g., sobrecargando el servicio o recursos usados por éste) 6

¿Quiénes pueden ser Bob y Alice? … dos personas! Navegador y servidor Web en comercio electrónico Cliente/ servidor en bancos en línea Servidores DNS Routers intercambiando tablas de ruteo Otros ejemplos? 7

Capítulo 8 contenidos 8.1 ¿Qué es la seguridad en la red? 8.2 Principios de criptografía 8.3 Integridad de mensajes 8.4 Dando seguridad a e-mail 8.5 Conexiones TCP seguras: SSL 8.6 Seguridad en capa de Red: IPsec 8.7 Seguridad en redes locales inalámbricas 8.8 Cortafuegos y Sistemas de detección de intrusión (IDS) 8

Términos en Criptografía KA(m) m KB(KA(m))=m m mensaje legible KA(m) texto cifrado, encriptado con clave KA m = KB(KA(m)) Cuando KA = KB hablamos de sistema de clave simétrica, en otro caso es sistema de clave pública.

Esquema de encriptación simple Cifrado por sustitución: se sustituye una cosa por otra Cifrado mono-alfabético: sustituye una letra por otra Texto legible: abcdefghijklmnopqrstuvwxyz Texto cifrado: mnbvcxzasdfghjklpoiuytrewq E.g.: Texto legible: bob. i love you. alice Texto cifrado: nkn. s gktc wky. mgsbc Clave: El mapa de 26 letras al otro de 26 letras. Problema: es muy simple de descubrir decodificación.

Ruptura de un esquema de encriptación Ataque basado en texto legible conocido: atacante tiene algo de texto legible correspondiente a texto cifrado. eg, en cifrado mono-alfabético atacante determina pares Ataque por texto legible seleccionado: el atacante se las ingenia para conseguir que Tx envíe un texto conocido que él verá en su forma encriptada. Ataque basado sólo en texto cifrado: atacante tiene texto cifrado para analizar. Dos estrategias: Buscar sobre todas las claves: debe ser capaz de distinguir texto resultante de incoherencias Análisis estadístico

Encriptación Poli-alfabética Usando n cifrados mono-alfabéticos: M1,M2,…,Mn Más patrón cíclico: e.g., n=4, M1,M3,M4,M3,M2; M1,M3,M4,M3,M2; Para cada símbolo en texto plano nuevo, usar el patrón mono-alfabético subsecuente en el ciclo. utfsm: u desde M1, t de M3, f de M4, s de M3, .. Clave: los n cifrados y el patrón cíclico.

Tipos de criptografías más modernos Criptografía normalmente usa un algoritmo conocido por todos y sólo las claves son secretas. Criptografía de clave simétrica usa una clave. También llamado cifrado simétrico Criptografía de clave pública usa dos claves. También llamado cifrado asimétrico

Dos tipos de cifrado simétrico Cifrado de bloques Se divide el mensaje legible en bloques de igual tamaño. Encriptar cada bloque como una unidad. Cifrado de flujo de símbolos básicos Encriptación de un bit a la vez.

Cifradores de Bloques El mensaje es procesado en bloques de k bits (e.g., bloques de 64 bit). Se usa mapeo 1-a-1 para mapear k bit del texto a k bits cifrados. Ejemplo con k=3: input output 000 110 001 111 010 101 011 100 input output 100 011 101 010 110 000 111 001 ¿Cuál es el texto cifrado para 010110001111 ?

Cifrado de Bloques ¿Cuántos mapeos existen para K=3? ¿Cuántos bloques de 3 bits? ¿Cuántos mapeos podemos hacer? ( son las permutaciones posibles) Respuesta: 40.320 ; No muchas En general, 2k! mapeos; muchos para k=64 Problema: Si lo hacemos por tablas, se requiere tablas de 264 entradas, cada entrada con 64 bits Tabla muy grande, en su lugar conviene usar una función que simule una tabla de permutación aleatoria.

Ej: Función prototipo Mapeo de 8-bit a 8-bit

¿Por qué iteramos en la función? Si iteráramos sólo una vez, un cambio de un bit en la entrada sólo alteraría 8 bits de salida. En 2° ciclo, los 8 bits afectados se dispersan afectando a otros. ¿Cuántos ciclos? Depende del tamaño del bloque, Se requieren más ciclos (menos eficiente) conforme k aumenta. Inconveniente: Iguales textos de entrada generan un mismo texto cifrado.

Cifrado de grandes mensajes Una idea para evitar problema previo es: Generar un número aleatorio de 64 bits r(i) para cada bloque de texto m(i) Calcular c(i) = KS( m(i)  r(i) ) Transmitir ambos: c(i), r(i), i=1,2,… En receptor: m(i) = KS(c(i))  r(i) Problema: ineficiente, se debe enviar c(i) y r(i) Esto da origen al Cifrado de Bloques en Cadena

Cifrado de Bloques en Cadena (CBC) CBC genera sus propios números aleatorios Hace depender el cifrado del bloque actual y del resultado del bloque previo c(i) = KS( m(i)  c(i-1) ) m(i) = KS(c(i))  c(i-1) ¿Cómo se encripta el primer bloque? Usamos un vector de inicialización (Initialization Vector): bloque aleatorio= c(0) El Vector de Inicialización (IV) puede no ser secreto. Cambio de IV por cada mensaje (o sesión) Garantiza que si el mensaje es enviado varias veces el cifrado será diferente.

Ventaja de Cifrado de Bloques en Cadena Sólo Cifrado de Bloques: Si la entrada se repite, obtengo igual salida. m(1)=“HTTP/1.1” c(1) = “k329aM02” t=1 block cipher … m(17)=“HTTP/1.1” c(17) = “k329aM02” block cipher t=17 Cifrado de Bloques en Cadena: XOR imo bloque de entrada, m(i), con cifrado del texto previo, c(i-1) c(0) es transmitido al receptor Analizar caso “HTTP/1.1” previo. m(i) + c(i-1) block cipher c(i) 21

Caso DES: Cifrado de clave simétrica DES: Data Encryption Standard Estándar americano de 1993 Clave de 56-bit, 64-bit plaintext input Usa Cifrado de bloques de 64 bits en cadena ¿Cuán seguro es DES? Desafío DES: mensaje encriptado con clave de 56- bit fue descifrada en menos que un día a fuerza bruta. DES más seguro: 3DES: encripta 3 veces con diferentes claves (en realidad encripta, descifra, vuelve a encriptar)

DES Operación de DES Permutación inicial 16 ciclos idénticos pero usando una clave de 48 bits diferente Permutación final

AES: Advanced Encryption Standard Nuevo estándar de clave simétrica (Nov. 2001), remplaza a DES Bloques de datos son de 128 bits Usa claves de 128, 192, ó 256 bits Si desencriptado a fuerza bruta tomara 1 segundo en DES, tomará 149 trillones de años en AES

Algo sobre Cifrado de flujo pseudo random Generador de flujo key keystream Combina cada bit del flujo de clave con el texto legible y obtiene el texto cifrado. m(i) = imo bit del texto legible ks(i) = imo bit del flujo keystream c(i) = imo bit del texto cifrado c(i) = ks(i)  m(i) ( = or-exclusivo) m(i) = ks(i)  c(i)

Ej: RC4 usa cifrado de flujo RC4 es un cifrador de flujo popular. Ha sido analizado y considerado bueno. Key puede ser de 1 a 256 bytes Es usado en WEP de 802.11 (Wired Equivalent Privacy) Puede ser usado en SSL (Secure Sockets Layer)

Cifrado de Clave Pública: el otro tipo de cifrado Tx y Rx no comparten clave secreta Clave pública de cifrado es conocida por todos Clave privada de descifrado sólo es conocida por Rx. Cifrado simétrico Requiere Tx y Rx conocer secreto compartido ¿Cómo ponerse de acuerdo si no nos conocemos?

Cifrado de Clave Pública

RSA: Algoritmo de Rivest, Shamir, Adelson Algoritmos de Clave Pública Requerimientos: Se requiere K+B ( ) y K-B( ) tal que 1 K-B (K+B (m)) = m Conocida la clave pública K+B debería ser imposible obtener la clave privada K-B( ) 2 RSA: Algoritmo de Rivest, Shamir, Adelson

Pre-requisito: Aritmética modular Propiedades: (a+b) mod n = [(a mod n) + (b mod n)] mod n (a-b) mod n = [(a mod n) - (b mod n)] mod n (a*b) mod n = [(a mod n) * (b mod n)] mod n Así ad mod n = (a mod n)d mod n Ejemplo: x=14, n=10, d=2 xd = 142 = 196 => xd mod 10 = 6 (x mod n)d mod n = 42 mod 10 = 6

RSA: generalidades Un mensaje es un patrón de bits Un patrón de bits puede ser unívocamente interpretado como un número entero. Cifrar un mensaje es como cifrar un número. Ejemplo: m= 10010001 . Equivale al decimal 145. Para cifrar m, ciframos el número correspondiente.

RSA: Debemos crear el par clave pública y privada Procedimiento: 1. Elegir 2 números primos grandes p, q. (e.g., 1024 bits cada uno) 2. Obtenga n = pq, z = (p-1)(q-1) 3. Elija e (con e<n) tal que no tenga factores comunes con z (e, z son “primos relativos”). 4. Elija d tal que ed-1 es exactamente divisible por z. (en otras palabras: ed mod z = 1) 5. Así la clave pública es (n,e) y la clave privada es (n,d). En linux podemos crear la clave privada con: $ openssl genrsa -out mykey.pen $ openssl rsa -in mykey.pen -pubout

RSA: Cifrado, descifrado 0. Dado (n,e) y (n,d) obtenidos como antes 1. Para encriptar mensaje m (<n), obtener c = me mod n 2. Para descifrar lo recibido, c, calcular m = cd mod n La razón de que esto funcione es: m = (me mod n)d mod n c

¿Por qué RSA funciona? Se debe demostrar que cd mod n = m donde c = me mod n Propiedad (no demostrada aquí): para cualquier x , y tenemos xy mod n = x(y mod z) mod n ; donde n= pq y z= (p-1)(q-1) Así, cd mod n = (me mod n)d mod n = med mod n = m(ed mod z) mod n = m1 mod n = m

Bob elige p=5, q=7. entonces n=35, z=24. RSA ejemplo: Bob elige p=5, q=7. entonces n=35, z=24. e=5 (así e, z son primos relativos). d=29 (así ed-1 = 144 es divisible exactamente por z). Cifremos un mensaje de 8-bit e c = m mod n e mensaje m m Cifrado: 00001100 12 24832 17 c d m = c mod n d c Descifrado: 17 12 481968572106750915091411825223071697

RSA: Otra propiedad importante Será útil luego: K-B(K+B(m)) = m = K+B(K-B(m)) Usa clave pública primero Usa clave privada primero El Resultado es el mismo

¿Por qué K-B(K+B(m)) = m = K+B(K-B(m)) ? Se obtiene de la aritmética modular: (me mod n)d mod n = med mod n = mde mod n = (md mod n)e mod n

¿Por qué RSA es seguro? Supongamos que conocemos la clave pública de alguien (n,e). ¿Será difícil determinar d? Se requiere encontrar factores de n sin conocer los factores p y q Un hecho: factorizar grandes números es difícil.

Claves de sesión Potenciación es computacionalmente intensivo DES es al menos 100 veces más rápido que RSA Clave de sesión, KS Bob y Alice usan RSA para intercambiar una clave simétrica KS Luego con KS, usan cifrado de clave simétrica; mucho más rápido.

Capítulo 8 contenidos 8.1 ¿Qué es la seguridad en la red? 8.2 Principios de criptografía 8.3 Integridad de mensajes 8.4 Dando seguridad a e-mail 8.5 Conexiones TCP seguras: SSL 8.6 Seguridad en capa de Red: IPsec 8.7 Seguridad en redes locales inalámbricas 8.8 Cortafuegos y Sistemas de detección de intrusión (IDS) 40