El control de acceso.docx

35
Seguridad El último punto en el área de desarrollo de los sistemas distribuidos es la seguridad pero por ese motivo no es menos importante, pero se puede decir que es uno de los más difíciles, debido a que una pequeña falla en el diseño con respecto a la seguridad, haría inútil a todas las medidas tomadas. La seguridad se aplica siempre y cuando se sepa que tipos de mecanismos van a ser usados para que tipos de amenazas. La seguridad se divide en dos partes, primero en la comunicación entre usuarios y procesos que principalmente están en máquinas diferentes, y se rige en función a los canales seguros que se les brinda. Segundo, la seguridad se basa en la autorización, lo cual se refiere a los permisos que poseen los procesos para acceder a ciertos recursos. Cuando hablamos de canales seguros y autorización se debe requerir mecanismos de distribución de claves criptográficas. Amenazas, políticas y mecanismos de seguridad. En un sistema de cómputo cuando hablamos de seguridad está fuertemente relacionado con la confiabilidad, un sistema de computadoras confiable es aquel el cual estamos seguros nos brindará los servicios que posee. Entonces si confiamos en un sistema de cómputo, la confidencialidad y la integridad se deben tomar en cuenta. Cuando nos referimos a confidencialidad significa que la información estará disponible para las personas autorizadas; y la integridad se basa en que las modificaciones inapropiadas deben ser detectadas y restauradas, además los activos de un sistema de computadoras siempre se deben ubicar en un equipo físico.

Transcript of El control de acceso.docx

Page 1: El control de acceso.docx

Seguridad

El último punto en el área de desarrollo de los sistemas distribuidos es la seguridad pero por ese motivo no es menos importante, pero se puede decir que es uno de los más difíciles, debido a que una pequeña falla en el diseño con respecto a la seguridad, haría inútil a todas las medidas tomadas.

La seguridad se aplica siempre y cuando se sepa que tipos de mecanismos van a ser usados para que tipos de amenazas.

La seguridad se divide en dos partes, primero en la comunicación entre usuarios y procesos que principalmente están en máquinas diferentes, y se rige en función a los canales seguros que se les brinda.

Segundo, la seguridad se basa en la autorización, lo cual se refiere a los permisos que poseen los procesos para acceder a ciertos recursos.

Cuando hablamos de canales seguros y autorización se debe requerir mecanismos de distribución de claves criptográficas.

Amenazas, políticas y mecanismos de seguridad.

En un sistema de cómputo cuando hablamos de seguridad está fuertemente relacionado con la confiabilidad, un sistema de computadoras confiable es aquel el cual estamos seguros nos brindará los servicios que posee.

Entonces si confiamos en un sistema de cómputo, la confidencialidad y la integridad se deben tomar en cuenta.

Cuando nos referimos a confidencialidad significa que la información estará disponible para las personas autorizadas; y la integridad se basa en que las modificaciones inapropiadas deben ser detectadas y restauradas, además los activos de un sistema de computadoras siempre se deben ubicar en un equipo físico.

Ahora otra forma de seguridad de nuestro sistema de computadoras es protegerlo de distintas amenazas a las cuales puede ser vulnerable.

Clasificación de las amenazas

Principalmente se agrupan en:

Amenazas físicas.

Amenazas lógicas.

Page 2: El control de acceso.docx

Las amenazas físicas como lógicas se materializan básicamente por:

Las personas.

Programas en específico.

Catástrofes naturales.

Intencionalidad de las amenazas.

Accidentes: averías de hardware, fallos del software.

Errores: de utilización, explotación y de ejecución de programas.

Naturaleza de las amenazas

De dividen en 4 que son:

Intercepción: se refiere al acceso de la información por parte de personas no autorizadas.

Modificación: acceso no autorizado que cambia el entorno a su beneficio.

Page 3: El control de acceso.docx

Interrupción: puede provocar que un objeto del sistema se pierda, quede no utilizable o no disponible.

Fabricación: se puede considerar como un caso concreto de modificación, ya que se consigue un objeto similar al atacado de forma que no resulte sencillo distinguir entre el objeto original y el fabricado.

Amenazas físicas

Page 4: El control de acceso.docx

Dentro de las amenazas físicas podemos englobar cualquier error o daño en el hardware, por ejemplo discos duro, procesadores, errores en el funcionamiento de la memoria, todo esto hace que la información no sea fiable.

Otra clase de amenazas físicas son las catástrofes naturales.

Amenazas lógicas

Tiene que ver principalmente con el mal funcionamiento del sistema del lado del software.

Existen varios tipos de amenazas logias, aquí algunas:

Software incorrecto

Exploits

Herramientas de seguridad

Puertas traseras

Virus

Gusanos

Caballos de Troya

Spyware

Adware

Spooting

Spam

Programa conejo

Técnica salami

Ahora una política de seguridad describe que acciones son permitidas y prohibidas a las entidades del sistema.

Una vez elegida la política de seguridad, ya se puede decidir qué mecanismos de seguridad se pueden aplicar, de los cuales tenemos:

Cifrado

Autentificación

Autorización

Page 5: El control de acceso.docx

Auditoria

Arquitectura de seguridad de Globus

Globus es un sistema que soporta cálculos distribuidos a gran escala, en la cual se utiliza al mismo tiempo muchos anfitriones, archivos y otros recursos para realizar el cálculo.

Para simplificar las cosas, la política de Globus plantea 8 enunciados:

El ambiente se compone de múltiples dominios administrativos.

Las operaciones locales están sujetos a una política de seguridad de dominio local.

Las operaciones globales requieren que el iniciador sea reconocido en cada dominio donde la operación se realiza.

Las operaciones entre entidades diferentes necesitan autentificación.

La autentificación global reemplaza a la local.

El control de acceso a los recursos está sujeto a la seguridad local solamente.

Los usuarios pueden desligar derechos a procesos.

Un grupo de procesos en el mismo dominio pueden compartir credenciales.

Page 6: El control de acceso.docx

Temas de diseño

Existen varios temas de diseño importantes que deben ser tomados en cuenta cuando se implementan servicios de seguridad.

Enfoque de control

Cuando buscamos alcanzar la seguridad en las aplicaciones existen 3 métodos:

1) Método 1: proteger los datos principalmente de amenazas y errores.

2) Método 2: proteger los datos de las operaciones no autorizadas.

3) Método 3: proteger los datos de los usuarios no autorizados

Page 7: El control de acceso.docx

Organización de capas de mecanismo de seguridad.

Al momento de diseñar sistemas seguros debemos saber en qué nivel deben ser colocados los mecanismos de seguridad.

Page 8: El control de acceso.docx

Cuando hablamos de nivel se relaciona con un sistema lógico de varias capas, similar a las de un sistema de red de computadoras.

Simplicidad

El desarrollo de sistemas de computadoras seguro es considerado una tarea difícil, por consiguiente si el diseñador utiliza pocos mecanismos simples, fáciles de entender y confiables de trabajar mucho mejor.

Pero a veces los mecanismos simples no son siempre suficientes para implantar políticas de seguridad

Criptografía

En un sistema en el que participan varios usuarios, existe la posibilidad de que algún usuario no autorizado intente tener acceso a información confidencial. Debido a esto, es necesario agregar otros mecanismos de protección para que los intrusos (usuarios no autorizados), si logran irrumpir en el sistema; no entiendan o hagan uso de la información que puedan obtener de manera no autorizada.

La criptografía es un proceso para transformar datos, generalmente texto claro a un texto clave o cifrado, y que sólo puede ser convertido nuevamente en un texto claro y entendible usando una llave en particular y aplicándole un algoritmo apropiado. Por lo general, las técnicas de criptografía se aplican antes de que la información sea almacenada o transmitida por algún canal físico, en el caso de una red. Existen varios tipos o categorías en que se clasifican las técnicas de encriptación de información.

Sistemas de encriptación

Page 9: El control de acceso.docx

• Sistemas convencionales

• Sistemas modernos

• Sistemas de llave pública

• Sistemas de llave privada

Sistemas convencionales de encriptación.

Este tipo de encriptación se basa en la sustitución de cifras, en la cual, cada carácter en un texto claro o base es sustituido por otro carácter. Existen varias técnicas:

• Cifra Caesar.

En éste método, cada letra del texto original se transforma en la tercer letra siguiente Por ejemplo, "CASA" es transformado en "FDVD", de acuerdo al equivalente en la tabla de códigos ASCII.

Los problemas principales con esta técnica son que 1) ya que la transformación es lineal, determinar la llave es muy simple y 2) el número de llaves es muy pequeño ya que se restringe al tamaño del código usado (ASCII en el ejemplo).

• Sustitución simple.

En este método, cualquier permutación de letras puede ser identificado al lenguaje Español o Inglés y elimina la relación posicional de la Cifra Caesar, debido a que cada permutación de letras es una llave, hay (>1026) llaves en una cifra como ésta, lo que hace muy costosa una búsqueda exhaustiva. Sin embargo, la cifra por sustitución simple preserva la frecuencia de sustitución de las letras de un alfabeto porque se ejecuta la misma sustitución en todas las ocurrencias de una letra, y puede usarse un análisis estadístico para desencriptar la cifra.

• Cifra poli alfabética.

La cifra poli alfabética usa una secuencia periódica de n letras de sustitución, es decir; el método actúa con n sustituciones alfabéticas periódicamente. Este método puede tener un mayor impacto si se escoge apropiadamente la sustitución. Una forma de aplicar este método es usar la

Page 10: El control de acceso.docx

Cifra Caesar con diferentes llaves. Por ejemplo, se puede tener la secuencia de enteros 11, 19, 4, 22, 9, 25 y se obtendría el texto cifrado agregando repetidamente cada entero al texto original.

Este método es también vulnerable, porque si se conoce el periodo (secuencia de enteros), las diferentes cifras de cada periodo se pueden determinar por una búsqueda exhaustiva.

Sistemas modernos de encriptación

Usan información representada en forma binaria. Generalmente, en estos métodos se conocen las técnicas de encriptación y desencriptación, pero la llave requerida para desencriptar el texto cifra se mantiene en secreto. Los esquemas de criptografía moderna se basan en el principio de la búsqueda exhaustiva, aunque se conozca el mecanismo de desencriptación, el procedimiento de desencriptación es tan intensivo computacionalmente, que tomaría un tiempo prohibitivo para encontrar la llave.

Método de llave privada

La criptografía por llave privada se ha convertido en un estándar. Fue desarrollado por IBM. Este método es conocido como el Estándar de Encriptación de Datos (DES, por sus siglas en inglés), y utiliza básicamente dos operaciones:

Se usa una operación de permutación para permutar los bits de una palabra y su objetivo es difundir o esparcir la correlación y las dependencias entre los bits de una palabra.

Una operación de sustitución reemplaza una entrada de m bits por una salida n de bits, sin que exista una relación directa entre ambas. Generalmente, una operación de sustitución consta de tres pasos: primero, la entrada de m bits se convierte a una forma decimal; segundo, se permuta la forma decimal (para obtener otro número decimal); y finalmente, la salida decimal se convierte en una salida de n bits.

Método de llave pública

El método de encriptación por llave privada (así como los métodos convencionales) requiere la distribución de llaves secretas a través de una red de comunicaciones insegura, antes de que se pueda tener una comunicación segura. Este problema es conocido como problema de distribución de llaves.

El método de criptografía por llave pública resuelve este problema anunciando al dominio público el método de encriptación E (y su llave asociada); sin embargo, se mantiene secreto el método de desencriptación D (y su llave asociada).

Page 11: El control de acceso.docx

2. Canales Seguros.

Para poder implementar un sistema distribuido seguro es necesario, tener en cuenta dos aspectos como la comunicación entre clientes - servidores y la autentificación.

Para poder proteger la comunicación entre clientes y servidores es necesario establecer un canal seguro por donde se deben comunicar.

Un canal seguro protege la comunicación de la intercepción, modificación y fabricación de mensajes, pero no necesariamente de la interceptación. La protección de mensajes contra la intersección se realiza garantizado la confidencialidad es decir que los mensajes no pueden ser vistos por intrusos, la protección contra la modificación y fabricación se realiza mediante protocolos de autentificación mutua e integridad del mensaje.

2.1 Autentificación.

Para lograr la autentificación del mensaje es necesario también lograr la integridad ya que siempre van de la mano.

Para garantizar la posterior integridad de los mensajes de datos intercambiados una vez autentificados, es practica común utilizar criptografía de clave secreta por medio de claves de sesión, Una clave se sesión es una clave secreta compartida que se utiliza para cifrar mensajes en cuanto a integridad y posiblemente en cuanto a confidencialidad, tu clave se usa en cuanto tu canal exista. Cuando este se cierra, su clave de sesión asociada se desecha.

2.1.1 Autentificación basada en una clave secreta compartida

Page 12: El control de acceso.docx

Esta autentificación se basa en verificar de manera compartida mediante mensajes la validez de una clave secreta. En este ejemplo observamos la autentificación entre dos personas, esta autentificación se realiza mediante una seria de mensajes que tienen como objetivo ir verificando la validez de los datos y la autenticidad de quien las esta enviando.

En el ejemplo se muestra la verificación entre dos personas, en el primer mensaje se envía la identidad del emisor y a la vez es una petición para establecer un canal de comunicación con la otra persona, el segundo mensaje es un reto para el emisor para con el fin verificar la identidad del emisor y aceptar el canal de comunicación, el tercer mensaje es una respuesta al reto establecido en el mensaje dos y a la vez es la confirmación de la identidad del emisor, este mensaje a su vez va acompañado de un cuarto mensaje en donde se envía un reto al receptor para verificar su identidad, este receptor tiene que superar el reto enviando un quinto mensaje para confirmar su identidad y de esta ambos receptor como emisor tengan la seguridad de que su identidad es verdadera.

Unos de los temas de seguridad mas difíciles al diseñar protocolos es que realmente funciones, es decir que puede haber complicaciones, en el siguiente ejemplo se reduce el numero de mensajes que se debe enviar de cinco a tres.

En este ejemplo se optimiza el funcionamiento, es decir que en el primer mensaje el emisor envía su identidad y el reto para poder establece un canal de conexión, en el mensaje dos el receptor envía una respuesta al reto y envía su propio reto para establecer una conexión , el mensaje tres es la respuesta al reto y la confirmación de las identidades del receptor y emisor.

Page 13: El control de acceso.docx

Ataque de reflexión

El objetivo de un ataque de reflexión es establecer una comunicación en donde en receptor crea que esta estableciendo un canal con total seguridad con el emisor, es decir engañándolo utilizando la misma estructura de la autentificación de la clave compartida

En este ejemplo en la pirmera sección el supuesto emisor envía una petición de un canal de conexión y un reto, el cual es respondido por el receptor que a su vez le envía un reto para verificar su identidad, pero como el falso emisor no conoce la respuesta al reto envía un segundo mensaje.

En la segunda sección el supuesto emisor envía otra petición para estableces un segundo canal con el mismo reto que le envió en receptor sin la repuesta, para que el receptor, este sin darse cuenta envía una respuesta de su mismo reto al emisor de esta manera en falso emisor ya sabe cual es la respuesta al reto.

En la tercera sección el falso emisor de Elvia la respuesta que ya descifro y establece la conexión del canal y supuestamente se ha verificado la identidad de los dos.

Uno de los errores cometidos durante la adaptación del protocolo original fue que en ella nueva versión del protocolo las dos partes estuvieron utilizando en mismo reto en dos ejecuciones diferentes del protocolo. Un mejor diseño es utilizar siempre retos diferentes tanto para quien inicia como para quien responde.

2.1.2 Autentificacion mediante un centro distribuido clave.

Si un sistema distribuido contiene N servidores y cada servidor requiere compartir una clave secreta con los demás N-1 servidores el sistema en su conjunto necesita manejar N(N-1)/2 claves y

Page 14: El control de acceso.docx

cada servidor debe manejar N-1 claves, con N grande, esto conduce a problemas, una alternativa es utilizar un método centraizado por medio de un centro de distribución de clave, este cómprate un clave secreta con cada uno de ellos servidores, pero no se requiere que ningún par de ellos tenga también una clave secreta compartida, es decir que se maneja N claves en vez de N(N-1)/2 claves, el cual es una mejora.

En este ejemplo el receptor envía un mensaje en el cual solicita establecer comunicación con el receptor, el centro de distribución de clave KDC funciona como intermediario y envía una clave cifrada compartida al emisor, el cual pueda utilizar y a su vez envía un mensaje al receptor informándole que el emisor quiere comunicarse con el y también la clave cifrada que le envió al emisor.

La desventaja de este método es que el emisor puede establecer un canal antes de que el KDC envié e integre al receptor con la clave compartida, esto se puede mejorar si el KDC regresa al emisor permitiendo conectarse con el receptor. A esto se le conoce como boleto, es decir que el emisor tiene la tarea de pasar al receptor este boleto, quien es utiliza el boleto y el único que sabe como descifrar la información que lo contiene.

Page 15: El control de acceso.docx

2.1.3 Autentificación con criptografía de clave publica,

Este protocolo funciona cuando el receptor envía un reto al emisor con su calve publica, el receptor tiene la tarea de descifrar el mensaje y recién el emisor sabrá que esta hablando con el receptor

Page 16: El control de acceso.docx

2.2 Integridad y confidencialidad del mensaje.

Para poder establecer un canal seguro aparte de la autentificación es necesario brindar las garantías en integridad y confidencialidad.

La integridad del mensaje significa que los mensajes están protegidos contra modificación subrepticia, la confidencialidad asegura que los mensajes no pueden ser interceptados o leídos por per personas ajenas, una manera de hacerlo es cifrar el mensaje antes de enviarlo.

2.2.1 Firmas digitales.

una firma digital da una mayor seguridad de evitar modificaciones que pasen inadvertidas de un mensaje, es decir que a traves de una firma digital se pude verificar como genuina y evitar fraudes.

Tipos de firmas digitales.

a) Criptositema.

Page 17: El control de acceso.docx

Cuando el emisor quiere enviar un mensaje va a cifrar ese mensaje con la clave priva de del receptor, el receptor recibe el mensaje cifrado y lo descifra con la con la clave publica del emisor de esa manera se puede comparar si es que el emisor es verdaderamente quien dice ser, y el emisor queda protegido de alguna modificación inadecuadas que se pueda realizar debido a que tendrá que verificar que si aquellas modificaciones fueron firmadas por el emisor.

Pero existen vario factores que ponen en riesgo, por ejemplo el emisor puede decir que su clave privada fue robada justo cuando envía el mensaje, también si es que se le ocurre cambiar la cave privada, también que verificar el mensaje con la clave privada del emisores en costoso para el sistema en términos funciones de los requerimientos.

En este caso para firmar digitalmente el emisor calcula primero un resumen cifrado del mensaje, cuando el receptor recibe el mensaje y su resumen cifrado simplemente tiene que descifrar el resumen con la clave publica del emisor si el resumen con la clave publica del emisor y calcularlo por separado si estos dos concuerdan el receptor pude estar seguro de que es el autentico emisor.

2.2.2 Claves de sesión.

Una vez que se ha completado la fase de autentificación, se suele utilizar por confidencialidad, una clave única de sesión compartida y se desecha cuando el canal ya no se utiliza.

Page 18: El control de acceso.docx

Cuando se utiliza una clave es mas fácil revelarla, si las criptografías se deterioran un intruso es capaz de interceptar una gran cantidad de datos cifrados con la misma clave, por eso es recomendable utilizar claves de autentificación lo menos que se pueda.

2.3 Comunicación Segura de un grupo.

2.3.1 comunicación confidencial de un grupo.

Para garantizar la confidencialidad de un grupo es que todos sus miembros compartan una clave secreta, la cual se utiliza para cifrar y desifrar todos los mensajes transmitidos entre cada miembro del grupo, confiando en que la mantendran en secreto, esto hace que sea mas vulnerable a ataques en comparacion con los canales seguros entre dos.

Una solucion es utilizar una clave compartida diferente para cada uno de los integrantes, de esa manera en cuanto alguno de sus integrantes empiese afiltrar informacion los demas mienbros dejen de enviale mensejes a el.

2.3.2 Servidores replicados seguros

Se tiene que proteger al cliente contra los ataques de seguridad y una manera es recopilar la respuesta de todos los servidores y autenticar cada una , si existe cierta mayoria entre las respuestas de los servidores no corrompidos el cliente puede estar seguro de que la respuesta es correcta

Page 19: El control de acceso.docx

Kerberos:

Kerberos es un sistema de seguridad que ayuda a los clientes a establecer un canal seguro con cualquier servidor que forme parte de un sistema distribuido, esta basada en claves secretas compartidas existen dos componentes distintos, el AS( servidor de autentificación ) es responsable de manejar la petición de inicio de sesión de un usuario, este autentifica a un usuario y proporciona un clave que puede ser utilizada para establecer canales seguros con los servidores.

El TGS(servicio de otorgamientos de tickes) se entrega mensajes especiales conocidos como boletos

Page 20: El control de acceso.docx

1.3 El control de acceso

Se ha usado hasta ahora el modelo cliente –servidor cabe decir que una vez que estos han establecido un canal seguro el cliente tiene la potestad de emitir peticiones que debes ser ejecutarlas por el servidor, estas peticiones implica realizar operaciones en recursos controlados por el servidor.

Hablando de una situación general nos referimos a un servidor de objetos el cual controla cuchos objetos.

Una petición de un cliente implica invocar un método de un objeto especifico esa petición puede ser religado solo si el cliente tiene derechos de acceso suficientes.

Algo muy importante, la verificación de los derechos de acceso se conoce como control de acceso pero autorización se refiere a la concesión de derecho de acceso.

Estos términos esta relacionados fuertemente, existen muchas formas de control de acceso

En primer lugar abordaremos algunas de los temas generales prestando atención especial a las diferentes modelos de manejo de control de acceso.

Page 21: El control de acceso.docx

Una manera importante de controlar el acceso a recursos es construir un corta fuegos que protege las aplicaciones incluso toda una red, los cortafuegos se estudian por separado con el advenimiento del código de movilidad.

El control de acceso ya no podía realizarse únicamente con los métodos tradicionales envés de eso tuvieron que idearse técnicas nuevas.

1.3.1 temas generales de control de acceso

En general se adopta el modelo simple que se muestra en la figura siguiente, este modelo consta de sujetos que emiten una petición de acceso a un objeto. Se puede pensar en los objetos como encapsular su propio estado he implementar las operación en dicho estado.

Las operaciones de un objeto que los sujetos pueden solicitar se realicen están disponibles mediante interfaces. Los sujetos pueden ser considerados mejor como procesos que actúan a nombre de los usuarios. Aunque también pueden ser objetos que necesitan los servicios de otros objetos para realizar su propio trabajo.

Controlar el acceso a un objeto es todo lo que se refiere a protegerlo contra invocación realizadas por sujetos a los que no les

Está permitido tener algún método especifico (o incluso ninguno ) de los realizados. También la protección puede incluir temas de administración de objetos tales como crear renombrar o eliminar objetos. la protección a menudo se aplica mediante un programa llamado monitor de referencia . un monitor de referencia registra que sujeto puede hacer que cosa y decide si a un sujeto se le permite realizar una operación especifica. A este monitor se le convoca por ejemplo mediante el sistema operativo confiable subyacente cada vez que un objeto es invocado por la tanto es en extremo importante que el propio monitor de referencia sea a prueba de intrusiones un atacante no debe ser capaz de inmiscuirse con el .

Servidor de objetos

Te permite almacenar objetos que pueden ser activados a distancia. Los clientes pueden ser capaces de activar los objetos que se encuentran en el servidor.

Es un computador que CONTIENE y pone a disposición de los usuarios autorizados (en red), los llamados OBJETOS INFORMATICOS.

Page 22: El control de acceso.docx

Los objetos son recursos diversos. Los más conocidos son los Objetos Multimedia (fotos, video clips, audios, etc.). Hay otros tipos de objetos.

Matriz de control de acceso

Un todo común para modelar los derechos de acceso de sujetos con respecto a objetos es construir una matriz de control de acceso.

En una matriz de control de acceso cada sujeto esta representado por una fila y cada objeto por una columna si la matriz se denota mediante M, entonces una entrada M(s,o),indica con precisión que operaciones puede solicitar el sujeto “S” para que se realicen en el objeto “O” el monitor deberá verificar si m aparece en M(s,o) si no aparece, entonces la invocación falla.

Si pensamos dar soporte a miles de usuarios y que millones de objetos requieren protección, implantar una matriz e control de acceso como matriz verdadera no es la forma correcta.

Muchas entradas de la matriz están vacías por lo general es decir puede ser que un solo proceso tenga acceso a pocos objetos.

Por ello se siguen otras formas más eficientes para implementar un matriz de control de acceso

Este método consiste en hacer que cada objeto mantenga una lista de derechos de acceso de sujetos que sean acceder a el. esto significa que la matriz está distribuida en columnas a través de todos los objetos y que las entradas vacías se eliminan.

Este tipo de implementación conduce a lo que se llama ACL(Access control list) donde se supone que cada objeto tiene su propia ACL asociada.

Otra alternativa seria de distribuir la matriz en filas dando cada sujeto una listea de las capacidades que tiene cada objeto ósea una capacidad corresponde a una entrada en la matriz de control de acceso.

No tener una capacidad para un objeto específico significa que el sujeto no tiene derechos de acceso para dicho objeto.

Una capacidad puede compararse a un boleto, es decir su portador recibe ciertos derechos asociados con el boleto también queda claro que un boleto deberá estar protegido contr modificaciones por parte de su portador.

La diferencia entre cómo se utilizan las ACL y las capacidades para proteger el acceso a un objeto se muestra en la sigue figura.

Cuando un cliente solicita una petición a un servidor el monitor de referencia del servidor verificara si conoce al cliente y si este tiene permiso de realizar las operaciones solicitadas.

Page 23: El control de acceso.docx

¿Qué es un monitor de referencia?

En inglés Security Reference Monitor (SRM), nombre interno : es la autoridad principal para hacer cumplir las reglas del subsistema de seguridad integral.

Determina cuándo se puede acceder a un objeto o recurso, a través del uso de listas de control de acceso (en inglés Access Control List, ACL), que están formadas por entradas de control de acceso (en inglés Access Control Entries, ACE).

Page 24: El control de acceso.docx

Fig: comparación entre ACL y capacidades para proteger objetos (a)con una ACL (b)con capacidades.

Dominios de protección

Las ACL y las capacidades ayudan a implementar con eficiencia una matriz de control de acceso al ignorar todas las entradas vacías. no obstante, una ACL o una lista de capacidades pueden ser lo innecesariamente grande si no se toman las medidas adicionales.

Una forma de reducir las ACL es utilizar dominios de protección.

Un dominio de protección es un conjunto de pares(objetos, derechos de acceso).para un objeto dado cada par especifica con exactitud qué operación es pueden realizarse.

Las peticiones para realizar una operación siempre se emiten dentro de un dominio.

Por consiguiente simple que un sujeto solicita realizar una operación en un objeto, el monitor de referencia busca primero el dominio de protección asociado con dicha petición, luego de ello encontrado el dominio el monitor de referencia puede verificar si la petición tinee permiso de ser realizada.

Un método de dominio de protección es construir grupos de usuarios.

Veamos por ejemplo una web de una compañía tal página deberá estar disponible para cada empleado para nadie más, en lugar de aplicar una entrada por cada empleado a la ACL de las pagina web, se puede decidir tener un grupo “empleado” aparte que contenga todos los empleados actuales, siempre que un usuario acceda a la página web entonces el monitor de referencia solo tendrá que comprobar si el usuario es un empleado .que usuarios pertenecen al

Page 25: El control de acceso.docx

grupo “empleados” se mantiene en una lista aparte el cual está protegido contra acceso no autorizado.

Con la introducción de grupos jerárquicos las cosas pueden ser más flexibles por ejemplo si una organización tiene tres sucursales diferentes en Amsterdan, New York y san francisco , es posible que desee subdividir su grupo “empleados” en subgrupos, uno por ciudad como en la fig, siguiente.

En este caso el acceso a la página web de la intranet de la organización deberá estar permitido a todos ls empleados. Sin embargo , cambiar por ejempló las páginas web asociadas con la sucursal de Amsterdam deberá estarle permitido solo a un subconjunto de empleados basados en Amsterdam si el usuario Dick de Amsterdam desea leer una pagina web de la intranet , el monitor de referencia tiene que buscar primero en los subconjuntos EMPLEADOS_AMS, EMPLEADO_NYC y EMPLEADO_SF que junto conforman el grupo “empleados” luego debe comprobar si uno de esos subconjuntos contiene a Dick , la ventaja de tener grupos jerárquicos es que la administración de la membresía para un grupo es relativamente fácil y que se puede construir grupos muy grandes con eficiencia. pero la desventaja es que la búsqueda de un miembro puede resultar costosa si la base de datos es distribuida.

Por ello envés de dejar todo el trabajo al monitor de referencia se debería permitir q cada sujeto porte un Certificado que contenga una lista de los grupos a los que pertenece , de esa manera siempre que Dick desee leer una página de la intranet de la compañía. Este entregara su certificado al monitor de referencia para informarle que el es miembro del subgrupo EMPLEADO_AMS para garantizar que el certificado es genuino y que no ha sido manipulado deberá estar protegido mediante, por ejemplo, una firma digital.

¿Qué es una firma digital?

Page 26: El control de acceso.docx

Una firma digital es un mecanismo criptográfico que permite al receptor de un mensaje firmado digitalmente determinar la entidad originadora de dicho mensaje (autenticación de origen y no repudio), y confirmar que el mensaje no ha sido alterado desde que fue firmado por el originador (integridad)

¿Qué es criptografía?

Literalmente es escritura oculta y tradicionalmente se ha definido como la parte de la criptología que se ocupa de las técnicas, bien sea aplicadas al arte o la ciencia, que alteran las representaciones lingüísticas de mensajes, mediante técnicas de cifrado o codificado, para hacerlos ininteligibles a intrusos (lectores no autorizados) que intercepten esos mensajes

1.3.2 cortafuegos (firewall)

Hasta ahora se ha demostrado cómo se puede estableces protección mediante técnicas criptográficas, combinadas con alguna implementación de una matriz de control de acceso. Estos métodos funcionan muy bien en tanto que todas las partes en comunicación actúen de acuerdo con el mismo conjunto de reglas. Tales reglas pueden ser aplicadas cuando se desarrolle un sistema distribuido autónomo, aislado del resto del mundo pero las cosas se ponen más difíciles cuando se permite el acceso a extraños a los recursos controlados por un sistema distribuido asi como envío de correo, descargas de archivos, etc.

Un cortafuego (firewall en inglés) es una parte de un sistema o una red que está diseñada para bloquear el acceso no autorizado, permitiendo al mismo tiempo comunicaciones autorizadas.

Se trata de un dispositivo o conjunto de dispositivos configurados para permitir, limitar, cifrar, descifrar, el tráfico entre los diferentes ámbitos sobre la base de un conjunto de normas y otros criterios.

Los cortafuegos pueden ser implementados en hardware o software, o una combinación de ambos. Los cortafuegos se utilizan con frecuencia para evitar que los usuarios de Internet no autorizados tengan acceso a redes privadas conectadas a Internet, especialmente intranets.

Todos los mensajes que entren o salgan de la intranet pasan a través de los cortafuegos, que examina cada mensaje y bloqu ea aquellos que no cumplen los criterios de seguridad especificados.(Wikipedia, 2013).

Page 27: El control de acceso.docx

Para proteger los recursos ahora en estas circunstancias se requiere un método diferente .

En la práctica sucede que el acceso externo a cualquier parte de u sistema distribuido e controlado por una clase especial de monitor de referencia conocido como firewall.

Un cortafuego desconecta cualquier parte de un sistema distribuido del mundo externo k como se muestra en la sig. Figura

Aquí todos los paquetes salientes per sobre todo los entrantes se canalizan atravesó de una computadora especial y se inspeccionan antes de permitirle el paso, el tráfico no autorizado se desecha y no se le permite continuar.

Existen 2 tipos de cortafuegos y estos se combinan en un tipo de gran importancia es una compuerta de filtración de paquetes. Este tipo de cortafuegos opera como ruteador y toma decisiones en cuanto a dejar pasar o no un paquete de red con base en la dirección de origen o paquetes mostrados en LAN externa en la figura anterior, protege contra los paquetes entrantes en tanto que la LAN interna filtra los salientes.

Por ejemplo para proteger un servidor web interno contra peticiones de hosts que no están en la red interna una compuerta de filtración de paquetes podría decidir rechazar todos los paquetes entrantes dirigidos al servidor web.

El otro tipo de cortafuego es una compuerta a nivel de aplicación. Por contraste con una implementación que permite el acceso a un servidor de biblioteca externo pero que proporciona solo extractos de documentos si un usuario externo desea mas se inicia un protocolo de pago electrónico los usuarios localizados en el interior del cortafuego tienen acceso directo al servicio

Page 28: El control de acceso.docx

de biblioteca. Una clase especial de compuerta a nivel de aplicación es la conocida como al compuerta proxy. Este tipo de cortafuego funciona como etapa frontal ante una clase especifica de aplicación y garantiza que pasaran solo aquellos mensajes que satisfagan ciertos criterios,

1.3.3 código móvil seguro

Un desarrollo importante en sistemas distribuidos modernos es la capacidad de migrar el código entre servidores en lugar de solo migrar datos pasivos , sin embargo el código móvil introduce varias amenazas de seguridad serás . Entre otras cas cuando se envía un agente a través de internet , su propietario desea protegerse contra servidores malévolos que traten de modificar o robarse la información transportada por el agente.

Otra cuestión importante es que los servidores necesitan estar protegidos contra agentes maliciosos la mayoría de los usuarios de sistemas distribuidos no son expertos en tecnología de sistemas y no pueden saber si el programa que esta en descargando de otro servidor no corromperá su computadora.

1.3.4 Negación del servicio

El control de acceso se refiere en general a garantizar en forma prudente que los recursos seran accedido solo pro procesos autorizados. Un tipo de ataque particular mente molesto relacionado con el control de acceso es evitar de modo malicioso que procesos autorizados accedan a recursos.

Defensas contra ataque de este tipo DoS(denial of service) se vuelven cada vez mas importantes ya que los sistemas distribuidos se encuentran abiertos en el internet

Cuando los ataques DoS provienen de una o varias fuentes a menudo pueden ser manejados con efectividad.

Se hace mas difícil cuando se trata de una negación de servicio distribuido.en ataques DoS uan enorme colección de procesos intenta anular conjuntamente un servicio distribuido en red . en estos casos los atacantes a menudo tienen éxito al secuestrar un gran numero de maquinas que sin haber participado en el ataque distinguen dos tipos de ataque aquellos encaminados al agotamiento del ancho de banda y los encaminados al algoritmos de recursos.

El agotamiento de ancho de banda se logra simplemente con enviar muchos mensajes a una sola maquina el efecto es en los mensajes normales difícilmente llegaran al receptor.

Los atacantes de agotamiento de recursos se concentran en permitir que el receptor agote los recursos en mensajes inútiles. Un ataque muy conocido de agotamiento de recurso es la inundación del TCP SYN en este caso el atacante intenta iniciar una enorme cantidad de conexiones es decir envía paquetes SYN como parte de un protocolo de dialogo tridimensional aunque nunca responderá a reconocimientos del receptor.

Page 29: El control de acceso.docx

Estos ataque se aprovechas de víctimas inocentes al no haber un método de protección con tras los ataques Dos lo que hacen es instalar en secreto software en la maquina ajena.

es un ataque a un sistema de computadoras o red que causa que un servicio o recurso sea inaccesible a los usuarios legítimos. Normalmente provoca la pérdida de la conectividad de la red por el consumo del ancho de banda de la red de la víctima o sobrecarga de los recursos computacionales del sistema de la víctima. Un ejemplo notable de este tipo de ataque se produjo el 27 de marzo de 2013, cuando un ataque de una empresa a otra inundó la red de spam provocando una ralentización generalizada de Internet e incluso llegó a afectar a puntos clave como el nodo central de Londres.

Ataque usando el software stacheldraht