860 likes | 1.18k Views
Tesis Doctoral. Núcleo de Seguridad para un Sistema Operativo Orientado a Objetos Soportado por una Máquina Abstracta. Autora: Mª Ángeles Díaz Fondón Director: Juan Manuel Cueva Lovelle Departamento de Informática Universidad de Oviedo. Tesis Doctoral Índice. Objetivos y Organización
E N D
Tesis Doctoral Núcleo de Seguridad para unSistema Operativo Orientado a Objetos Soportado por una Máquina Abstracta Autora: Mª Ángeles Díaz Fondón Director: Juan Manuel Cueva Lovelle Departamento de Informática Universidad de Oviedo Tesis Doctoral
Tesis DoctoralÍndice • Objetivos y Organización • Fase 1: Estado del arte • Fase 2: Análisis de requisitos • Fase 3: Estudio de los sistemas relevantes • Fase 4: Elaboración del núcleo de seguridad • Fase 5: Demostración de la idea • Conclusiones Tesis Doctoral
Objetivos y Organización de esta Tesis Desarrollo de un núcleo básico de seguridad (mecanismo de protección) para un Sistema Integral Orientado a Objetos (SIOO) con máquina abstracta,permitiendo cooperación segura entre objetos. • Cumplimiento requisitos de diseño de mecanismos de seguridad y específicos de SIOO • Protección total, homogénea y a nivel de métodos • Solución más elegante y completa de necesidades de protección de un SIOO • Rendimiento adecuado Objetivos Básicos • Uniformidad, Flexibilidad, Integración en el modelo Tesis Doctoral
FASE III FASE IV FASE I FASE II FASE V Estudio de Elaboración del Estado del Análisis de Demostración de la sistemas núcleo de Arte Requisitos idea relevantes seguridad Objetivos y Organización de esta Tesis • Fases del desarrollo Tesis Doctoral
Tesis DoctoralÍndice • Objetivos y Organización • Fase II: Análisis de requisitos • Fase III: Estudio de los sistemas relevantes • Fase IV: Elaboración del núcleo de seguridad • Fase V: Demostración de la idea • Conclusiones • Fase I: Estado del arte Tesis Doctoral
Fase I: Estado del arteNecesidad de un Sistema Integral OO • Tendencia hacia Sistemas Distribuidos • Desadaptación de impedancias con el uso de TOO • Base hardware convencional • Sistemas Operativos convencionales • Necesidad de comunicación entre espacios de direcciones • Necesidad de comunicación entre modelos de objetos • Soluciones aportadas con capas intermedias de adaptación Tesis Doctoral
Fase I: Estado del arteSistema Integral Orientado a Objetos Mundo de objetos homogéneos, virtualmente infinito en espacio y tiempo, independientes de la localización, con soporte exclusivamente OO. Tesis Doctoral
Fase I: Estado del arteSoluciones de seguridad existentes • Heterogeneidad de protección • Uso de diversos mecanismos • Base de Computación fiable(BCF) grande • “Agujeros” por interacciónno prevista entre mecanismos • Inseguridad en distribución • Falta de protección para la interoperabilidad de objetos distribuidos • Pocas y malas soluciones de seguridad Tesis Doctoral
Fase I: Estado del arteSeguridad en un SIOO • Núcleo de seguridad homogéneo Tesis Doctoral
Fase I: Estado del arteConceptos Generales • Aspectos de la seguridad de un sistema • Seguridad en el acceso al sistema • Seguridad en el uso de recursos y servicios • Seguridad en el uso de redes • Separación entre seguridad y protección • Política: Establece qué accesos son permitidos • Mecanismo: Proporciona cómo se controlan los accesos (Protección) • Objetivo: Búsqueda de mecanismo de control de acceso a recursos y servicios (objetos en un SIOO) Tesis Doctoral
Fase I: Estado del arteProblemas relativos a la seguridad • Problema de la fuga de información • 4 casos, dependiendo de: • Existencia o no de canal de comunicación entre servidor y espía • Compinchamiento o no entre servidor y espía Tesis Doctoral
Fase I: Estado del arteProblemas relativos a la seguridad • Denominaciones de problemas de fuga • Defensa perimetral (canal no, compinches no) • Representante confuso (canal sí, compinches no) • Confinamiento (canal no, compinches sí) • Conspiradores en comunicación (canal sí, compinches sí) • Denominaciones clásicas de los problemas • Delegación y sospecha mutua • Confinamiento y Propagación • El problema de la Revocación Tesis Doctoral
Fase I: Estado del arteModelos de control de acceso • Modelo de Matriz de Acceso (discrecional) • Listas de control deacceso (LCA) • Capacidades • Modelo mixto • Modelo Take Grant • Modelo de flujo de información Tesis Doctoral
Tesis DoctoralÍndice • Objetivos y Organización • Fase I: Estado del Arte • Fase III: Estudio de los sistemas relevantes • Fase IV: Elaboración del núcleo de seguridad • Fase V: Demostración de la idea • Conclusiones • Fase II: Análisis de requisitos Tesis Doctoral
Fase II: Análisis de RequisitosRequisitos del mecanismo básico 1- Plataforma de desarrollo SIOO Requisitos de la plataforma [Álv98] • Uniformidad conceptual en torno a la OO • Modo de trabajo exclusivamente OO • Homogeneidad de objetos • Transparencia • Heterogeneidad y portabilidad • Seguridad, Concurrencia • Multilenguaje/Interoperabilidad • Flexibilidad Tesis Doctoral
Fase II: Análisis de RequisitosRequisitos del mecanismo básico -Arquitectura SIOO • Máquina abstractareflectiva OO • Modelo único de objetosdel sistema • Sistema Operativo OO • Conjunto de objetosnormales • Transparencia: persistencia, concurrencia, distribución • Espacio único de objetos sin separación usuario/sistema • Extensibilidad: OO, modificación máquina, funcionalidad clases básicas, reflectividad Tesis Doctoral
Fase II: Análisis de RequisitosRequisitos del mecanismo básico 2- Requisitos de protección • Uniformidad en la protección • Igual protección para todos los objetos • Protección de granularidad fina • A nivel de métodos individuales • Flexibilidad • Base de diferentes políticas sobre el núcleo básico • Movilidad • No deben producirse restricciones de movilidad de objetos • Uniformidad en la orientación a objetos • No introducir abstracciones adicionales Tesis Doctoral
Fase II: Análisis de RequisitosRequisitos del mecanismo básico 3- Principios básicos de diseño(Saltzer y Shroeder 1975) • Mínimo Privilegio • Permitir lo estrictamente necesario • Ahorro de Mecanismos • Sencillez de conceptos, diseño e implementación • Aceptación por el usuario • Mediación Total • Ninguna operación escapa al control de seguridad • Diseño Abierto Tesis Doctoral
Tesis DoctoralÍndice • Objetivos y Organización • Fase I: Estado del Arte • Fase III: Estudio de los sistemas relevantes • Fase IV: Elaboración del núcleo de seguridad • Fase V: Demostración de la idea • Conclusiones • Fase 3: Estudio de los sistemas relevantes Tesis Doctoral
Fase III: Estudio de Sistemas RelevantesResumen de características • Sistemas con soporte para modelo de objetos e interoperabilidad • Sistemas Distribuidos, basados en objetos, de grano grueso • Sistemas para gestión de MGP INCONVENIENTES • Falta de Uniformidad, Flexibilidad, Mínimo privilegio y Mediación total Tesis Doctoral
Fase III: Estudio de Sistemas RelevantesModelo de Seguridad en Java Caja de arena (JDK 1.0-1.1) Control de acceso Introspección en pila • Código local / Código remoto • Firmas digitales = código local • El control se realiza en función del cargador • Inconvenientes: Inflexibilidad y sin mínimo privilegio Tesis Doctoral
Fase III: Estudio de Sistemas RelevantesModelo de Seguridad en Java Arquitectura seguridad (JDK 1.2) • La política asocia clases con dominios Control de acceso: Introspección en pila • En las operaciones peligrosas se llama al controlador de acceso • Con introspección (1.2) se comprueban permisos (intersección dominios) Tesis Doctoral
Fase III: Estudio de Sistemas RelevantesInconvenientes de Java • Base de computación fiable muy grande y compleja • Granularidad no al nivel de objetos individuales • Falta de uniformidad y generalidad del mecanismo: responsabilidad del usuario en la implementación de la protección • Falta de flexibilidad para introducir protección a posteriori ¿? • Falta de adaptabilidad. Mecanismo “pesado”¿? • Sin mediación total • Aceptación difícil por el usuario Tesis Doctoral
Tesis DoctoralÍndice • Objetivos y Organización • Fase 1: Estado del arte • Fase 2: Análisis de requisitos • Fase 3: Estudio de los sistemas relevantes • Fase 5: Demostración de la idea • Conclusiones • Fase 4: Elaboración del núcleo de seguridad Tesis Doctoral
Fase IVElaboración del Núcleo de Seguridad Aspectos en que se divide el desarrollo de la idea 1- Elección del modelo de protección 2- Diseño del modelo 3- Diseño del mecanismo de comprobación de acceso Tesis Doctoral
Fase IV: Elaboración del núcleo de seguridadElección del Modelo de Protección • Análisis de modelos existentes • Modo de trabajo • Cumplimiento de requisitos • Comportamiento respecto a problemas de seguridad • Modelos • Listas de Control de Acceso • Capacidades • Modelo Mixto • Retículo, Introspección de pila • Elección de Capacidades: modelo más adecuado Tesis Doctoral
Elección del Modelo de ProtecciónAnálisis de Listas de Control de Acceso • Control de acceso a través de la búsqueda en una lista de clientes • En un SIOO cada objeto (recurso) llevará asociada una LCA • En un sistema discrecional cada objeto puede añadir clientes a su LCA a voluntad Tesis Doctoral
Elección del Modelo de ProtecciónAnálisis de Listas de Control de Acceso • Problema: Falta de escalabilidad • En espacio, tiempo, movilidad de objetos • Intento de reducción de problemas escalabilidad • Del número de listas: agrupación en ámbitos (Guide) • Del número de entradas de cada lista: grupos (Unix) Tesis Doctoral
Elección del Modelo de ProtecciónAnálisis de Listas de Control de Acceso Problemas de la reducción: disminuye la seguridad • Mediación parcial con la creación de ámbitos • Sin mínimo privilegio con la creación de grupos. Otros problemas de las LCAs • Dominio de protección asociado al usuario • Dependencia entre objetos • Sobrecarga del mecanismo de protección • Comprobación única primer acceso: imposible revocar (Unix) • Complejidad • No soluciona el problema del confinamiento Tesis Doctoral
Elección del Modelo de ProtecciónAnálisis de Capacidades • Control de acceso a través de “entrada” o “llave” al servidor • Capacidad: Token que da autoridad para realizar operaciones sobre los objetos Tesis Doctoral
Elección del Modelo de ProtecciónAnálisis de Capacidades • Independencia entre objetos respecto al mecanismo. • Control anónimo a la identidad del poseedor. • Facilita la distribución • Facilita la escalabilidad en espacio y tiempo • Posibilita el control de grano fino • Facilita la movilidad • Integración en el modelo de objetos • Transmisión de capacidad en el intercambio de mensaje • Flexibilidad: independencia del concepto usuario Tesis Doctoral
Elección del Modelo de ProtecciónAnálisis de otros modelos • Modelo Mixto • Inconvenientes de las LCA • Modelo reticular • Control no discrecional • Exclusivo de ámbitos especializados • Introspección de pila • Específico de una implementación particular. No portable Tesis Doctoral
Elección del Modelo de ProtecciónElección de Capacidades • Adaptación capacidades como mecanismo protección • Adecuado para un SIOO • Objetos como entidades autónomas y autocontenidas • Adecuado para un Sistema Distribuido • Protección a nivel de cualquier granularidad • Capacidades modelo idóneo • Integración en el modelo de objetos Tesis Doctoral
Elección del Modelo de ProtecciónCapacidades: Conceptos Generales • Qué es una capacidad • Una referencia a un objeto junto con un conjunto de permisos sobre las operaciones de ese objeto. La posesión de una capacidad es condición necesaria y suficiente para tener acceso al objeto al que se refiere Tesis Doctoral
Elección del Modelo de ProtecciónCapacidades: Conceptos Generales • Modo de Operación • Problema: evitar la falsificación Tesis Doctoral
Elección del Modelo de ProtecciónCapacidades: Conceptos Generales • Implementación de capacidades • Etiquetado Hardware y Segregación (zona protegida) • Capacidades dispersas (encriptadas) • Flexibilidad estructuras usuario vs. esfuerzo control falsificación • Permisos sobre los métodos • Todo/nada (acceso total o acceso denegado) • Número fijo de permisos (métodos a proteger) • Permisos relativos a la propia capacidad • Copia, eliminación de instancias, eliminación de capacidades Tesis Doctoral
Elección del Modelo de ProtecciónCapacidades: Conceptos Generales • Operaciones intrínsecas a las capacidades • Restricción de permisos (mínimo privilegio) • Copia de capacidad, creación de capacidades, incialización, revocación. • Implantación del Mecanismo • En el Sistema Operativo • En los servidores de usuario • sin mediación total, responsabilidad del usuario • En el compilador y soporte en tiempo de ejecución • Dependencia de un lenguaje y posibilidad de agujeros en espacio de usuario Tesis Doctoral
Elección del Modelo de ProtecciónCapacidades: Conceptos Generales • Puntos a favor de las capacidades • Denominación y protección combinadas • Independencia cliente/servidor • Eficiencia, simplicidad • Flexibilidad, escalabilidad • Inconvenientes de las capacidades • Control de la propagación (también con LCA) • Solución: Monitor de referencia (análisis invocaciones) • Revisión y revocación de permisos • Solución: Indirección con fachadas Tesis Doctoral
Fase IVElaboración del Núcleo de Seguridad Aspectos en que se divide el desarrollo de la idea 1- Elección del modelo de protección 3- Diseño del mecanismo de comprobación de acceso 2- Diseño del modelo de protección Tesis Doctoral
Diseño del Modelo de ProtecciónDiseño de las Capacidades Nuevo tipo de capacidades: Orientadas a Objetos • Se integra la información de protección con las referenciasa objetos de la máquina abstracta • Combina las ventajas de lostipos existentes, evitando susinconvenientes • Protección automática decapacidades Tesis Doctoral
Diseño del Modelo de ProtecciónDiseño de las Capacidades Permisos sobre los métodos que portan las capacidades: Número de permisos variable • Tantos como métodos tenga el objeto Permisos relativos a la propia capacidad: Salto de protección • Equivale a tener todos los permisos: comprobación no necesaria • Optimización de llamadas a objetos no compartidos • Alivia la sobrecarga de protección • Activado inicialmente en la creación de un objeto Tesis Doctoral
Diseño del Modelo de ProtecciónDiseño de las Capacidades Operaciones intrínsecas a las capacidades Restricción de capacidades • Operación Restringir <capacidad> <método> • Única funcionalidad exclusiva de la protección • Elegida por su sencillez frente a uso de máscara • Implantada como instrucción de la máquina o como método de la clase raíz • Resto de operaciones sobre capacidades • Las ya existentes para las referencias • No se incorpora directamente la revocación • Posibilidad de extender el sistema incluyéndola si fuera preciso (fachadas) Tesis Doctoral
Fase IVElaboración del Núcleo de Seguridad Aspectos en que se divide el desarrollo de la idea 1- Elección del modelo de protección 2- Diseño del modelo de protección 3- Diseño del mecanismo de comprobación de acceso Tesis Doctoral
Diseño del Mecanismo de control de accesoComprobación de permisos Diseño del mecanismo de comprobación de permisos: Implementación en la máquina abstracta • Otras implementaciones descartadas por inconvenientes • Se ajusta a la integración con el paso mensajes: Máquina • Ahora además comprobará los permisos en la referencia • Mediación total: todas las operaciones controladas • El paso de mensajes es la única forma de operar en el sistemas • Referencias son abstracciones del sistema • Permite número variable de permisos igual al de métodos del objeto Tesis Doctoral
Diseño del Mecanismo de control de accesoComprobación de permisos Integración con la invocación de métodos Tesis Doctoral
Fase IV: Elaboración del núcleo de seguridadResumen del Diseño • Uso de capacidades para la protección: control de acceso discrecional • Nuevo tipo de capacidades: Capacidades Orientadas a Objetos • Fusión de las capacidades y las referencias a objetos de la máquina • Diseño de las capacidades: Capacidades Orientadas a Objetos • Permisos al nivel de métodos individuales de los objetos • Número variable de permisos (tantos como métodos tenga el objeto) • Permisos relativos a la propia capacidad: Salto de protección (Todos los permisos activos, no se necesita comprobar) • Operaciones intrínsecas a las capacidades: Restricción de métodos • Diseño del mecanismo: implantación en la máquina abstracta • Integración de la comprobación en el mecanismo de envío de mensajes de la máquina Tesis Doctoral
Fase IV: Elaboración del núcleo de seguridad Ventajas del Modelo diseñado 1- Cumplimiento de los principios básicos de diseño • Mínimo privilegio • Granularidad fina de protección: métodos individuales desde objetos individuales • Ahorro de mecanismos: robustez • Sencillez conceptual y de implementación (menos agujeros por errores) • Aceptación • Misma semántica del sistema anterior • Mediación total • Todas las operaciones (invocaciones) son controladas • Diseño abierto Tesis Doctoral
Fase IV: Elaboración del núcleo de seguridad Ventajas del Modelo diseñado 2- Cumplimiento requisitos protección para un SIOO • Uniformidad en la Orientación a Objetos y homogeneidad • Integración fluida en el modelo del sistema, misma semántica • Único mecanismo de protección protege todos objetos por igual • Flexibilidad • Extensibilidad SIOO: Múltiples políticas posibles sobre mecanismo básico • Desarrollo (y sobrecarga) extensiones sólo usado si se necesita • Movilidad • Objetos autónomos: encapsulan también su información de protección en las capacidades • Protección de granularidad fina • Permisos de longitud variable: protección de métodos individuales (mínimo privilegio) Tesis Doctoral
Fase IV: Elaboración del núcleo de seguridad Ventajas del Modelo diseñado 3- Resolución de problemas de un sistema de seguridad • Defensa perimetral • Capacidades único canal de comunicación posible en el sistema • Imposibilidad del espía de obtener canal comunicación con servidor • El servidor no está compinchado y nunca le pasaría una capacidad para que tuviera acceso a él • Delegación (representante confuso) • Cliente simplemente pasa capacidad (restringida) para los datos privados al servidor • Espía no puede engañar al servidor puesto • No puede denominar los datos privados (objeto privado) • Necesitaría previamente una capacidad para ellos (las capacidades son el único medio de denominar a un objeto en el sistema) Tesis Doctoral
Fase IV: Elaboración del núcleo de seguridad Ventajas del Modelo diseñado • Problema característico generado por las listas de control de acceso • Dominio protección asociado al usuario (cada proceso tiene el máximo de privilegios del usuario) • Espía puede denominar cualquier objeto en general (ej. Fichero de datos privados) y engañar al servidor comunicándoselo • El proceso servidor actúa con todos los permisos de su usuario, incluyendo el acceso al objeto privado (al que el espía no debería poder acceder) • Servidor : compilar <fuente> <log> (graba factura en /adm/factura) • Espía: compilar mifichero /adm/factura (sobreescribe los datos de facturación con el log) Tesis Doctoral