1 / 103

Security Models and Architecture

Security Models and Architecture. Arquitectura Computacional. Envuelve a las partes de un sistema de cómputo que son necesarias para que éste funcione. CPU ( Central Processing Unit ). Esta compuesto de: ALU ( Arithmetic Logic Unit ) Unidad de control Registros. Memoria.

mimid
Download Presentation

Security Models and Architecture

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Security Models and Architecture 1

  2. Arquitectura Computacional • Envuelve a las partes de un sistema de cómputo que son necesarias para que éste funcione. 2

  3. CPU (Central Processing Unit) • Esta compuesto de: • ALU (Arithmetic Logic Unit) • Unidad de control • Registros 3

  4. 4

  5. 5

  6. Memoria • Read Access Memory (RAM) • Lectura / escritura • Volátil • Dinámica / estática • Read-only memory (ROM) • No volátil • Sólo lectura • Erasable and programmable read-only memory (EPROM) • Se pude borrar o escribir en ella • Primary storage: Memoria principal, directamente accedida por el CPU. • Secondary storage: Almacenaje no volátil (floppy disk, CD-ROM disk, harddrive, etc.). • Virtual storage: La combinación de RAM y almacenaje secundario (paginación), 6

  7. Acceso a Memoria 7

  8. Protection Rings • Es un mecanismo de seguridad que provee el CPU con apoyo del Sistema Operativo. • Los anillos establecen los límites para procesos que corren en ellos, indicando qué pueden acceder y que operaciones pueden ejecutar. • Los procesos que corren en los anillos interiores (privileged) tienen más privilegios que los que corren en los anillos exteriores (user mode). • A menor número de anillos, mayor será la cantidad de privilegios que tengan los procesos. • Si un proceso en los anillos exteriores quiere acceder a recursos ubicados en los anillos interiores, lo hace mediante llamadas al Sistema Operativo. 8

  9. 9

  10. Procesos • Un proceso es un programa en ejecución que trabaja en su propio espacio de direcciones. • Un hilo (thread) representa una parte del código que es ejecutada dentro del proceso. • Un proceso tiene cuatro estados de operación: • Stopped: No está corriendo. • Waiting: Está esperando por una interrupción para interacturar con el CPU. • Running: Está siendo ejecutado por el CPU. • Ready: Está listo para ser usado y esperando por instrucciónes. 10

  11. Multithreading: El sistema puede procesar más de una petición al mismo tiempo. • Multitasking: El sistema puede procesar más de un proceso o tarea al mismo tiempo. • Multiprocessing: Si tiene más de un procesador, puede utilizar sus procesadores para ejecutar instrucciones paralelamente. • Deadlock: Esta situación ocurre cuando dos procesos están tratando de acceder al mismo recurso al mismo tiempo o cuando un proceso termina de utilizar un recurso pero no lo libera. 11

  12. Arquitectura de Sistemas • Debe definir dónde tiene que haber mecanismos de protección. • En el lado del usuario • Dónde está almacenados los datos • Dentro del ambiente dónde ocurren las transacciones • Entre más complejos sean los mecanismos, menor confianza traen. • El primer paso es identificar cuáles son los objetos de confianza, y cuáles no lo son. 12

  13. Trusted computing base (TCB) • Trusted computing base (TCB) es la combinación de mecanismos de seguridad dentro de un sistema. • Tiene su origen en el Orange Book; no se enfoca al nivel de seguridad, sino al nivel de confianza desde la perspectiva de seguridad. • Entre los componentes que conforman el TCB están el hardware, software, y firmware que proveen algún tipo de protección. • Un perímetro de seguridad es una frontera imaginaria que tienen a los componentes de confianza (TCB) dentro y a los que no lo son afuera. 13

  14. La comunicación entre componentes de confianza y de no confianza necesita ser controada para asegurar que la información confidencial no está fluyendo de una manera no deseada. 14

  15. El concepto de monitor de referencia se refiere a que una máquina abstracta asegura que los subjects (programas, usuarios, o procesos) tienen los derechos de acceso necesarios antes de acceder a los objetos (archivos, programas, o recursos). • El security kernel es el hardware, firmware, y software del TCB que implementa el concepto de monitor de referencia. • El security kernel debe aislar los procesos que llevan a cabo el monitor de referencia, debe se inalterable, debe invocar el monitor de referencia por cada intento de acceso y debe ser lo suficientemente pequeño para que se le hagan pruebas. 15

  16. Dominios • Un dominio es el conjunto de objetos que un subject puede acceder. • Los programas que residen en dominios privilegiados necesitan ejecutar sus instrucciones con la seguridad de que los programas en diferentes dominios no los afectarán de manera negativa. Estos dominios son referenciados como dominios de ejecución. 16

  17. Aislamiento de recursos • Los recursos, por ejemplo los procesos, necesitan ser aislados y típicamente se hace utilizando direccionamiento a memoria segmentada. • Sistemas que tienen un nivel de confianza más alto pueden implementar segmentación de hardware en la memoria utilizada por diferentes procesos. 17

  18. Política de Seguridad • Estamos hablando de la política de seguridad del sistema, no de la organización. • Una política de seguridad es un conjunto de reglas que dictan cómo los datos sensitivos son manejados, protegidos y distribuidos. Provee los objetivos de seguridad que el sistema debe cumplir. • El nivel de seguridad que el sistema provee depende de que también hace cumplir la política de seguridad. • Un sistema de seguridad multinivel procesa datos con diferentes clasificaciones (niveles de seguridad) y tiene usuarios con diferentes niveles de privilegios (niveles de seguridad). 18

  19. Mínimo privilegio • Después de haber aislado apropiadamente los recursos y procesos, se necesita asignar el mínimo privilegio a estos, es decir que sólo tendrán los privilegios necesarios para cumplir con su tarea y ningún otro. 19

  20. Layering: Algunos sistemas proveen funcionalidades en diferentes capas, agregando modularidad al sistema al separar los procesos y recursos. Las capas se pueden comunicar entre sí, sólo si existen las interfaces para esto. • Data hiding: Los procesos en diferentes capas no se conocen, y por lo tanto no tienen comunicación. • Abstraction: Es la asignación de permisos a una clase de objetos (grupos de objetos). 20

  21. Modelos de Seguridad • Un modelo de seguridad liga los objetivos abstractos de la política a términos del sistema de información especificando las estructuras y técnicas necesarias para cumplir con ésta. • Una política de seguridad esboza los objetivos sin tener idea de cómo se conseguirán, mientras que el modelo es un framework que da forma a la política resuelve los problemas de seguridad para situaciones específicas. 21

  22. Modelo de Máquina de Estados • Un modelo de máquina de estados trabaja con los diferentes estados en los que un sistema puede entrar, si un sistema inicia en un estado seguro, todos los estados de transición entran de manera segura, y si el sistema se cae o falla lo hará de manera segura; el sistema nunca terminara en un estado no seguro. 22

  23. Bell-LaPadula • Desarrollado por el gobierno de E.U.A. • El principal objetivo del modelo es prevenir que la información sea accedida de manera no autorizada (Confidencialidad). • Los sistemas que utilizan el Bell-LaPadula son sistemas multinivel. • Es un modelo de flujo de información seguro. • La clasificación de la información determina los procedimientos que se deben usar para su manejo. El conjunto de derechos de acceso se le conoce como lattice, que es el límite superior e inferior para el acceso autorizado. 23

  24. Simple security rule: Un subject no puede leer datos que estén en un nivel mayor de seguridad que ellos. • *-property rule: Un subject no puede escribir datos a un que esté en un nivel menor de seguridad. • Strong star property rule: Un subject que tenga permisos de lectura / escritura sólo puede hacer ejecutar estas funciones en el mismo nivel de seguridad. 24

  25. Biba Model • Se enfoca en la integridad de la información. • Simple integrity axiom: Un subject no puede leer datos de un nivel inferior de integridad (no read down). • *-integrity axiom: Un subject no puede modificar un objeto con un nivel mayor de integridad (no write up).. 25

  26. Clark-Wilson • Enfocado en la integridad de la información. • Utilizado comercialmente. • Subjects sólo pueden acceder objetos a través de programas (access triple). • La segregación de funciones es obligatoria. • Auditoría es requerida. 26

  27. Information flow model: El flujo de información está restringido a ir y venir de entidades de manera que no se contraponga con la política de seguridad. Noninterference model: Los comandos y actividades desarrolladas en un nivel de seguridad no deben ser afectadas por entidades u objetos que están en otro nivel. • Brewer and Nash model (Chinese Wall): Un modelo que permite el cambio dinámico de los controles de acceso para proteger contra conflictos de intereses. • Graham-Denning model: Un modelo que crea permisos para los subjects, correlacionando las operaciones que pueden ser ejecutadas en los objetos. • Harrison-Ruzzo-Ullman model: Permite cambiar los derechos de acceso y especifica cómo subjects y objetos deben ser creados y borrados. 27

  28. Si un sistemas está trabajando en dedicated security mode, sólo está manejando un nivel para la clasificación de la información y todos los usuarios deben tener está clasificación para poder usar el sistema. Todos los usuarios pueden ver toda la información. • Si un sistemas está trabajando en system-high security mode, sólo está manejando un nivel para la clasificación de la información y todos los usuarios deben tener está clasificación para poder usar el sistema. No todos los usuarios tienen la necesidad de ver toda la información. • Si un sistemas está trabajando en Compartmented security mode, los usuarios pueden acceder a segmentos o a ciertas categorías de datos. 28

  29. The Orange Book • Publicado por el departamento de defensa de E.U. y es usado para evaluar sistemas operativos, aplicaciones y diferentes productos. • El nombre oficial es Trusted Computer System Evaluation Criteria (TCSEC). • TCSEC provee una clasificación para dividir los niveles de seguridad: • A Verified protection • B Mandatory protection • C Discretionary protection • D Minimal security • TCSEC incluye cuatro temas principales: security policy, accountability, assurance, and documentation. 29

  30. Division D: Minimal Protection Es usada para los sistemas que fallaron al ser evaluadas con divisiones superiores. Division C: Discretionary Protection C1: Discretionary Security Protection El control de acceso está basado en individuos y / o grupos. Requiere una separación de usuarios e información, además de la identificación y autenticación de entidades individuales. C2: Controlled Access Protection Requiere que los objetos estén protegidos durante la reutilización, y que tengan auditoría y que sean auditables. 30

  31. Division B:Mandatory Protection B1: Labeled Security Cada objeto debe tener una etiqueta de su clasificación y cada subject debe tener su nivel de clearance. B2: Structured Protection Debe asegurar que no existan cover channels, y debe proveer la funcionalidad de administrador. B3: Security Domains • Se debe definir un rol de security administrator. • El sistema se debe recurar de algún fallo sin comprometer la seguridad. • El sistema motitorea eventos y notifica de estos al personal de seguridad. 31

  32. Division A: Verified Protection A1: Verified Design • El diseño y nivel de protección es verificable y provee el máximo nivel de aseguramiento y confianza. 32

  33. Information Technology Security Evaluation Criteria (ITSEC) • The Information Technology Security Evaluation Criteria (ITSEC) fue un intento de los países europeos para desarrollar y usar un solo criterio de evaluación. • ITSEC evalúa el aseguramiento y funcionalidad de los sistemas por separados, combinando estos raitings. 33

  34. 34

  35. Common Criteria • Common Criteria fue desarrollado para proveer un criterio de evaluación global. Combina secciones de TCSEC, ITSEC, CTCPEC y Federal Criteria. • Common Criteria utiliza protection profiles y ratings desde EAL1 a EAL7. • Después de la evaluación se asigna un evaluation assurance level (EAL). • El protection profile contiene los requerimientos de seguridad. 35

  36. EAL 1 Functionally tested • EAL 2 Structurally tested • EAL 3 Methodically tested and checked • EAL 4 Methodically designed, tested, and reviewed • EAL 5 Semiformally designed and tested • EAL 6 Semiformally verified design and tested • EAL 7 Formally verified design and tested 36

  37. 37

  38. Certificación vs Acreditación • Certificación es una evaluación técnica de un sistema y sus componentes de seguridad. • Acreditación es la aprobación formal por parte de la administración de la seguridad que provee el sistema. 38

  39. Sistemas abierto vs. Sistemas cerrados • Un sistema abierto está construido utilizando estándares, protocolos e intefaces que permiten tener una interoperabilidad con otros sistemas y productos, no importando si son de otras marcas o utilizan otra tecnología. • Un sistema cerrado trabaja en un ambiente propietario, lo que provoca una reducción en la interoperabilidad y funcionalidad de éste. 39

  40. Backdoor • También conocidas comomaintenance hooks. • Son funciones dentro del código del sistema que permiten al programador tener acceso a éste sin ninguna restricción. 40

  41. Covert Channels • Son flujos de información que no están siendo controlados por mecanismos de seguridad. • Covert timing channel, manda información a otro proceso mediante la modulación de recursos del sistema. • Covert storage channel, ocurre cuando un proceso escribe en una ubicación de almacenamiento, y otro proceso lee esa información; el problema se encuentra cuando los procesos tienen distintos niveles de seguridad y no deberían compartir información. 41

  42. Asynchronous Attack • Asynchronous attack utiliza la secuencia de pasos que un sistema utiliza para completar una tarea, para ejecutar actividades no permitidas. • TOC/TOU attack (time-of-check versus time-of-use) es un ataque asíncrono que se enfoca a realizar actividades durante el tiempo de revisión. 42

  43. Buffer Overflow • Ocurre cuando no se valida la longitud de la información que se le suministra al sistema. • Si el sistema está esperando 80 caracteres, pero se le manda 100, los 20 caracteres extra se posicionan en memoria y son ejecutadas por el CPU. 43

  44. Pregunta • 1. What flaw creates buffer overflows? • A. Application executing in privileged mode • B. Inadequate memory segmentation • C. Inadequate protection ring use • D. Insufficient parameter checking 44

  45. Respuesta • D. A buffer overflow takes place when too much data is accepted as input. Programmers should implement the correct security controls to ensure that this does not take place. This means they need to perform bounds checking and parameter checking to ensure only the allowed amount of data is actually accepted and processed by the system. 45

  46. Pregunta • 2. The operating system performs all except which of the following tasks? • A. Memory allocation • B. Input and output tasks • C. Resource allocation • D. User access to database views 46

  47. Respuesta • D. The operating system has a long list of responsibilities, but implementing database views is not one of them. This is the responsibility of the database management software. 47

  48. Pregunta • 3. If an operating system allows sequential use of an object without refreshing it, • what security issue can arise? • A. Disclosure of residual data • B. Unauthorized access to privileged processes • C. Data leakage through covert channels • D. Compromising the execution domain 48

  49. Respuesta • A. If an object has confidential data and this data is not properly erased before another subject can access it, this leftover or residual data can be accessible. This can compromise the data and system’s security by disclosing this confidential information. 49

  50. Pregunta • 4. What is the final step in authorizing a system for use in an environment? • A. Certification • B. Security evaluation and rating • C. Accreditation • D. Verification 50

More Related