Seguridad en los sistemas distribuidos

36
Seguridad en Los Seguridad en Los Sistemas Sistemas Distribuidos Distribuidos PUA Mascheroni, Maximiliano PUA Mascheroni, Maximiliano Agustín Agustín

description

Complejidad de la seguridad informática. Mecanismos, técnicas y herramientas como la criptografía para poder combatir con la gran variedad de amenazas existentes y brindar una mayor seguridad en los Sistemas Distribuidos.

Transcript of Seguridad en los sistemas distribuidos

Page 1: Seguridad en los sistemas distribuidos

Seguridad en Los Seguridad en Los Sistemas DistribuidosSistemas Distribuidos

PUA Mascheroni, Maximiliano AgustínPUA Mascheroni, Maximiliano Agustín

Page 2: Seguridad en los sistemas distribuidos

IntroducciónIntroducciónEn la actualidad, las organizaciones son cada En la actualidad, las organizaciones son cada vez más dependientes de los sistemas vez más dependientes de los sistemas distribuidos.distribuidos.La falta de medidas de seguridad en las redes La falta de medidas de seguridad en las redes es un problema que está en crecimiento.es un problema que está en crecimiento.Los "incidentes de seguridad" crecen a la par de Los "incidentes de seguridad" crecen a la par de la masificación del Internet y de la complejidad la masificación del Internet y de la complejidad del software desarrollado.del software desarrollado.La propia complejidad de la red es una dificultad La propia complejidad de la red es una dificultad para la detección y corrección de los múltiples y para la detección y corrección de los múltiples y variados problemas de seguridad que van variados problemas de seguridad que van apareciendo.apareciendo.

Page 3: Seguridad en los sistemas distribuidos

Políticas de seguridadPolíticas de seguridad

En la actualidad, la seguridad informática ha adquirido En la actualidad, la seguridad informática ha adquirido gran auge, dadas las cambiantes condiciones y las gran auge, dadas las cambiantes condiciones y las nuevas plataformas de computación disponiblesnuevas plataformas de computación disponibles..Consecuentemente, muchas organizaciones Consecuentemente, muchas organizaciones gubernamentales y no gubernamentales internacionales gubernamentales y no gubernamentales internacionales han desarrollado documentos y directrices que orientan han desarrollado documentos y directrices que orientan en el uso adecuado deen el uso adecuado de mecanismos de seguridad. mecanismos de seguridad.Las políticas de seguridad informática surgen como una Las políticas de seguridad informática surgen como una herramienta organizacional para concientizar a cada uno herramienta organizacional para concientizar a cada uno de los miembros de una organización sobre la de los miembros de una organización sobre la importancia y la sensibilidad de la información y importancia y la sensibilidad de la información y servicios críticos que favorecen el desarrollo de la servicios críticos que favorecen el desarrollo de la organización y su buen funcionamientoorganización y su buen funcionamiento..

Page 4: Seguridad en los sistemas distribuidos

Las políticas de seguridad son planes de Las políticas de seguridad son planes de acciones o documentos que se utilizan acciones o documentos que se utilizan como herramienta organizacional como herramienta organizacional para para afrontar riesgos de seguridad.afrontar riesgos de seguridad.

La distinción entre ellas y los mecanismos La distinción entre ellas y los mecanismos de seguridad es de utilidad cuando se de seguridad es de utilidad cuando se diseñan sistemas seguros, pero no es fácil diseñan sistemas seguros, pero no es fácil estar seguro de que cierto conjunto de estar seguro de que cierto conjunto de mecanismos de seguridad implementan mecanismos de seguridad implementan completamente las políticas de seguridad completamente las políticas de seguridad deseadas.deseadas.

Page 5: Seguridad en los sistemas distribuidos

Amenazas y AtaquesAmenazas y Ataques

En la mayoría de los tipos de redes locales es fácil En la mayoría de los tipos de redes locales es fácil construir un programa sobre un computador conectado construir un programa sobre un computador conectado para que obtenga copias de los mensajes transmitidos para que obtenga copias de los mensajes transmitidos entre computadores.entre computadores.La principal meta de la seguridad es restringir el acceso La principal meta de la seguridad es restringir el acceso a la información y los recursos de modo que sólo tengan a la información y los recursos de modo que sólo tengan acceso aquellos que estén autorizados.acceso aquellos que estén autorizados.Las amenazas de seguridad se dividen en tres clases: Las amenazas de seguridad se dividen en tres clases: • • FugaFuga: la adquisición de información por receptores no : la adquisición de información por receptores no autorizados. autorizados. • • AlteraciónAlteración: la modificación no autorizada de : la modificación no autorizada de información. información. • • VandalismoVandalismo: interferencia en el modo de operación : interferencia en el modo de operación adecuado de un sistema, sin ganancia para el adecuado de un sistema, sin ganancia para el responsable.responsable.

Page 6: Seguridad en los sistemas distribuidos

Los ataques en los sistemas distribuidos dependen de la Los ataques en los sistemas distribuidos dependen de la obtención de acceso a los canales de comunicación.obtención de acceso a los canales de comunicación.Los métodos de ataque pueden clasificarse en función Los métodos de ataque pueden clasificarse en función del modo en que se abusa del canal:del modo en que se abusa del canal:• • FisgarFisgar: : obtener copias sin autorización. obtener copias sin autorización. • • SuplantarSuplantar:: enviar o recibir mensajes utilizando la enviar o recibir mensajes utilizando la identidad de otro sin su autorización. identidad de otro sin su autorización. • • AlterarAlterar mensajesmensajes: : interceptar mensajes y alterar sus interceptar mensajes y alterar sus contenidos antes de pasarlos al receptor. contenidos antes de pasarlos al receptor. • • ReenviarReenviar:: almacenar mensajes interceptados y almacenar mensajes interceptados y enviarlos más tarde. enviarlos más tarde. • • Denegación de servicioDenegación de servicio:: desbordar un canal o desbordar un canal o recurso para impedir que otros accedan a él.recurso para impedir que otros accedan a él.• • Ataques desde código móvilAtaques desde código móvil: Varios lenguajes de : Varios lenguajes de programación, han sido diseñados para permitir la programación, han sido diseñados para permitir la descarga de programas desde servidores remotos y así descarga de programas desde servidores remotos y así lanzar procesos que se ejecutan localmente. En este lanzar procesos que se ejecutan localmente. En este caso, las interfaces internas y los objetos del interior de caso, las interfaces internas y los objetos del interior de un proceso en ejecución pueden quedar expuestos a un un proceso en ejecución pueden quedar expuestos a un ataque por código móvil.ataque por código móvil.

Page 7: Seguridad en los sistemas distribuidos

Cuando se diseñó Internet y los sistemas Cuando se diseñó Internet y los sistemas conectados a ella, la seguridad no era una conectados a ella, la seguridad no era una prioridad.prioridad.Los diseñadores probablemente no tenían Los diseñadores probablemente no tenían un concepto adecuado de la escala en un concepto adecuado de la escala en que crecería Internet.que crecería Internet.La incorporación de medidas de seguridad La incorporación de medidas de seguridad requiere ser cuidadoso con la etapa de requiere ser cuidadoso con la etapa de diseño.diseño. Los mecanismos de seguridad no pueden Los mecanismos de seguridad no pueden protegernos contra una clave de acceso protegernos contra una clave de acceso mal elegida o custodiadamal elegida o custodiada

Page 8: Seguridad en los sistemas distribuidos

Seguridad de las Transacciones Seguridad de las Transacciones ElectrónicasElectrónicas

Muchas aplicaciones de Internet en la Muchas aplicaciones de Internet en la industria, el comercio y demás implican industria, el comercio y demás implican transacciones que dependen de la transacciones que dependen de la seguridad, como ser:seguridad, como ser: E-mailE-mail Compra de bienes y serviciosCompra de bienes y servicios TransaccionesTransacciones bancarias bancarias Micro-transaccionesMicro-transacciones

Page 9: Seguridad en los sistemas distribuidos

Una política de seguridad sensata para Una política de seguridad sensata para vendedores y compradores de Internet exige los vendedores y compradores de Internet exige los siguientes requisitos:siguientes requisitos:

1) Autenticación del vendedor al comprador. 1) Autenticación del vendedor al comprador. 2) Mantenimiento del número de tarjeta de crédito y 2) Mantenimiento del número de tarjeta de crédito y

otros detalles del comprador bajo secreto, y asegurar otros detalles del comprador bajo secreto, y asegurar que se transmiten de forma inalterada del comprador que se transmiten de forma inalterada del comprador al vendedor. al vendedor.

3) Si los bienes se encuentran en una forma útil para su 3) Si los bienes se encuentran en una forma útil para su descarga, asegurar que su contenido llega al descarga, asegurar que su contenido llega al comprador sin alteración y sin ser desvelados a comprador sin alteración y sin ser desvelados a terceras partes. terceras partes.

4) Autenticar la identidad del titular de la cuenta hacia el 4) Autenticar la identidad del titular de la cuenta hacia el banco antes de darle acceso a su cuenta. banco antes de darle acceso a su cuenta.

Page 10: Seguridad en los sistemas distribuidos

CriptografíaCriptografía

La criptografía proporciona la base para la mayoría de La criptografía proporciona la base para la mayoría de los sistemas de seguridad de los computadoreslos sistemas de seguridad de los computadores..La encriptación es el proceso de codificación de un La encriptación es el proceso de codificación de un mensaje de forma que queden ocultos sus contenidosmensaje de forma que queden ocultos sus contenidos..La criptografía moderna incluye algunos algoritmos La criptografía moderna incluye algunos algoritmos seguros de encriptación y desencriptación de mensajes. seguros de encriptación y desencriptación de mensajes. Todos ellos se basan en el uso de ciertos secretos Todos ellos se basan en el uso de ciertos secretos llamados claves.llamados claves. Una clave criptográfica es un parámetro empleado en un Una clave criptográfica es un parámetro empleado en un algoritmo de encriptación de manera que no sea algoritmo de encriptación de manera que no sea reversible sin el conocimiento de una clave.reversible sin el conocimiento de una clave.

Page 11: Seguridad en los sistemas distribuidos

Hay dos clases principales de algoritmos Hay dos clases principales de algoritmos de encriptación de uso general:de encriptación de uso general: Con uso de Con uso de claves secretas compartidas:claves secretas compartidas:

donde el emisor y el receptor deben compartir donde el emisor y el receptor deben compartir el conocimiento de una clave y ésta no debe el conocimiento de una clave y ésta no debe ser revelada a ningún otro. ser revelada a ningún otro.

Con uso de pares de claves Con uso de pares de claves pública/privada: pública/privada: donde el emisor de un donde el emisor de un mensaje emplea una clave pública, difundida mensaje emplea una clave pública, difundida previamente por el receptor para encriptar el previamente por el receptor para encriptar el mensaje, es decir, el receptor emplea la clave mensaje, es decir, el receptor emplea la clave privada correspondiente para desencriptar el privada correspondiente para desencriptar el mensaje.mensaje.

Page 12: Seguridad en los sistemas distribuidos

FINES DE LA CRIPTOGRAFÍAFINES DE LA CRIPTOGRAFÍA

La criptografía juega tres papeles principales en La criptografía juega tres papeles principales en la implementación de los sistemas seguros:la implementación de los sistemas seguros: Secreto e integridadSecreto e integridad: : se emplea para mantener el se emplea para mantener el

secreto y la integridad de la información dondequiera secreto y la integridad de la información dondequiera que pueda estar expuesta a ataques potenciales.que pueda estar expuesta a ataques potenciales.

Autenticación:Autenticación: La criptografía se emplea como base La criptografía se emplea como base de los mecanismos para autenticar la comunicación de los mecanismos para autenticar la comunicación entre pares de principales.entre pares de principales.

Firmas digitalesFirmas digitales:: Ésta emula el papel de las firmas Ésta emula el papel de las firmas convencionales, verificando a una tercera parte que convencionales, verificando a una tercera parte que un mensaje o un documento es una copia inalterada un mensaje o un documento es una copia inalterada producida por el firmante.producida por el firmante.

Page 13: Seguridad en los sistemas distribuidos

ALGORITMOS CRIPTOGRÁFICOS:ALGORITMOS CRIPTOGRÁFICOS:

Un mensaje puede encriptarse mediante la Un mensaje puede encriptarse mediante la aplicación de alguna regla que transforme el aplicación de alguna regla que transforme el texto clarotexto claro del mensaje a un del mensaje a un texto cifrado o texto cifrado o criptogramacriptograma (esto lo realiza el emisor). (esto lo realiza el emisor). El receptor debe conocer la regla inversa para El receptor debe conocer la regla inversa para transformar el texto cifrado en el texto original, transformar el texto cifrado en el texto original, mientras que el resto de los principales deben mientras que el resto de los principales deben ser incapaces de descifrar el mensaje, a menos ser incapaces de descifrar el mensaje, a menos que conozcan esta regla inversa. que conozcan esta regla inversa. La transformación de encriptación se define La transformación de encriptación se define mediante dos elementos: una mediante dos elementos: una función Efunción E y una y una clave K.clave K. El mensaje resultante encriptado se El mensaje resultante encriptado se escribe escribe {M}k.{M}k.

E(K,M)E(K,M) = = {M}k{M}k

Page 14: Seguridad en los sistemas distribuidos

La función de encriptación La función de encriptación EE define un algoritmo define un algoritmo que transforma los datos de texto en datos que transforma los datos de texto en datos encriptados al combinarlos con la clave y encriptados al combinarlos con la clave y transformándolos de un modo que depende transformándolos de un modo que depende fuertemente del valor de la clave.fuertemente del valor de la clave.La desencriptación se lleva a cabo empleando La desencriptación se lleva a cabo empleando una función inversa D, que también toma como una función inversa D, que también toma como parámetro una clave:parámetro una clave:

D(K, E(K, M))=M D(K, E(K, M))=M Debido a este uso simétrico de las claves, a Debido a este uso simétrico de las claves, a menudo se habla de la criptografía de clave menudo se habla de la criptografía de clave secreta como secreta como criptografía simétrica,criptografía simétrica, mientras mientras que la criptografía de clave pública se denomina que la criptografía de clave pública se denomina asimétrica asimétrica debido a que las claves empleadas debido a que las claves empleadas para el encriptadopara el encriptado y el desencriptado son y el desencriptado son diferentes.diferentes.

Page 15: Seguridad en los sistemas distribuidos

Algoritmos simétricos:Algoritmos simétricos: Si eliminamos de la Si eliminamos de la consideración el parámetro de la clave y definimos consideración el parámetro de la clave y definimos Fk([M])Fk([M]) = = E(K, M),E(K, M), una propiedad de las funciones de una propiedad de las funciones de encriptación robustas es que Fk([M])encriptación robustas es que Fk([M]) sea relativamente sea relativamente fácil de calcular, mientras que la inversa, Fk-1([M]) sea fácil de calcular, mientras que la inversa, Fk-1([M]) sea tan difícil de calcular que no sea factible.tan difícil de calcular que no sea factible.Algoritmos asimétricos:Algoritmos asimétricos: Cuando se emplea un par de Cuando se emplea un par de claves pública / privada, las funciones de un solo sentido claves pública / privada, las funciones de un solo sentido se explotan de otra forma. La base de todos los se explotan de otra forma. La base de todos los esquemas es la existencia de esquemas es la existencia de funciones de puerta falsa.funciones de puerta falsa.Cifradores de bloque.Cifradores de bloque. La mayoría de los algoritmos de La mayoría de los algoritmos de encriptación operan sobre bloques de datos de tamaño encriptación operan sobre bloques de datos de tamaño fijado:fijado: 64 64 bits es un tamaño de bloque popular. Cada bits es un tamaño de bloque popular. Cada mensaje se subdivide en bloques, el último bloque se mensaje se subdivide en bloques, el último bloque se rellena hasta la longitud estándar si fuera necesario y rellena hasta la longitud estándar si fuera necesario y cada bloque se encripta independientemente. El primer cada bloque se encripta independientemente. El primer bloque está listo para ser transmitido tan pronto como bloque está listo para ser transmitido tan pronto como haya sido encriptado.haya sido encriptado.

Page 16: Seguridad en los sistemas distribuidos

Diseño de algoritmos criptográficos:Diseño de algoritmos criptográficos: Existen muchos Existen muchos algoritmos criptográficos bien diseñados tales que algoritmos criptográficos bien diseñados tales que E(K, E(K, M)M) = = {M}k{M}k oculta el valor de oculta el valor de MM y resulta prácticamente y resulta prácticamente imposible recuperar imposible recuperar KK con mejor éxito que el que con mejor éxito que el que proporciona la fuerza bruta. proporciona la fuerza bruta. Todos los algoritmos de encriptación se apoyan en Todos los algoritmos de encriptación se apoyan en manipulaciones que preservan la información de manipulaciones que preservan la información de MM y y emplean principios basados en la teoría de la emplean principios basados en la teoría de la información que describe los principios de información que describe los principios de confusiónconfusión y y difusión difusión para el ocultamiento del contenido del bloque para el ocultamiento del contenido del bloque de criptograma de criptograma M,M, combinándolo con una clave combinándolo con una clave KK de de tamaño suficiente para ponerlo a prueba de ataques por tamaño suficiente para ponerlo a prueba de ataques por fuerza bruta.fuerza bruta.Confusión:Confusión: Las operaciones de carácter no destructivo Las operaciones de carácter no destructivo como XOR y el desplazamiento circular se emplean para como XOR y el desplazamiento circular se emplean para combinar cada bloque de texto en claro con la clave, combinar cada bloque de texto en claro con la clave, produciendo un nuevo patrón de bits que oscurece la produciendo un nuevo patrón de bits que oscurece la relación entre los bloques de relación entre los bloques de MM y los de y los de {M}k.{M}k.Difusión:Difusión: disipa la existencia de patrones regulares disipa la existencia de patrones regulares mediante la transposición de partes de cada bloque de mediante la transposición de partes de cada bloque de texto en clarotexto en claro

Page 17: Seguridad en los sistemas distribuidos

ALGORITMOS DE CLAVE SECRETA (SIMÉTRICOS)ALGORITMOS DE CLAVE SECRETA (SIMÉTRICOS)

TEA: se ha escogido por la simplicidad de su diseño e TEA: se ha escogido por la simplicidad de su diseño e implementación. implementación. DES: ha sido un estándar nacional de los EE.UU., DES: ha sido un estándar nacional de los EE.UU., aunque su interés es histórico dado que sus claves deaunque su interés es histórico dado que sus claves de 5656 bits son demasiado reducidas para resistir un ataque bits son demasiado reducidas para resistir un ataque por fuerza bruta con el hardware actual. por fuerza bruta con el hardware actual. IDEA: emplea una clave deIDEA: emplea una clave de 128 128 bits y es, bits y es, probablemente, el algoritmo de encriptación simétrico de probablemente, el algoritmo de encriptación simétrico de bloques más efectivo y una elección muy acertada para bloques más efectivo y una elección muy acertada para el encriptado en masa.el encriptado en masa.AES: AES: también conocido como Rijndael, es un esquema también conocido como Rijndael, es un esquema de cifrado por bloques adoptado como un estándar de de cifrado por bloques adoptado como un estándar de cifrado por el gobierno de los Estados Unidos.cifrado por el gobierno de los Estados Unidos.

Page 18: Seguridad en los sistemas distribuidos

TEATEA

Los principios de diseño para los algoritmos simétricos que se Los principios de diseño para los algoritmos simétricos que se delinearon anteriormente se ven ilustrados en delinearon anteriormente se ven ilustrados en Tiny Encryption Tiny Encryption AlgorithmAlgorithm (TEA, pequeño algoritmo de encriptación). (TEA, pequeño algoritmo de encriptación).Emplea vueltas de sumas enteras, XOR y desplazamientos lógicos Emplea vueltas de sumas enteras, XOR y desplazamientos lógicos de bits, para obtener la difusión y confusión de los patrones de bits de bits, para obtener la difusión y confusión de los patrones de bits en el texto en claro. El texto en claro es un bloque de 64 bits en el texto en claro. El texto en claro es un bloque de 64 bits representado como dos enteros de 32 bits en el vector de texto [ ]. representado como dos enteros de 32 bits en el vector de texto [ ]. La clave tiene 128 bits representada como cuatro enteros de 32 La clave tiene 128 bits representada como cuatro enteros de 32 bits. bits. Esta clave es segura contra los ataques de fuerza bruta.Esta clave es segura contra los ataques de fuerza bruta.En cada una de las 32 etapas, se combinan repetidamente las dos En cada una de las 32 etapas, se combinan repetidamente las dos mitades del texto con porciones desplazadas de la clave y entre sí mitades del texto con porciones desplazadas de la clave y entre sí en las líneas 5 y 6 el empleo de XOR sobre porciones del texto en las líneas 5 y 6 el empleo de XOR sobre porciones del texto desplazada introduce confusión y el desplazamiento e intercambio desplazada introduce confusión y el desplazamiento e intercambio de las dos porciones del texto introduce difusión. de las dos porciones del texto introduce difusión. La función de desencriptado es la inversa de función de La función de desencriptado es la inversa de función de encriptación. encriptación.

Page 19: Seguridad en los sistemas distribuidos

DESDES

El Estándar de Encriptación de Datos El Estándar de Encriptación de Datos (Data Encryption (Data Encryption Standar)Standar), es el más usado para aplicaciones , es el más usado para aplicaciones gubernamentales y de negocios.gubernamentales y de negocios.En este estándar la función de encriptación proyecta un En este estándar la función de encriptación proyecta un texto en claro de 64 bits usando una clave de 56 bits.texto en claro de 64 bits usando una clave de 56 bits.El algoritmo tiene 16 etapas dependientes de claves El algoritmo tiene 16 etapas dependientes de claves conocidas como conocidas como Vueltas Vueltas en las que el dato a encriptar en las que el dato a encriptar se rota bit a bit un número de veces que depende de la se rota bit a bit un número de veces que depende de la clave y tres transposiciones no dependientes de la clave.clave y tres transposiciones no dependientes de la clave.A pesar de que aún se emplea en muchas aplicaciones A pesar de que aún se emplea en muchas aplicaciones comerciales y de otro tipo, DES, en su forma básica, comerciales y de otro tipo, DES, en su forma básica, debe considerarse obsoleta para la protección de debe considerarse obsoleta para la protección de aquello que no sea información de bajo interés. aquello que no sea información de bajo interés.

Page 20: Seguridad en los sistemas distribuidos

IDEAIDEA

El Algoritmo de Encriptación de Datos Internacional El Algoritmo de Encriptación de Datos Internacional (International Data Encription Algorithm,(International Data Encription Algorithm, IDEA) se IDEA) se desarrolló a comienzos de los años noventa como desarrolló a comienzos de los años noventa como sucesor del DES.sucesor del DES.Como TEA, emplea una clave deComo TEA, emplea una clave de 128 128 bits para encriptar bits para encriptar bloques debloques de 64 64 bits. bits.El algoritmo se basa en el álgebra de grupos y tiene El algoritmo se basa en el álgebra de grupos y tiene ocho vueltas XOR, suma módulo 216 y multiplicación. ocho vueltas XOR, suma módulo 216 y multiplicación. Tanto DES como IDEA emplean una misma función para Tanto DES como IDEA emplean una misma función para la encriptación y desencriptación: una propiedad útil para la encriptación y desencriptación: una propiedad útil para los algoritmos que han de implementarse en hardware.los algoritmos que han de implementarse en hardware.La resistencia de IDEA ha sido analizada extensamente La resistencia de IDEA ha sido analizada extensamente y no se han encontrado debilidades significativas, realiza y no se han encontrado debilidades significativas, realiza la encriptación y desencriptación a una velocidad tres la encriptación y desencriptación a una velocidad tres veces superior que la de DES.veces superior que la de DES.

Page 21: Seguridad en los sistemas distribuidos

AESAES

EnEn 1997, 1997, el Instituto Nacional para los Estándares y la el Instituto Nacional para los Estándares y la Tecnología (NIST) publicó una invitación para remitir Tecnología (NIST) publicó una invitación para remitir propuestas de un algoritmo seguro y eficiente que seria propuestas de un algoritmo seguro y eficiente que seria adoptado como nuevo Estándar de Encriptación adoptado como nuevo Estándar de Encriptación Avanzada (Advanced Encryption Standard, AES) Avanzada (Advanced Encryption Standard, AES) La comunidad de investigación sobre criptografía remitió La comunidad de investigación sobre criptografía remitió quince algoritmos como respuesta a la invitación inicial quince algoritmos como respuesta a la invitación inicial para el AES. Tras una intensa inspección técnica se para el AES. Tras una intensa inspección técnica se seleccionaron cinco de ellos para la siguiente fase de seleccionaron cinco de ellos para la siguiente fase de evaluación. Todos los candidatos soportaban claves deevaluación. Todos los candidatos soportaban claves de 128, 192128, 192 y y 256256 bits, siendo todos ellos de altas bits, siendo todos ellos de altas prestaciones. La evaluación concluyó en mayo del añoprestaciones. La evaluación concluyó en mayo del año 2000,2000, cuando se seleccionó un estándar preliminar cuando se seleccionó un estándar preliminar. .

Page 22: Seguridad en los sistemas distribuidos

ALGORITMOS DE CLAVE PÚBLICAALGORITMOS DE CLAVE PÚBLICA (ASIMÉTRICOS) (ASIMÉTRICOS)

Hasta la fecha sólo se han desarrollado unos pocos Hasta la fecha sólo se han desarrollado unos pocos esquemas prácticos de clave pública y estos dependen esquemas prácticos de clave pública y estos dependen del uso de funciones de puerta falsa de números del uso de funciones de puerta falsa de números grandes para producir las clavesgrandes para producir las claves..RSA: RSA: (Rivest, Snamir y Adelman) es un algoritmo cuyo (Rivest, Snamir y Adelman) es un algoritmo cuyo diseño para el encriptador de clave pública, se basa en diseño para el encriptador de clave pública, se basa en el uso del producto de dos números primos muy grandes el uso del producto de dos números primos muy grandes (mayores que 10^100).(mayores que 10^100).Algoritmos de curvas elípticas: Algoritmos de curvas elípticas: Un algoritmo puede Un algoritmo puede generar pares de claves pública/ privada basándose en generar pares de claves pública/ privada basándose en las propiedades de las curvas elípticas. Las claves que las propiedades de las curvas elípticas. Las claves que derivan de una rama diferente de las matemáticas, y a derivan de una rama diferente de las matemáticas, y a diferencia de RSA su seguridad no dependen de la diferencia de RSA su seguridad no dependen de la dificultad de la factorización de números grandes. En dificultad de la factorización de números grandes. En cambio las claves cortas son seguras, y los requisitos de cambio las claves cortas son seguras, y los requisitos de procesamiento para la encriptación y la desencriptación procesamiento para la encriptación y la desencriptación son menores.son menores.

Page 23: Seguridad en los sistemas distribuidos

PROTOCOLOS CRIPTOGRÁFICOS HÍBRIDOSPROTOCOLOS CRIPTOGRÁFICOS HÍBRIDOS

La criptografía de clave pública es apropiada para el La criptografía de clave pública es apropiada para el comercio electrónico porque no hay necesidad de un comercio electrónico porque no hay necesidad de un mecanismo de distribución segura de claves. mecanismo de distribución segura de claves. La criptografía de clave pública demanda costos La criptografía de clave pública demanda costos elevados para la encriptación incluso de mensajes de elevados para la encriptación incluso de mensajes de tamaño medio como los que se encuentran tamaño medio como los que se encuentran habitualmente en el comercio electrónico. habitualmente en el comercio electrónico. La solución adoptada en los sistemas distribuidos de La solución adoptada en los sistemas distribuidos de gran escala es el empleo de un esquema de gran escala es el empleo de un esquema de encriptación híbrido en el que se emplea criptografía de encriptación híbrido en el que se emplea criptografía de clave pública para autentificar cada parte y para clave pública para autentificar cada parte y para encriptar un intercambio de claves secretas, que se encriptar un intercambio de claves secretas, que se emplearán para toda la comunicación subsiguiente.emplearán para toda la comunicación subsiguiente.

Page 24: Seguridad en los sistemas distribuidos

FIRMAS DIGITALESFIRMAS DIGITALES

Una firma digital robusta es un requisito esencial Una firma digital robusta es un requisito esencial para los sistemas seguros. Se las necesita para para los sistemas seguros. Se las necesita para certificar ciertos trozos de información, por certificar ciertos trozos de información, por ejemplo, para proporcionar enunciados dignos ejemplo, para proporcionar enunciados dignos de confianza que relacionan identidades de de confianza que relacionan identidades de usuarios con claves públicas.usuarios con claves públicas.Las firmas manuscritas necesitan verificar que Las firmas manuscritas necesitan verificar que éste es:éste es: AutenticoAutentico: convence al receptor de que el firmante : convence al receptor de que el firmante

firmó deliberadamente el documento y que la firma no firmó deliberadamente el documento y que la firma no ha sido alterado por nadie.ha sido alterado por nadie.

InfalsificableInfalsificable: aporta la prueba de que el firmante : aporta la prueba de que el firmante firmó el documento.firmó el documento.

NoNo repudiablerepudiable: el firmante no puede negar de forma : el firmante no puede negar de forma creíble que el documento fue firmado por él.creíble que el documento fue firmado por él.

Page 25: Seguridad en los sistemas distribuidos

CertificadosCertificadosUn certificado digital es un documento que contiene una Un certificado digital es un documento que contiene una sentencia (generalmente corta) firmada por un principal.sentencia (generalmente corta) firmada por un principal.Se emplean para establecer la autenticidad de muchos Se emplean para establecer la autenticidad de muchos tipos de enunciados.tipos de enunciados.Para que los certificados sean útiles se requieren dos Para que los certificados sean útiles se requieren dos cosas:cosas:

Un formato estándar y una representación para ellos de modo Un formato estándar y una representación para ellos de modo que los emisores de certificados y los usuarios de certificados que los emisores de certificados y los usuarios de certificados puedan construirlos e interpretarlos. puedan construirlos e interpretarlos.

Un acuerdo sobre la forma en que se construyen las cadenas de Un acuerdo sobre la forma en que se construyen las cadenas de certificados, y en particular la noción de autoridad fiable.certificados, y en particular la noción de autoridad fiable.

El principal inconveniente es la dificultad al elegir una El principal inconveniente es la dificultad al elegir una autoridad fiable de donde pueda arrancar una cadena de autoridad fiable de donde pueda arrancar una cadena de autenticaciones. autenticaciones. La elección de una autoridad dependerá del objetivo para La elección de una autoridad dependerá del objetivo para el que se necesite el certificado.el que se necesite el certificado.

Page 26: Seguridad en los sistemas distribuidos

CredencialesCredencialesLas credenciales son un conjunto de evidencias Las credenciales son un conjunto de evidencias presentadas por un principal cuando pide presentadas por un principal cuando pide acceso a un recursoacceso a un recurso..

Las credenciales basadas en funciones parecen Las credenciales basadas en funciones parecen especialmente útiles en el diseño de esquemas especialmente útiles en el diseño de esquemas de control de acceso prácticos.de control de acceso prácticos.

Los conjuntos de credenciales basadas en Los conjuntos de credenciales basadas en funciones se definen para las organizaciones o funciones se definen para las organizaciones o para tareas cooperativas, y los derechos de para tareas cooperativas, y los derechos de acceso de nivel de aplicación se construyen con acceso de nivel de aplicación se construyen con referencia a ellas. referencia a ellas.

Page 27: Seguridad en los sistemas distribuidos

DelegaciónDelegación

Una forma particularmente útil de credencial es aquella que Una forma particularmente útil de credencial es aquella que permite a un principal, o proceso actuando para un permite a un principal, o proceso actuando para un principal, realizar una acción con la autoridad de otro principal, realizar una acción con la autoridad de otro principal (puede aparecer en cualquier situación donde un principal (puede aparecer en cualquier situación donde un servicio necesite acceder a un recurso protegido para servicio necesite acceder a un recurso protegido para completar una acción en representación de su clientecompletar una acción en representación de su cliente))..Se puede conseguir la delegación utilizando un certificado Se puede conseguir la delegación utilizando un certificado de delegación o una habilitación.de delegación o una habilitación.El certificado está firmado por el principal solicitante y El certificado está firmado por el principal solicitante y autoriza a otro principal para acceder a un recurso con autoriza a otro principal para acceder a un recurso con nombre.nombre.La habilitación es un conjunto codificado e infalsificable de La habilitación es un conjunto codificado e infalsificable de derechos de acceso al recurso logrando el mismo resultado derechos de acceso al recurso logrando el mismo resultado sin necesidad de identificar a los principales.sin necesidad de identificar a los principales.Cuando se delegan derechos, es común restringirse a un Cuando se delegan derechos, es común restringirse a un subconjunto de los derechos que posee el principal que lo subconjunto de los derechos que posee el principal que lo emite, de este modo el principal delegado no podrá abusar emite, de este modo el principal delegado no podrá abusar de ellos.de ellos.

Page 28: Seguridad en los sistemas distribuidos

CortafuegosCortafuegos

Es una parte del sistema o de la red que está diseñada Es una parte del sistema o de la red que está diseñada para bloquear el acceso no autorizado, permitiendo al para bloquear el acceso no autorizado, permitiendo al mismo tiempo comunicaciones autorizadas.mismo tiempo comunicaciones autorizadas.Con ellos se protege una intranet, se realizan acciones Con ellos se protege una intranet, se realizan acciones de filtrado en las comunicaciones entrantes y salientes.de filtrado en las comunicaciones entrantes y salientes.El empleo de cortafuegos no ofrece protección contra El empleo de cortafuegos no ofrece protección contra los ataques desde el interior de una organización, y es los ataques desde el interior de una organización, y es ciertamente tosco en el control del acceso externo.ciertamente tosco en el control del acceso externo.En consecuencia existe una necesidad de mecanismos En consecuencia existe una necesidad de mecanismos de seguridad de un grano más fino, que permitan a los de seguridad de un grano más fino, que permitan a los usuarios individuales compartir información con otros usuarios individuales compartir información con otros usuarios seleccionados sin comprometer la privacidad y usuarios seleccionados sin comprometer la privacidad y la integridad.la integridad.Los cortafuegos no son particularmente útiles contra Los cortafuegos no son particularmente útiles contra ataques de denegación de serviciosataques de denegación de servicios,, basado en la basado en la suplantación de direcciones IP.suplantación de direcciones IP.

Page 29: Seguridad en los sistemas distribuidos

Diseño de Sistemas Distribuidos Diseño de Sistemas Distribuidos SegurosSeguros

El objetivo del diseñador es excluir todos los posibles El objetivo del diseñador es excluir todos los posibles ataques y agujeros.ataques y agujeros.La situación es análoga a la del programador cuyo La situación es análoga a la del programador cuyo principal objetivo es excluir todos los errores de su principal objetivo es excluir todos los errores de su programa.programa.En ningún caso existe un método concreto para asegurar En ningún caso existe un método concreto para asegurar las metas durante el diseño.las metas durante el diseño.Cada uno diseña con los mejores estándares disponibles Cada uno diseña con los mejores estándares disponibles y aplica un análisis informal y comprobaciones y aplica un análisis informal y comprobaciones Una vez que un diseño esté completo, una opción es la Una vez que un diseño esté completo, una opción es la validación formal. validación formal. Cuando se diseña para seguridad es necesario pensar Cuando se diseña para seguridad es necesario pensar siempre en lo peor.siempre en lo peor.

Page 30: Seguridad en los sistemas distribuidos

Premisas del peor caso posiblePremisas del peor caso posible

Las interfaces están desprotegidasLas interfaces están desprotegidas

Las redes son insegurasLas redes son inseguras

Límite en el tiempo de vida y el alcance de cada Límite en el tiempo de vida y el alcance de cada secretosecreto

Los algoritmos y el código de los programas Los algoritmos y el código de los programas están disponibles para los atacantesestán disponibles para los atacantes

Los atacantes tienen acceso a suficientes Los atacantes tienen acceso a suficientes recursosrecursos

Minimícese la base de confianzaMinimícese la base de confianza

Page 31: Seguridad en los sistemas distribuidos

Recomendaciones de seguridad en Recomendaciones de seguridad en sistemas distribuidos de cómputosistemas distribuidos de cómputoEfectuar un análisis de riesgosEfectuar un análisis de riesgosLo más valioso debe alejarse de lo más Lo más valioso debe alejarse de lo más vulnerablevulnerableMantener las cosas simplesMantener las cosas simplesAsegurar la seguridad en todos los nivelesAsegurar la seguridad en todos los nivelesEncriptar tanto como sea posibleEncriptar tanto como sea posibleNo confiar en la autenticación estándarNo confiar en la autenticación estándarNo usar la configuración "estándar“No usar la configuración "estándar“La seguridad hacia el interiorLa seguridad hacia el interiorEducar a los usuarios Educar a los usuarios

Page 32: Seguridad en los sistemas distribuidos

No confiar (totalmente) en nosotros mismosNo confiar (totalmente) en nosotros mismosEjecutar sólo los servicios imprescindiblesEjecutar sólo los servicios imprescindiblesMantenerse al día con las actualizacionesMantenerse al día con las actualizacionesEscaneos regularesEscaneos regularesDescargas de software de Internet Descargas de software de Internet Establecer planes de contingencia y sistemas de Establecer planes de contingencia y sistemas de respaldorespaldoMantener contacto con el proveedor de líneas de Mantener contacto con el proveedor de líneas de comunicacióncomunicaciónNo permitir conexiones directas desde la red No permitir conexiones directas desde la red interna a Internet interna a Internet Uso de red perimétrica o zona desmilitarizada Uso de red perimétrica o zona desmilitarizada Prácticas de programación segura Prácticas de programación segura VigilanciaVigilanciaEstablecimiento de políticas de seguridadEstablecimiento de políticas de seguridad

Page 33: Seguridad en los sistemas distribuidos

Sistemas de detección de intrusosSistemas de detección de intrusosLos Sistemas de detección de intrusos (IDS) son una de las Los Sistemas de detección de intrusos (IDS) son una de las tecnologías de más rápido crecimiento dentro del espacio tecnologías de más rápido crecimiento dentro del espacio de seguridad. de seguridad. Un sistema de detección de intrusos, es un programa Un sistema de detección de intrusos, es un programa usado para detectar accesos no autorizados a un usado para detectar accesos no autorizados a un computador o a una red.computador o a una red.Estos accesos pueden ser ataques de habilidosos hackers, Estos accesos pueden ser ataques de habilidosos hackers, o de Script Kiddies que usan herramientas automáticas.o de Script Kiddies que usan herramientas automáticas.Se basa en el análisis pormenorizado del tráfico de red, el Se basa en el análisis pormenorizado del tráfico de red, el cual al entrar al analizador es comparado con firmas de cual al entrar al analizador es comparado con firmas de ataques conocidos, o comportamientos sospechosos, como ataques conocidos, o comportamientos sospechosos, como puede ser el escaneo de puertos, paquetes malformados, puede ser el escaneo de puertos, paquetes malformados, etc. El IDS no sólo analiza qué tipo de tráfico es, sino que etc. El IDS no sólo analiza qué tipo de tráfico es, sino que también revisa el contenido y su comportamiento.también revisa el contenido y su comportamiento.Desafortunadamente, muchas empresas tienen dificultades Desafortunadamente, muchas empresas tienen dificultades para ponerlos en uso debido a su complejidad de la para ponerlos en uso debido a su complejidad de la implementación y la falta de información sobre su posible implementación y la falta de información sobre su posible usouso

Page 34: Seguridad en los sistemas distribuidos

Sistemas de prevención de intrusosSistemas de prevención de intrusos

Un Sistema de Prevención de Intrusos (IPS) es un Un Sistema de Prevención de Intrusos (IPS) es un dispositivo que ejerce el control de acceso en una red dispositivo que ejerce el control de acceso en una red informática para proteger a los sistemas informática para proteger a los sistemas computacionales de ataques y abusos.computacionales de ataques y abusos.La tecnología de Prevención de Intrusos es considerada La tecnología de Prevención de Intrusos es considerada por algunos como una extensión de los Sistemas de por algunos como una extensión de los Sistemas de Detección de Intrusos (IDS), pero en realidad es otro Detección de Intrusos (IDS), pero en realidad es otro tipo de control de acceso, más cercano a las tecnologías tipo de control de acceso, más cercano a las tecnologías cortafuegos.cortafuegos.Los IPS presentan una mejora importante sobre las Los IPS presentan una mejora importante sobre las tecnologías de cortafuegos tradicionales, al tomar tecnologías de cortafuegos tradicionales, al tomar decisiones de control de acceso basados en los decisiones de control de acceso basados en los contenidos del tráfico, en lugar de direcciones IP o contenidos del tráfico, en lugar de direcciones IP o puertos. puertos.

Page 35: Seguridad en los sistemas distribuidos

ConclusiónConclusión

La carencia del control de la seguridad de las redes es La carencia del control de la seguridad de las redes es un tema que cada vez tiene una envergadura menor. un tema que cada vez tiene una envergadura menor. El número de atacantes crece notablemente, y van El número de atacantes crece notablemente, y van adquiriendo día a día habilidades más especializadas adquiriendo día a día habilidades más especializadas que les permiten obtener mayores beneficiosque les permiten obtener mayores beneficiosLa seguridad de la red requiere ir más allá de lograr que La seguridad de la red requiere ir más allá de lograr que los sistemas simplemente funcionen bien. Se requiere los sistemas simplemente funcionen bien. Se requiere creatividad (ser un cerrajero original), ciertas aptitudes creatividad (ser un cerrajero original), ciertas aptitudes de legislador (para proponer políticas adecuadas), así de legislador (para proponer políticas adecuadas), así como un considerable conocimiento de la tecnología como un considerable conocimiento de la tecnología involucrada. Una dosis de paranoia puede ser involucrada. Una dosis de paranoia puede ser indispensable.indispensable.

Page 36: Seguridad en los sistemas distribuidos

BibliografíaBibliografíaGeorge Coulouris. Sistemas Distribuidos. George Coulouris. Sistemas Distribuidos. Addison Addison Wesley. 3º EdiciónWesley. 3º EdiciónCoulouris Dolumore. Coulouris Dolumore. Sistemas Distribuidos. Capítulo 7. Sistemas Distribuidos. Capítulo 7. Páginas (235 - 289). 3º EdiciónPáginas (235 - 289). 3º EdiciónRoger S. Presuman. Ingeniería de Software. McGraw-Roger S. Presuman. Ingeniería de Software. McGraw-Hill. 5º EdiciónHill. 5º EdiciónA. S. Tanenbaum. Sistemas Operativos Distribuidos. A. S. Tanenbaum. Sistemas Operativos Distribuidos. Prentice HallPrentice HallRules definition for anomaly based intrusion detection. Rules definition for anomaly based intrusion detection. V1.1. Lubomir NistorV1.1. Lubomir NistorIntrusion Prevention Systems “Minimizando la ventana Intrusion Prevention Systems “Minimizando la ventana de riesgo”. de riesgo”. Alex Quintieri FernándezAlex Quintieri FernándezSecuring the Broker Pattern. Patrick Morrison and Securing the Broker Pattern. Patrick Morrison and Eduardo B. Fernandez. Eduardo B. Fernandez. Dept. of Computer Science & Engineering, Florida Dept. of Computer Science & Engineering, Florida Atlantic University.Atlantic University.