Clase de Seguridad. Capa de (?) 7 de Junio de DC - FCEyN - UBA. (DC - FCEyN - UBA ) Clase de Seguridad 7 de Junio de / 56

56 

Loading....

Loading....

Loading....

Loading....

Loading....

Texto completo

(1)

Clase de Seguridad

Capa de (?)

DC - FCEyN - UBA 7 de Junio de 2016

(2)

Men´

u del d´ıa

1 Introducci´on Referencias Conceptos b´asicos Otros conceptos 2 Modelos de seguridad

Matriz de control de acceso Otros Modelos Firewalls 3 Ejercicio Firewalling Enunciado Soluci´on 4 Criptograf´ıa Conceptos generales Criptograf´ıa cl´asica Criptograf´ıa moderna Manejo de claves 5 Implementaciones Protocolo Mails 6 Ejercicio Criptograf´ıa Enunciado Soluci´on Cerrando

(3)

Introducci´on Referencias

Referencias

Computer Networks: A Systems Approach, Fifth Edition, Peterson. Introduction to Computer Security, Matt Bishop, Addison-Wesley, 2004.

Seguridad de la Informaci´on (http://dc.uba.ar/materias/seginf).

(4)

Introducci´on Conceptos b´asicos

Definici´

on

Seguridad en alg´un punto implica ausencia deriesgo. Esto puede depender de nociones abstractas y sociales como la confianza.

Problema

En las redes, y por sobre todo en la Internet, es muy complejo estar exento de posibles vulnerabilidades. Lo ideal es identificar los riesgos m´as

peligroso respecto a la informaci´on que se desea resguardar y tomar las

medidaspertinentes y factibles seg´un la relaci´on costo / beneficio.

(5)

Introducci´on Conceptos b´asicos

¿Es seguro?

(6)

Introducci´on Conceptos b´asicos

Principales aspectos que ata˜

nen a la seguridad

Confidencialidad. Integridad. Disponibilidad.

Las leyes, coyuntura, individuos y organizaciones definen los diversos grados de riesgoque se puedemitigar o soportar respecto a estos conceptos bajo ciertos entornos.

(7)

Introducci´on Conceptos b´asicos

Confidencialidad

Es elocultamiento o encubrimiento de informaci´on y/o recursos. Los mecanismos de control de accesoson los encargados de preservar este rasgo de la informaci´on. Si son vulnerados o comprometidos, se pierde la propiedad y la confidencialidad es corrompida. A veces es tan o m´as importante proteger el mero conocimiento de la existencia de la informaci´on que el contenido de la misma.

(8)

Introducci´on Conceptos b´asicos

Integridad

Es la prevenci´on para que no sucedan modificaciones impropias o sin

autorizaci´on en la informaci´on. Existe tanto la integridad de losdatos

como la integridad deorigen. Mecanismos de autenticaci´on y control de acceso sirven para atenuar el riesgo de comprometer este rasgo de la informaci´on. Suele ser m´as dificultosa de proveer que la confidencialidad.

(9)

Introducci´on Conceptos b´asicos

Disponibilidad

Concierne la posibilidad deutilizar el recurso o la informaci´on necesaria. Se suelen utilizar mecanismos estad´ısticos sobre patrones de utilizaci´on de datos para asegurar la disponibilidad. Los famosos ataques dedenegaci´on

de servicio apuntan a vulnerar este concepto.

(10)

Introducci´on Otros conceptos

Amenaza

Es una potencialviolaci´on de alg´un rasgo concerniente a la seguridad. No necesariamente tiene que realizarse. Las acciones que permiten que se concrete son denominadas ataques.

Pol´ıticas vs. Mecanismos

Una pol´ıtica o norma de seguridad describe qu´e est´a permitido y qu´e no.

Un mecanismo de seguridad es un m´etodo, herramienta o procedimiento que fuerza el cumplimiento de la pol´ıtica.

(11)

Introducci´on Otros conceptos

Resumiendo...

Dada una especificaci´on (formal o informal) de una pol´ıtica de seguridad describiendo qu´e es seguro o permisible y qu´e no, se deben implementar los mecanismos de seguridad adecuados para prevenir los posibles ataques, o en su defecto detectarlosy poder recuperarse de ellos. Es importante notar que a veces alcanza con simplemente identificar y actuar.

(12)

Modelos de seguridad Matriz de control de acceso

Definici´

on

El estado de protecci´on de un sistema es el conjunto de valoresde los recursos que repercuten en la seguridad del sistema (memoria principal, secundaria, registros, etc.). La matriz de control de acceso es una herramienta que permite describir los estados de protecci´on.

El modelo

Caracterizar los permisos de cada sujetorespecto a cada entidaddel estado de protecci´on. Un ejemplo de este modelo es la matriz de acceso de los sistemas Unix.

(13)

Modelos de seguridad Matriz de control de acceso

Ejemplo

Objetos: File 1, File2, Process 1, Process 2. Sujetos: Process 1, Process 2.

Permisos: Leer, escribir, anexar, ejecutar, ser due˜no de...

(14)

Modelos de seguridad Matriz de control de acceso

Limitaciones

La matriz de control de acceso es el modelo abstractoprincipal para describir modelos de seguridad. Formalmente, es capaz de expresar

cualquier pol´ıtica de seguridad, pero en la pr´actica no sirve porque no

escala. Se usa solo en ciertos casos como el ejemplo anterior donde los objetos y sujetos no son demasiados y tambi´en para an´alisis te´oricos.

(15)

Modelos de seguridad Matriz de control de acceso

Limitaciones te´

oricas

Ser´ıa interesante encontrar un modelo que defina el estado de la m´aquina y luego ejecutar alg´unalgoritmo, que dado un estado responda si ´este es seguro o no. Sin embargo, existe un teoremaque postula que es

indecidible dar a conocer si un estado de protecci´on es seguro dado un

permiso gen´erico.

(16)

Modelos de seguridad Otros Modelos

Bell-LaPadula

Orientado a proveer confidencialidad. La integridad es secundaria. Se definen niveles de seguridad para los objetos y sujetos. Ning´un sujeto puede acceder a objetos que pertenezcan a niveles de seguridad m´as altos que el de si mismo.

(17)

Modelos de seguridad Otros Modelos

Biba, Clark-Wilson

Orientado a proveer integridad. La confidencialidad es secundaria. Se definen niveles de seguridad para los objetos y sujetos. Ning´un sujeto puede escribir a objetos que pertenezcan a niveles de seguridad m´as altos que el de si mismo y leer objetos de niveles inferiores.

(18)

Modelos de seguridad Firewalls

Definici´

on

Conjunto de sistemas encargado de mediar todas las comunicaciones entre dos redes implementando una pol´ıtica de seguridad decontrol de acceso mediante el filtrado de paquetes. Esencialmente verifica cada paquete independientemente de los dem´as y permite o denegado su paso

dependiendo de unconjunto de reglas.

(19)

Modelos de seguridad Firewalls

Definici´

on

(20)

Modelos de seguridad Firewalls

Distintos tipos

Stateless: Utiliza reglas sencillas sobre los mensajes entrantes / salientes del tipo:

<dirorigen,puertoorigen,dirdst,puertodst,protocolo >

Stateful: Mantiene estado de conexiones entrantes o salientes y puede permitir o denegar teniendo en cuenta la sesi´on a la que pertenece.

Gateways de aplicaci´on: Proxy inteligente. Entiende ciertos

protocolos. Sirve para aplicar filtros de capa de aplicaci´on.

(21)

Ejercicio Firewalling Enunciado

Pr´

actica 9

Definir reglas y pol´ıticas de seguridad a implementar en un firewall con estado bajo la siguiente organizaci´on.

(22)

Ejercicio Firewalling Soluci´on

Dato

Servidor de mail usa POP3 e IMAP. Servidor web usa solo HTTP.

El servidor web es aut´onomo, no necesita resolver nombres ni salir a inet.

El servidor de bd solo se usa para los sitios web. Los usuarios de la red interna pueden acceder a:

1 Servidor de mail para env´ıo y recepci´on de correo.

2 Servidor proxy para navegar internet.

3 Servidor web de la intranet de manera directa.

(23)

Ejercicio Firewalling Soluci´on

Esquema

(24)

Ejercicio Firewalling Soluci´on

Reglas

Politica de filtrado por defecto: DROP.

1 <Mail,∗,Internet,25,TCP > 2 <Mail,∗,Internet,53,UDP > 3 <Proxy,,Internet,53,UDP > 4 <Proxy,∗,Internet,80,TCP > 5 <Proxy,∗,Internet,443,TCP > 6 <Internet,∗,Web,80,TCP > 7 <Internet,∗,Mail,25,TCP > 8 <Interna,,Web,80,TCP >

9 <Interna,∗,Proxy,Proxy(8080),TCP > 10 <Interna,∗,Mail,25,TCP >

11 <Interna,∗,Mail,110,TCP > 12 <Interna,∗,Mail,143,TCP >

(25)

Ejercicio Firewalling Soluci´on

Demo

1 Acceder a web server. 2 modprobe ip tables.

3 Bloquear con firewall iptables -A INPUT -p tcp –dport 80 -j REJECT. 4 Bloquear con firewall iptables -A INPUT -p tcp –dport 80 -j REJECT. 5 Bloquear con firewall iptables -A INPUT -p tcp –dport 80 -j DROP. 6 Bloquear una ip: iptables -A INPUT -s 192.168.1.100 -j REJECT . 7 Cambiar pol´ıtica por defecto: iptables -P INPUT DROP.

8 Aceptar conexiones solo al webserver: iptables -A INPUT -p tcp

–dport 80 -j ACCEPT

9 Cambiar A por D para borrar regla. 10 Para limpiar la tabla iptables –flush.

(26)

Criptograf´ıa Conceptos generales

Definici´

on

La criptograf´ıaconsiste en construir y analizar protoc´olos para prevenir

que terceros no deseados tengan acceso a mensajes privados. Para esto se apoya en los conceptos de confidencialidad, integridad, autenticaci´on y no repudio.

Un sistema criptogr´afico es una tupla (E,D,M,K,C) tal que:

M es el conjunto de lostextos v´alidos. K el conjunto declaves.

C es el conjunto de los textos cifrados. E: M x K → C.

D: C x K → M.

(27)

Criptograf´ıa Criptograf´ıa cl´asica

Dos operaciones b´

asicas

Sustituci´on

Consiste en modificar caracteresdel texto plano bajo un modelo uniforme. El ´unico ataque posible es mediante la estad´ıstica, pero es un ataque muy certero. Ejemplos son: Caesar, Vigen`ere y One-time pad.

Transposici´on

Consiste simplemente en reordenar los caracteres. Basicamente son

anagramas. Muy simples de vulnerar a partir de medidas estadisticasy

de frecuenciade aparici´on de caracteres, duplas de caracteres, etc.

Ejemplo: Rail fence

(28)

Criptograf´ıa Criptograf´ıa moderna

Taxonom´ıa

Criptograf´ıa Moderna

Cript. Sim´etrica (clave secreta)

Cifrado de Flujo Cifrado en Bloque Funciones de Hashing MDC (sin clave)

Alcanza para no repudio? integridad? Por qu´e? MAC (con clave)

Alcanza para no repudio? integridad? Por qu´e? Criptograf´ıa Asim´etrica

(29)

Criptograf´ıa Criptograf´ıa moderna

DES

Orientado a bitsy no a caracteres. Usa tanto transposici´on como sustituci´on. Trabaja en bloquesde a 64 bits.

Cada bloque ejecuta 16 iteraciones condistintas claves.

Fue mainstream durante muchos a˜nos. Con el tiempo fue quedando obsoleto el largo de la clave y los ataques por fuerza bruta

comenzaron a ser computacionalmente r´apidos. Tambi´en se le encontraron vulnerabilidades para algunas claves espec´ıficas. 3DES.

AES es recomendado hoy en d´ıa. Claves m´as largas, es m´as r´apido y resuelve las vulnerabilidades encontradas en DES.

(30)

Criptograf´ıa Criptograf´ıa moderna

Conceptos

Diferentesclaves para cifrar y descifrar. A diferencia de los m´etodos

cl´asicos no se debe compartir una clave secreta. Una de las claves es

p´ublicay la otra (secreta) es privada.

Se deben cumplir tres propiedades

Debe ser f´acil cifrar o descifrar dada la clave adecuada.

Debe ser inviable computacionalmente derivar la clave privada a partir de la p´ublica.

Debe ser inviable computacionalmente derivar la clave privada a partir de un texto descifrado.

(31)

Criptograf´ıa Criptograf´ıa moderna

RSA

Los conceptos te´oricos que sustentan este algoritmo son ciertas propiedades matem´aticas respecto a losn´umeros primos(factorizar n´umeros grandes es costoso), m´odulos y exponenciaci´on. Un algoritmo puede encontrar un par de claves, que debido a estas propiedades no son

derivables una de la otra, pero tienen la propiedad de ser lainversa.

(32)

Criptograf´ıa Criptograf´ıa moderna

Diversos usos...

No repudio. Integridad. Confidencialidad.

(33)

Criptograf´ıa Criptograf´ıa moderna

Message digest

Consiste en adosarle al mensaje a enviar un checksum que luego puede ser recomputado y constatado para verificar la integridad (igual que en ip). Para proveer seguridad se usan funciones de hash con clave o se cifran los hash sin clave.

Funciones de hash fuertes (buenas o de ida) h :A→B

Dado x∈A,h(x) es f´acil de computar.

∀y ∈B es inviable encontrar x∈Atq h(x) =y.

Es inviable encontrar x,xˆ∈A tq x<>xˆ yh(x) =h(ˆx).

Nota. inviable significa inviable computacionalmente

(34)

Criptograf´ıa Criptograf´ıa moderna

Mejores algoritmos conocidos actualmente

MD2 MD4 MD5 SHA-1 HAVAL

(35)

Criptograf´ıa Criptograf´ıa moderna

Esquemas que utilizan hashes

HMAC (Keyed-hash Message Authentication Code)

Caracter´ısticas Clave sim´etrica

Brinda integridad y autenticaci´on.

Est´a demostrado que la seguridad de HMAC depende de la funci´on de hash que se utilice (RFC 2104).

Consiste en Hashear el mensaje mezclado con la clave.

HMAC(K,m) =H((K +opad)||H((K +ipad)||m)) con k clave sim´etrica Donde + representa XOR y ||representa concatenaci´on.

(36)

Criptograf´ıa Criptograf´ıa moderna

Esquemas que utilizan hashes

Firma Digital

Caracter´ısticas Clave asim´etrica

Brinda autenticaci´on, no repudio e integridad.

Consiste en Hashear el mensaje y encriptar el resultado con la clave privada del emisor.

Necesita los siguientes elementos

Algoritmo para generar el par de claves (privada y p´ublica)

Algoritmo firmante que dado un mensaje y una clave genere una firma Algoritmo para verificar la firma que dado un mensaje, una clave p´ublica y una firma puede aceptar o rechazar la misma.

(37)

Criptograf´ıa Manejo de claves

Tipos de claves

Claves de intercambio: Asociadas a un ente (m´aquina / persona). Claves de sesi´on: Asociadas a una comunicaci´on.

Se usan claves de sesi´on nuevas por cada comunicaci´on permitiendo disminuir las posibilidades de ataques estad´ısticos.

(38)

Criptograf´ıa Manejo de claves

Generar clave de sesi´

on

Trusted Third Party (TTS) Confiar en un tercero (Cathy)

1 Alice → Cathy:{ Request de clave de Sesi´on con Bob }KAlice 2 Cathy → Alice:{Kses }KAlice || {Kses}KBob

3 AliceBob:{ Kses }KBob

Kerberos

Es un servicio que provee claves de sesi´on basado en el algoritmo anterior. En la realidad es bastante m´as complejo ya que evita el

man-in-the-middle o otras posibles vulnerabilidades.

(39)

Criptograf´ıa Manejo de claves

Generar clave de sesi´

on

Criptograf´ıa de clave p´ublica

Alice → Bob: Alice, { {Kses } DAlice }EBob

Se asume que:

Alice tiene la clave p´ublica de Bob Bob tiene la clave p´ublica de Alice

Desaf´ıos

La cuesti´on m´as importante es la validaci´on y manejo de las claves p´ublicas y privadas.

(40)

Criptograf´ıa Manejo de claves

Certificados

Aparecen los certificadosque b´asicamente son relaciones entre claves p´ublicas y cierta entidad. Para darle validez a estos certificados se conf´ıa

enautoridades certificanteso cadenas de confianza.

X.509v3 es el est´andar de que define los formatos de certificados (RFC

6818 la ´ultima versi´on).

(41)

Criptograf´ıa Manejo de claves

Certificado X.509

(42)

Criptograf´ıa Manejo de claves

Demo Certificados

1 Browser. 2 Binary:

1 openssl s client -showcerts -connect host:443</dev/null 2>/dev/null|

openssl x509 -outform PEM>mycertfile.pem

2 openssl x509 -in mycertfile.pem -text -noout

(43)

Implementaciones Protocolo

¿En qu´

e nivel?

(44)

Implementaciones Protocolo

TLS

Versi´on actualizada de SSL (Secure Sockets Layer).

La ´ultima versi´on de SSL (Netscape) fue 3.0

TLS se identifica como SSL v 3.1. Similar, pero no compatible directamente.

Especificado en RFC 2246 (1999). Muchas actualizaciones: RFC 6176 (2011).

Protege una sesi´on entre cliente y servidor. El caso m´as conocido es HTTP (navegador y web server).

Requiere protocolo de transporte confiable, por ejemplo TCP.

(45)

Implementaciones Protocolo

Servicios

Autenticaci´on.

Del servidor frente el cliente

Opcionalmente, del cliente frente al servidor.

Mediantecertificadosde clave p´ublica.

Integridad.

MedianteMAC.

Confidencialidad. Opcional.

Mediantecifradocon algoritmo sim´etrico.

(46)

Implementaciones Protocolo

Handshake SSL

Se negocianlos algoritmos a utilizar durante la conexi´on.

Se autentica al servidor o los dos entes.

Se genera un canal seguro para definir unamaster key. Se derivan las claves necesarias a partir de la master.

Se constata laintegridadde todos los mensajes de intercambio de claves.

Ejercicio

¿Qu´e informaci´on tienen disponible ambos extremos antes de iniciar el handshake?

Describa una posible implementaci´on de un handshake para establecer una conexi´on segura.

(47)

Implementaciones Protocolo

A alto nivel

(48)

Implementaciones Protocolo

Pregunta integradora

Acceder´ıan a su home banking, asumiendo por supuesto que est´a implementado sobre la capa TLS (HTTPS), desde el wifi abierto de una plaza p´ublica?

(49)

Implementaciones Protocolo

SSH

Es un protocolo para acceder a m´aquinas remotas de manera segura Alternativa segura a Telnet y Ftp.

Provee autenticaci´on, confidencialidad e integridad.

Permite hacer cosas m´as avanzadas como redirigir la salida de aplicaciones a trav´es de canales seguros (port forwarding). Ese es un caso particular de t´uneles seguros.

Las fases SSH son similares a las fases TLS.

(50)

Implementaciones Protocolo

Handshake SSH a alto nivel

(51)

Implementaciones Protocolo

unel SSH

Sirven para:

proteger claves de protocolos inseguros (FTP, Telnet, IMAP). Atravesar Firewalls (si permiten ssh).

Acceder a servicios internos de una LAN con ip privadas.

(52)

Implementaciones Mails

Seguridad en correos electr´

onicos

Dos esquemas:

PGP

Confidencialidad y autenticaci´on.

La gesti´on de claves se basa en un esquema de confianza.

S/MIME

Certificados X509 y PKI (Public Key Infrastructure). Utiliza firma digital y encriptaci´on

Provee confidencialidad, integridad y autenticaci´on.

(53)

Implementaciones Mails

Ejemplo PGP

(54)

Ejercicio Criptograf´ıa Enunciado

Ejercicio 13

Dada la siguiente red se pide:

1 Describir un criptosistema de manera informal para garantizar la

autenticidad del Proxy y del servidor de la intranet. Enumere los elementos utilizados y explique c´omo esta soluci´on impide ataques de

Man in the middle. Si hacen falta cambios en las tablas de firewalling

descr´ıbalos.

(55)

Ejercicio Criptograf´ıa Soluci´on

Varias opciones

1 HTTPS. Hay que distribuir los certificados necesarios para que

funcione TLS en las m´aquinas involucradas.

Firewall 1: allow<lan,∗,dmz,443,tcp>.

2 unel SSH. Hay que elegir alguna de las formas para usarlo y actuar en

consecuencia. Por ejemplo, si se elige autenticaci´on por medio de clave

p´ublica/privada se deben distribuir las mismas en todas las m´aquinas

involucradas.

Firewall 1: allow<lan,∗,dmz,ssh,tcp>.

3 Agregar certificados a los servers de la DMZ para quefirmenlos

mensajes.

Se necesita clave p´ublica y privada para el server.

Crear nuevo servicio que encapsule los mensajes del protocolo original dentro de un mensaje firmado.

Certificado en todos los hosts con la clave p´ublica del server.

Firewall 1: allow<lan,∗,dmz,nuevo servicio,tcp>.

(56)

Ejercicio Criptograf´ıa Cerrando

¿Repasando...?

¿Dudas?,

¿Preguntas?

Figure

Actualización...

Referencias

Actualización...

Related subjects :