Arquitectura de seguridad integral para sistemas de agentes móviles basado en Java (página 2)
Enviado por Pablo Turmero
13 II-Estado del ArteDAgents – Seguridad La autenticación en D'Agents está basada en PGP. Los recursos son divididos en directos e indirectos. Existen listas de acceso para restringir el acceso a cada recurso indirecto que son supervisadas mediante agentes que actuan como gestores permitiendo un acceso cualitativo y genérico. Existe una lista de acceso para cada propietario. La seguridad de los recursos directos del sistema es mantenida usando un interprete seguro. La implementación actual no cuenta con una versión segura para todos los comandos.
14 II-Estado del Arte Java Portabilidad mediante la máquina virtual Lenguaje orientado a objetos Serialización de objetos, RMI y componentes. Multihilo y Multitarea. Cargado de clases dinámico Seguridad mediante el security manager El interprete tiene un desempeño aceptable Actualmente es ubicuo y aceptado.
15 II-Estado del Arte Aglets – Arquitectura La capa de transporte es la responsable del envío de un agente a su destino en forma de un flujo de bytes que contiene definiciones de clases.
16 No cuenta con ningún mecanismo de autenticación. Se definen 2 grupos de aglets, los confiables (locales) y los no confiables(remotos). Se utiliza una base de datos de políticas de seguridad en donde se definen los privilegios de cada grupo. Dentro de cada categoría (confiables y no confiables) de seguridad se da soporte a los siguientes recursos: FileSystem (Sistema de Archivos), Network (Red), Property (Propiedades) y Others (otros). Consta de una interfaz agletSecurityManager que le permite realizar verificaciones. II-Estado del Arte Aglets – Seguridad
17 Gestión del Agente. Envío del Agente. Nombres de Agentes y sistemas de Agentes. Tipos de sistemas de Agentes y sintaxis de la Localización. II-Estado del ArteMASIF
18 (Gp:) Interfaz MAFFinder (Gp:) void (Gp:) register_agent( ) (Gp:) void (Gp:) register_place( ) (Gp:) … (Gp:) ( ) (Gp:) Interfaz MAFAgentSystem (Gp:) Name (Gp:) create_agent (Gp:) ( ) (Gp:) MAFFinder (Gp:) get_MAFFinder (Gp:) ( ) (Gp:) ….( ) (Gp:) Implementación MAF (Gp:) 0 (Gp:) ..* (Gp:) Cliente MAF (Gp:) 0 (Gp:) ..* (Gp:) Accede a través ORB
II-Estado del ArteEstructura de la MASIF
19 Objetivos y Organización. Parte I: Introducción. Parte II: Estado del arte.
Parte IV: Arquitectura de Seguridad Integral. Parte V: Implementación del Prototipo. Parte VI: Evaluación y Ámbitos de la Aplicación. Parte VII: Conclusiones y Líneas de Investigación Futuras. Parte III: Requerimientos de Sistema de Agentes Móviles y la necesidad de una arquitectura de seguridad. Contenido
20 Lenguaje de Programación: Portable: para lograr una ejecución idéntica en distintos sistemas. Orientación a objetos. Persistencia: para poder conservar el estados de datos del Agente. Servicios básicos Creación y Reanudación de agentes. Envío. Localización. Comunicación.
III-Requerimientos de un SAM y la Necesidad de SeguridadPlataforma de Desarrollo
21 Seguridad: Protección del servidor de agentes (host) frente a ataques de agentes o de otros servidores malvados. Protección de la transmisión de la información frente a terceras partes. Protección de los agentes frente a servidores malvados. Interoperabilidad Navegación por sistemas diferentes logrando interactuar con agentes de otros sistemas. Se logra mediante la definición de un modelo estándar o usando la especificación de la MASIF. Debe mantener los aspectos de seguridad de todos los sistemas. III-Requerimientos de un SAM y la Necesidad de Seguridad Seguridad e Interoperabilidad
22 Integración con el WEB Integración con los navegadores. Búsquedas concurrentes con criterios de selección mas apropiados. Introducción de Agentes Móviles en Applets. Interfaz gráfica para facilitar tareas usuario. Servicio de monitorización. Páginas Amarillas. Entornos visuales de desarrollo. Depuradores. Gestor y encaminamiento de excepciones. III-Requerimientos de un SAM y la Necesidad de Seguridad Entornos Integrados de Desarrollo
23 Servidores y/o agentes simulan proceder de una autoridad diferente a la verdadera para lograr acceder a un sistema. Acceso ilegal a información o recursos debido a los entornos de ejecución inseguros causados por los esquemas inadecuados de asignación de privilegios. Confiables (locales) – todos los permisos. No confiables (remotos) – subconjunto. Inflexible.
III-Requerimientos de un SAM y la Necesidad de Seguridad Falsificación y Acceso Ilegal
24 Un agente de un usuario legítimo realiza algo diferente que lo que el sistema de agentes esperaba que hiciera. El consumo excesivo de recursos por un agente que produce que el sistema no pueda satisfacer más peticiones por carencia de recursos. Ej: memoria, disco. Ej: conexiones de red. El control del consumo debe hacerse Por agente y por autoridad. III-Requerimientos de un SAM y la Necesidad de Seguridad Caballo de Troya y Agotamiento de Recursos
25 III-Requerimientos de un SAM y la Necesidad de Seguridad Espionaje o Sustitución de información Consiste en obtener información del agente mediante un programa (monitor de comunicación) que no altera el agente. Una variante del ataque anterior es la interceptación y sustitución de mensajes que hace uso de un monitor inteligente capaz de distinguir los mensajes para interceptarlos y sustituirlos.
26 III-Requerimientos de un SAM y la Necesidad de Seguridad Lavado de Cerebro y Réplicas Alteración aviesa del código que modifica el comportamiento del agente. Alteración de los datos(varían con el recorrido) modificando los valores obtenidos por el agente en beneficio del atacante.
27 Objetivos y Organización. Parte I: Introducción. Parte II: Estado del arte. Parte III: Requerimientos de un Sistema de Agentes Móviles y la necesidad de una arquitectura de seguridad.
Parte V: Implementación del Prototipo. Parte VI: Evaluación y Ámbitos de la Aplicación. Parte VII: Conclusiones y Líneas de Investigación Futuras.. Parte IV:Arquitectura de Seguridad Integral. Contenido
28 IV-Arquitectura de Seguridad Integral Objetivos particulares(1) Autentificar las autoridades de servidores y agentes. Otorgar privilegios de forma individual a los agentes móviles de cada autoridad local y remota. Especificación de permisos al nivel de recursos, indicando incluso el tipo de acceso. Poder imponer asignaciones a cada autoridad o sistema remoto para controlar el consumo de recursos de los agentes provenientes de sistemas remotos. Definir una política de cumplimiento de privilegios robusta que garantice que los agentes no podrán acceder a los recursos no autorizados. Que los agentes compartan ficheros en tiempo de ejecución.
Protección del Servidor
29 IV-Arquitectura de Seguridad Integral Objetivos particulares(2) Proteger el código del agente mediante firmas digitales y crear una técnica de encriptación que sea fácil de implementar para proteger los datos del agente móvil. Proteger la transmisión de los agentes y su información de un servidor a otro.
Protección del Agente y su transmisión Proveer al servidor de agentes de un gestor inteligente para que modifique las políticas de seguridad en tiempo de ejecución cuando tenga escasez de recursos. Crear una arquitectura que sea 100% factible de implementar.
Inteligencia del Sistema y Factibilidad
30 IV-Arquitectura de Seguridad Integral Autoridades y Regiones Se consideran sólo dos autoridades: el propietario del sistema y los propietarios/usuarios de los agentes. REGION 1 Sistema de Agentes 1 Sistema de Agentes 2 Sistema de Agentes N L1 L2 L3 L4 Diversos Lugares Migración sin encriptación REGION 2 Sistema de Agentes 1 Sistema de Agentes 2 Sistema de Agentes N L1 L2 L3 L4 Diversos Lugares Migración sin encriptación Migración con Encriptación
31 IV-Arquitectura de Seguridad Integral Restricciones de Acceso y Repositorio de Llaves Altas de Usuarios KeyStoreManager 1. Arthur, Password KeyGenerator 2. Arthur 3. Clave privada Clave pública 4. Arthur, Password Clave Privada Certificado de Clave Pública Clave privada Certifiacado Clave Pública KeyStoreManager Export KeyStore Autoridad Password Clave Privada Certificados De Clave Pública Oviedo3 ******** iQA/AwUBN2 UXLv+NlTJu aJ7KEQKfSACfcSTzv Arthur ******** nMRJjdLitGrO 0kuyOUU xtknPbVKA2UNJkWM DBPreferences Política de Seguridad
32 IV-Arquitectura de Seguridad Integral Envío, Firmado y Recepción envío Lo firma Comprime Fichero Agente en Ejecución
Obtiene clases Envía fichero Sistema Remoto Verificación de la Firma Recupera estado Pers. Agente recuperado
Continua su ejecución
Estado persistente Asignación de Permisos
Añade al fichero KeyStore Clave privada KeyStore Certificado de clave publica Política de Seguridad Dominio de Protección
33 IV-Arquitectura de Seguridad Integral Proceso de Autenticación (Gp:) CA
(Gp:) CA
(Gp:) Origen
(Gp:) Destino
(Gp:) PRIVADA (Gp:) PUBLICA
(Gp:) CA
(Gp:) Entidad certificadora
34 IV-Arquitectura de Seguridad Integral Permisos y Asignaciones Permisos para el control cualitativo de acceso a recursos: Sistema de Ficheros. Acceso a la Red. Pantalla. Permisos de seguridad. Otros privilegios. Asignaciones para el control cuantitativo de la cantidad de recursos consumida: int disco int hijos int memoria int mensajes boolean duplicar …. // otros
35 IV-Arquitectura de Seguridad Integral Fichero de políticas de Seguridad grant [SignedBy autoridad"] [, CodeBase "URL"] {
permission nombre_del_permiso [ nombre del recurso" ] , [, modo de acceso"]; permission …
}; grant codeBase "file://C:/Millenium/Users/renato" { permission java.awt.AWTPermission "accessEventQueue"; }; grant signedby Oviedo_3"{ permission java.io.FilePermission "C:/Millenium/Users/Test" , "read,write"; }; Dominio de Protección Permisos
36 IV-Arquitectura de Seguridad Integral Asignación de Permisos Acceso Denegado Acceso Completo Autoridad desconocida Sistema Dominio1 Dominio2 DominioN Otras autoridades Sistema de Seguridad y Política de seguridad Recursos del Sistema Agente Móvil
37 IV-Arquitectura de Seguridad Integral Preferencias y Asignaciones(1) El agente solicita recursos (Objeto Preferencias) El servidor concede las preferencias requeridas, o bien si no puede, los recursos disponibles asignados a su autoridad El servidor consulta DBResourcesFree para ver la cantidad de recursos disponibles para dicha autoridad. DBResourcesFree Asignación de la autoridad
38 IV-Arquitectura de Seguridad Integral Preferencias y Asignaciones(2) Número de Hijos y Clones Creados Número de Mensajes Cantidad de Memoria y Disco // otros Preferencias Agente 1 Preferencias Agente 2 Preferencias Agente 3 Asignaciones Libres Asignaciones Agente 2 Asignaciones Agente 1 Asignaciones Agente 3 Asignaciones totales para la autoridad Consumo de recursos Recursos consumidos Consumo de recursos Fin Agente Asignaciones Libres
39 IV-Arquitectura de Seguridad Integral Control Global sobre Recursos
40 – Antiguo permiso +Nuevo permiso IV-Arquitectura de Seguridad Integral Política de Seguridad Versátil Dominio A Dominio B Permisos Permisos Agente C Share con Autoridad A Incluye permiso en el fichero de políticas refresh Sistema de Agentes en Ejecución: Arquitectura Segura e Inteligente en escasez de recursos – Antiguo permiso Dominio C Permisos
41 IV-Arquitectura de Seguridad Integral Protección de la Transmisión ClientHello Certificate ServerHello ServerKeyExchange CertificateRequest ServerHelloDone Certificate ClientKeyExchange CertificateVerify [ChangeCipherSpec] Finished [ChangeCipherSpec] Finished Datos CLIENTE SERVIDOR SSL logra la autenticación de servidores y protege la transmisión
42 IV-Arquitectura de Seguridad Integral Protección de los Datos del Agente Navegación en redes seguras. Encriptación de datos mediante mapas de bits y puertas XOR: 10 Aleatorio => 1010 binario 3 dato => 0011 binario 10 XOR 3 => 1001 binario 10 XOR (10 XOR 3) => 0011 binario
43 IV-Arquitectura de Seguridad Integral Protección de los Datos del Agente Área de Datos del Agente Móvil ID Host Datos a Proteger CW CRC < 128 bits > < 128 bits > < 128 bits > ……. < 128 bits > < 128 bits > < 128 bits > 01010001 100100.. 001010.. 010100.. 01010.. 01010101 110011.. 11001001.. 00010.. 11010.. 01010.. 00010.. 010001.. 010101.. 10111001.. 00111.. 01010.. 00111.. 11010.. 110011.. 010001.. 01001001 11010000 00111001 00010010 01010001 00000011 00011000 01000000 00111001 00010010 01010001 01100000 11000000 01000000 11100100 10010000 10100010 XOR 01010110 001010011
44 Objetivos y Organización. Parte I: Introducción. Parte II: Estado del arte. Parte III: Requerimientos de un Sistema de Agentes Móviles y la necesidad de una arquitectura de seguridad. Parte IV: Arquitectura de Seguridad Integral.
Parte VI: Evaluación y Ámbitos de la Aplicación. Parte VII: Conclusiones y Líneas de Investigación Futuras. Parte V: Implementación del Prototipo. Contenido
45 V-Implementación del prototipo El Sistema de Agentes MILENIO
46 V-Implementación del prototipo Elementos del Sistema
47 V-Implementación del prototipo Identificador y migración del Agente FechaHoraDeCreaciónDelAgente + Servidor + DirecciónIP Función de conversión de N a M bits. Un message digest con algoritmo SHA. Serialización para trasmitir el estado de datos. Compresión mediante ficheros Jar Programación concurrente para atender todas las necesidades del agente. Introspección para decidir las clases que se transmiten con el agente.
48 V-Implementación del prototipo Carga, Autenticación y Asignación
49 V-Implementación del prototipo Cumplimiento de Privilegios
50 V-Implementación del prototipo Entorno de Ejecución
51 Objetivos y Organización. Parte I: Introducción. Parte II: Estado del arte. Parte III: Requerimientos de un Sistema de Agentes Móviles y la necesidad de una arquitectura de seguridad. Parte IV: Arquitectura de Seguridad Integral. Parte V: Implementación del Prototipo.
Parte VII: Conclusiones y Líneas de Investigación Futuras. Parte VI: Evaluación y ámbitos de la aplicación. Contenido
52 VI-Evaluación y Ámbitos de Aplicación Comparación de Características de Seguridad S=Si, N=No, P=Parcialmente.
53 VI-Evaluación y Ámbitos de Aplicación Nivel de Seguridad
54 VI-Evaluación y Ámbitos de Aplicación El precio de la Seguridad El incremento de tiempo en la creación es de 0,28 seg. En tiempo de reanudación de MILENIO es de 2,7 seg y el de los aglets 2,1. Sólo 0,6 segundos más. La perdida de desempeño en el envío por incluir todas las técnicas de seguridad es de un 115%. MILENIO es más rápido en un 98% si no se utiliza ninguna técnica de criptografía.
55 VI-Evaluación y Ámbitos de Aplicación Aplicaciones a otros SAMs Autenticación múltiple mediante firmas digitales. Esquema de asignación individual de priviegios para cada autoridad reconocida en el sistema indicando el acceso especifico a cada recurso. Control de recursos por agente y por autoridad. Envío de agentes comprimido y seguro mediante SSL. Política de Seguridad dinámica. Restricción del Acceso al Sistema. Inclusión de la técnica de encriptación de datos mediante mapas de bits y puertas XOR. Uso del concepto de región para crear redes seguras.
56 VI-Evaluación y Ámbitos de Aplicación Aplicaciones Diversas Aplicaciones de Pago por acceso a un recurso: Bibliotecas digitales, ciber video clubs, Licencias de Software. Sistemas de Comercio electrónico. Verificación y restricción de acceso al mercado electrónico. Consumación de operaciones. Operaciones Bancarias. Distribución selectiva y certificada de información . Aplicaciones que requieran modificar su política de seguridad en tiempo de ejecución. Aplicaciones Diversas que exijan seguridad. Aplicaciones concurrentes. Uso moderado de recursos de una supercomputadora.
57 VI-Evaluación y Ámbitos de Aplicación Cambios en la Política de Seguridad
58 Objetivos y Organización. Parte I: Introducción. Parte II: Estado del arte. Parte III: Requerimientos de un Sistema de Agentes Móviles y la necesidad de una arquitectura de seguridad. Parte IV: Arquitectura de Seguridad Integral. Parte V: Implementación del Prototipo. Parte VI: Evaluación y Ámbitos de la Aplicación.. Parte VII: Conclusiones y líneas de investigación futuras. Contenido
59 VII-Conclusiones y Líneas de Investigación Futuras Resultado General a Destacar Se creó una arquitectura de seguridad integral genérica para sistemas de agentes móviles que ofrece protección total para el servidor, para la transmisión de agentes e información y para los agentes móviles. La arquitectura hace uso de las técnicas de criptografía más actuales, es versátil, eficiente, escalable y dinámica en tiempo de ejecución. Se probó su factibilidad creando un SAM con un entorno visual de ejecución. Al incorporar la arquitectura se logró tener un sistema seguro y eficiente que permite el desarrollo de cualquier tipo de aplicaciones de agentes móviles incluyendo a aquellas que exigen los más grandes requisitos de seguridad.
60 VII-Conclusiones y Líneas de Investigación Futuras Resultados Específicos a Destacar(1) Autenticación de autoridades de servidores y agentes. Autorización de recursos individuales con privilegios de acceso específicos para cada autoridad reconocida en el sistema (tanto para locales como para remotas). Control mediante asignaciones de los recursos consumidos en el sistema por agente y por autoridad o sistema remoto. Uso de dominios de protección para facilitar el cumplimiento de privilegios. Transmisión segura de agentes mediante SSL. Protección del agente mediante firmas digitales para el código y la técnica de encriptación de mapas de bits y puertas XOR para los datos.
61 VII-Conclusiones y Líneas de Investigación Futuras Resultados Específicos a Destacar(2) Política de seguridad dinámica que permite modificar los permisos en tiempo real. Compartición segura de ficheros en tiempo de ejecución. Sistema de seguridad inteligente que detecta escasez de recursos y mantiene la estabilidad de sistema. Control de acceso al sistema restringido que se valida contra un repositorio de llaves de autoridades. Uso de regiones para crear redes seguras. Los resultados de SAHARA contribuyen a mejorar los modelos de seguridad de los sistemas de agentes actuales. La arquitectura es escalable y 100% factible de implementar.
62 VII-Conclusiones y Líneas de Investigación Futuras Líneas de Investigación Seguridad Mecanismo de distribución de claves públicas entre servidores. Protección total de los datos del agente. Restricción del consumo de HD y RAM por agente. Intercambio de mensajes e información entre agentes de forma segura. Interoperabilidad e implementación Interoperabilidad con otros sistemas de agentes móviles. Integración de los agentes móviles en los navegadores. Integración de la tecnología con tecnología CORBA y XML. Una implementación más eficiente.
63 VII-Conclusiones y Líneas de Investigación Futuras Aportaciones a la Investigación(1) Different platforms for mobile agents development, is java the dominant trend? The International Workshop on Intelligent Agents on the Internet and Web, IV World Congress on Expert Systems, México, 1998. Mobile agents development on the internet, is java or corba the dominant trend? The Third International Conference and Exhibition on The Practical Application of Intelligent Agents and Multi-Agent Technology PAAM98. ISBN: 0 9525554 8 4. Londres 1998. Interoperabilidad de sistemas de información geográfica utilizando máquinas virtuales, componentes y agentes móviles. Simposium Internacional de Sistemas de Información Geográfica Colombia, 1998. Study of the performance of a unix serverwith aglets. Worshop on European Scientific and Industrial Collaboration on promoting Advanced Tecnologies in Manufacturing, WESIC98. ISBN: 84-95138-08-5, España 1998.
64 VII-Conclusiones y Líneas de Investigación Futuras Aportaciones a la Investigación(2) Parallel programming on the internet using mobile agents. Second IASTED International Conference European Parallel and Distributed Systems EURO-PDS98. ISBN: 1027-2658 y 0-88986-266-4. Austria. 1998. Desing patterns for mobile agents applications. V Congreso Internacional de Investigación en Ciencias Computacionales CIICC´98. ISBN: 970-13-2261-4. México, 1998. A network monitoring system with aglets. V Congreso Internacional de Investigación en Ciencias Computacionales CIICC´98. ISBN: 970-13-2261-4. México, 1998. Remote database querying using mobile agents. World Multiconference on Systemics, Cybernetics and Informatics and 4th International Conference on Information Systems, Analysis and Synthesis. ISBN: 980-07-5914-X, USA 1999.
Página anterior | Volver al principio del trabajo | Página siguiente |