Download Tema 17
Document related concepts
no text concepts found
Transcript
Sistemas Operativos Tema 17: Seguridad y protección del sistema de archivos (Tema 19 en apuntes prof. Rovayo) 1 Tema 17: Seguridad y protección del sis. de archivos Índice: 1. Conceptos generales de seguridad 2. Ataques contra la seguridad 3. Comprobación de la identidad del usuario 4. Protección y control de acceso 5. Ejemplos de sistemas de archivos 2 Tema 17: Seguridad y protección del sis. de archivos Índice: 1. Conceptos generales de seguridad 2. Ataques contra la seguridad 3. Comprobación de la identidad del usuario 4. Protección y control de acceso 5. Ejemplos de sistemas de archivos 3 Tema 17: Seguridad y protección del sis. de archivos 1. Conceptos generales de seguridad La seguridad abarca: Causas externas Fallos en los equipos Errores de programación Errores humanos de utilización Ataques intencionados (intrusión): • Curiosidad usuarios • Lucro activo • Espionaje industrial • Copias ilegales de programas • …. 4 Tema 17: Seguridad y protección del sis. de archivos 1. Conceptos generales de seguridad Principios para diseñar sistemas seguros 1. Suponer que diseño es público 2. Resultado por defecto de una comprobación: denegar 3. Comprobar permisos en vigor 4. Dar a cada proceso el mínimo privilegio necesario para llevar a cabo de su función 5. Establecer métodos sencillos y uniformes 6. El sistema de protección debe ser fácil de aplicar De lo contrario los usuarios intentarán no usarlo Tipos de seguridad: Control de acceso discrecional Control de acceso obligatorio 5 Tema 17: Seguridad y protección del sis. de archivos Índice: 1. Conceptos generales de seguridad 2. Ataques contra la seguridad 3. Comprobación de la identidad del usuario 4. Protección y control de acceso 5. Ejemplos de sistemas de archivos 6 Tema 17: Seguridad y protección del sis. de archivos 2. Ataques contra la seguridad Ataques más frecuentes: Caballos de Troya Bombas Lógicas Virus Gusanos Canales ocultos 7 Tema 17: Seguridad y protección del sis. de archivos 2. Ataques contra la seguridad Caballos de Troya Definición: Programa con apariencia inofensiva que contiene código malintencionado Código malintencionado se ejecuta sin conocimiento de usuario Ejecución del programa: Por estupidez o inocencia del usuario Aprovechando algún tipo de automatización • Script de correo • “.” al principio del PATH • Falso inicio de sesión 8 Tema 17: Seguridad y protección del sis. de archivos 2. Ataques contra la seguridad Bombas lógicas Definición: Código insertado en un programa que realiza alguna actividad ilícita Actividad ilícita: normalmente, sabotaje Bomba pasa por periodo de inactividad hasta que se detona Detonación de la bomba: al detectar determinada condición: Una fecha dada Ante la introducción de una clave Ante la falta de una clave de desactivación … 9 Tema 17: Seguridad y protección del sis. de archivos 2. Ataques contra la seguridad Virus Definición: Fragmento de código que se reproduce a sí mismo infectando código De otros programas Del sistema Además de ello, puede realizar actividades ilícitas: Virus puede hacer cualquier cosa permitida al código que infecta Tipo habitual de ataque: denegación de servicio (DoS) 10 Tema 17: Seguridad y protección del sis. de archivos 2. Ataques contra la seguridad Virus (cont.) Funcionamiento habitual: Programador desarrolla código del virus Utilizando un dropper, infecta máquina o ejecutable • Virus entra en circulación Al ejecutarse código infectado, virus se ejecuta: • Se instala en memoria • Infecta otros programas Carga útil: acción para la que está programado Tipos de virus De ejecutable (virus parásitos) Se anexan a programas ejecutables Constan de cargador + código útil 11 Tema 17: Seguridad y protección del sis. de archivos 2. Ataques contra la seguridad Virus (cont.) Tipos de virus (cont.) Residente en memoria Virus permanece en memoria cuando acaba programa infectado Se ejecuta normalmente capturando una interrupción • ¡Modo supervisor! Virus de arranque Infectan cargador software de SO en MBR Si cargador software + virus no caben en MBR: mueven cargador software a otro sitio Virus de controlador de dispositivo Si se infecta un gestor de dispositivo en Windows 2000 o en Linux → ¡virus pasa a formar parte del núcleo! 12 Tema 17: Seguridad y protección del sis. de archivos 2. Ataques contra la seguridad Virus (cont.) Tipos de virus (cont.) Virus de macro Infectan documentos en lugar de programas Se ejecutan por parte de las aplicaciones que manipulan estos programas (Office) Virus de código fuente Localizan e infectan archivos de código fuente Muy específicos, por tanto, escasa repercusión 13 Tema 17: Seguridad y protección del sis. de archivos 2. Ataques contra la seguridad Virus (cont.) Funcionamiento de los antivirus: Se consigue infectar un archivo señuelo (goat file) Se compara con archivo original y se identifica cadena característica Se busca dicha cadena en archivos o en memoria Virus polimórficos: Son capaces de variar su cadena característica en cada infección 14 Tema 17: Seguridad y protección del sis. de archivos 2. Ataques contra la seguridad Gusanos Definición: Programas que se propagan copiándose a sí mismos de una máquina a otra a través de la red Normalmente explotan fallos de seguridad de los sistemas operativos No suelen causar más daños que el consumo de recursos Objetivo más frecuente: vanidad del programador 15 Tema 17: Seguridad y protección del sis. de archivos 2. Ataques contra la seguridad Canales Ocultos Definición: Comunicación ilícita establecida entre dos o más procesos utilizando mecanismos al margen de los proporcionados por el sistema operativo Difíciles de detectar Ejemplos: Un proceso monitoriza la carga de la CPU para recibir y la información que otro le envía sobrecargando o aliviando la CPU Usar un monitor de tubo para transmitir información por radiofrecuencia • Gobierno norteamericano se toma muy en serio esta posibilidad • Ejemplo: tempest (http://www.erikyyy.de/tempest/) 16 Tema 17: Seguridad y protección del sis. de archivos Índice: 1. Conceptos generales de seguridad 2. Ataques contra la seguridad 3. Comprobación de la identidad del usuario 4. Protección y control de acceso 5. Ejemplos de sistemas de archivos 17 Tema 17: Seguridad y protección del sis. de archivos 3. Comprobación de la identidad del usuario Objetivos: permitir acceso al sistema sólo a usuarios autorizados Índices de medida: Tasa de rechazos indebidos Tasa de aceptaciones indebidas Métodos de comprobación: 1. Mediante información secreta 2. Mediante elementos físicos 3. Mediante técnicas biométricas 18 Tema 17: Seguridad y protección del sis. de archivos 3. Comprobación de la identidad del usuario Objetivos: permitir acceso al sistema sólo a usuarios autorizados Índices de medida: Tasa de rechazos indebidos Tasa de aceptaciones indebidas Métodos de comprobación: 1. Mediante información secreta 2. Mediante elementos físicos 3. Mediante técnicas biométricas 19 Tema 17: Seguridad y protección del sis. de archivos 3.1 Comprobación mediante inf. secreta Idea: usuario comparte información secreta con el sistema Sistema pide dicha información a usuario Si es correcta, se permite acceso Ventajas: Método simple y barato: no hacen falta… • Dispositivos • Elementos físicos Inconvenientes: la información secreta puede ser… Comunicada Averigüada 20 Tema 17: Seguridad y protección del sis. de archivos 3.1 Comprobación mediante inf. secreta Forma más habitual: contraseñas Contraseña nunca debe ser apuntada Se debe almacenar encriptada en el sistema Ataques desde el exterior: Falso cliente de conexión Ingeniería social Uso de un diccionario (fuerza bruta) Contramedidas: • En caso de contraseña errónea, esperar un tiempo para dar nueva oportunidad • Limitar nº de reintentos • Uso de contraseñas que no estén en diccionario 21 Tema 17: Seguridad y protección del sis. de archivos 3.1 Comprobación mediante inf. secreta Ataques desde el propio sistema: Uso de un diccionario (fuerza bruta) Si se tiene acceso a las contraseñas encriptadas, se encriptan una por una las palabras del diccionario y se comparan con la contraseña Contramedidas: • Uso de contraseñas que no estén en diccionario • Uso de shadow passwords Uso de un espía de teclado Puede estar instalado en otro ordenador desde el cual nos conectamos Puede ser hardware o software 22 Tema 17: Seguridad y protección del sis. de archivos 3. Comprobación mediante inf. secreta Ataques desde el propio sistema (cont.): Falso inicio de sesión Similar a falso cliente de conexión, pero desde dentro del sistema Uso de un packet sniffer Basta tener acceso a la red Contramedidas: • Transferir contraseñas encriptadas 23 Tema 17: Seguridad y protección del sis. de archivos 3. Comprobación mediante inf. secreta Alternativas a las contraseñas: Contraseñas múltiples Contraseña que consta de varias partes El sistema nos pide varias de ellas→ dificulta obtención de la contraseña completa Contraseñas de un único uso Preguntas personales Fórmulas matemáticas 24 Tema 17: Seguridad y protección del sis. de archivos 3. Comprobación de la identidad del usuario Objetivos: permitir acceso al sistema sólo a usuarios autorizados Índices de medida: Tasa de rechazos indebidos Tasa de aceptaciones indebidas Métodos de comprobación: 1. Mediante información secreta 2. Mediante elementos físicos 3. Mediante técnicas biométricas 25 Tema 17: Seguridad y protección del sis. de archivos 3. Comprobación mediante elementos físicos Idea: usuario se identifica mediante algún objeto legible por sistema: Tarjeta con banda magnética Tarjeta con chip … Para prevenir uso indebido: se refuerza mediante una contraseña Puede estar grabada encriptada en la propia tarjeta Ventajas: No hay que almacenar ni transferir claves Inconvenientes: Necesidad de dispositivos físicos Posibilidad de duplicado de tarjeta 26 Tema 17: Seguridad y protección del sis. de archivos 3. Comprobación de la identidad del usuario Objetivos: permitir acceso al sistema sólo a usuarios autorizados Índices de medida: Tasa de rechazos indebidos Tasa de aceptaciones indebidas Métodos de comprobación: 1. Mediante información secreta 2. Mediante elementos físicos 3. Mediante técnicas biométricas 27 Tema 17: Seguridad y protección del sis. de archivos 3. Comprob. mediante técnicas biométricas Idea: se usa alguna característica del propio usuario como identificación: Características físicas Características de comportamiento Características físicas: Huella digital Capilares de retina Examen del iris … Características de comportamiento Análisis de voz ritmo de tecleo reconocimiento de firma … 28 Tema 17: Seguridad y protección del sis. de archivos 3. Comprob. mediante técnicas biométricas Ventajas: Muy baja tasa de aceptación indebida Inconveniente: Necesidad de elementos físicos potencialmente caros Algunos métodos: elevada tasa de rechazos indebidos 29 Tema 17: Seguridad y protección del sis. de archivos Índice: 1. Conceptos generales de seguridad 2. Ataques contra la seguridad 3. Comprobación de la identidad del usuario 4. Protección y control de acceso 5. Ejemplos de sistemas de archivos 30 Tema 17: Seguridad y protección del sis. de archivos 4. Protección y control de acceso Idea: una vez que usuario ha sido identificado y ha iniciado sesión, sólo debe acceder a los recursos que esté autorizado ¿Cómo sabemos a qué recursos puede acceder un proceso? Sistema informático: compuesto por sujetos y objetos Sujetos efectúan operaciones sobre objetos Sujeto Proceso efectúa operación Objeto Archivo Segmento 31 Tema 17: Seguridad y protección del sis. de archivos 4. Protección y control de acceso Derecho de acceso: autorización para aplicar una operación sobre un objeto Dominio de protección: Conjunto de derechos de accesos Asignar un dominio de protección a un sujeto concederle los derechos de acceso del dominio Características de los dominios de protección Pueden solaparse (intersección no vacía) Son dinámicos Sujetos pueden cambiar de dominio ¿Cómo mantener toda esta información sobre dominios, objetos y sujetos? 32 Tema 17: Seguridad y protección del sis. de archivos 4. Protección y control de acceso 1. Matriz de control de acceso 2. Jerarquías de acceso 3. Listas de control de acceso 4. Listas de capacidades 33 Tema 17: Seguridad y protección del sis. de archivos 4. Protección y control de acceso 1. Matriz de control de acceso 2. Jerarquías de acceso 3. Listas de control de acceso 4. Listas de capacidades 34 Idea: Matriz que relaciona conjunto de dominios con conjunto de objetos Objetos Archivo1 Archivo2 Dominios Tema 17: Seguridad y protección del sis. de archivos 4.1 Matriz de control de acceso D1 Leer Escribir D2 Leer D3 Archivo3 D1 Escribir D3 Entrar Ejecutar Leer Escribir D2 Entrar Entrar Ejecutar Leer Otra idea: Los dominios pueden considerarse a su vez objetos sobre los que se puede aplicar la operación entrar 35 Tema 17: Seguridad y protección del sis. de archivos 4.1 Matriz de control de acceso Ventajas: Método robusto y potente Inconvenientes: Poco práctico: en un sistema real la matriz sería enorme Ineficiente: la mayoría de las entradas estarían vacías 36 Tema 17: Seguridad y protección del sis. de archivos 4. Protección y control de acceso 1. Matriz de control de acceso 2. Jerarquías de acceso 3. Listas de control de acceso 4. Listas de capacidades 37 Tema 17: Seguridad y protección del sis. de archivos 4.2 Jerarquías de acceso Simplificación: Establecer derechos de accesos organizados jerárquicamente: D1 D2 D3 D4 … D5 D6 … D7 … Basado en este mismo modelo: Modos supervisor/usuario Capas del sistema MULTICS … 38 Tema 17: Seguridad y protección del sis. de archivos 4.2 Jerarquías de acceso Implementación para el sistema de archivos: Un dominio para administrador con todos los derechos Cada usuario sólo tiene derechos sobre sus archivos Puede recibir derechos explícitamente sobre otros archivos (modelo UNIX) Ventaja: Sistema muy simple cuya implementación casi no consume recursos Inconvenientes: Método menos flexible ¡No respeta principio de mínimo privilegio! 39 Tema 17: Seguridad y protección del sis. de archivos 4. Protección y control de acceso 1. Matriz de control de acceso 2. Jerarquías de acceso 3. Listas de control de acceso 4. Listas de capacidades 40 Tema 17: Seguridad y protección del sis. de archivos 4.3 Listas de control de acceso Idea: Cortar matriz de control de acceso por columnas Lista de control de acceso (ACL) de un objeto: relación de los derechos que sobre dicho objeto tienen los distintos sujetos Formada por las entradas no vacías de su columna en la matriz de control de acceso Archivo1 Archivo2 D1 Leer Escribir D2 Leer D3 Archivo3 Ejecutar Leer Escribir Escribir Archivo1: {(D1, [Leer, Escribir]), (D2, [Leer])} Archivo2: {(D2, [Leer, Escribir]), (D3, [Escribir])} Archivo3: {(D1, [Ejecutar]), (D3, [Ejecutar, Leer])} Ejecutar Leer 41 Tema 17: Seguridad y protección del sis. de archivos 4.3 Listas de control de acceso Implementación para un sistema de archivos: Se asocia a cada archivo una lista de control de acceso • En un bloque • En un fichero de sistema asociado a cada archivo Se guarda referencia a lista • En entrada de directorio • En nodo-i Propietario de archivo puede manipular su lista SO comprueba lista por cada acceso a un archivo Inconveniente: ¡coste de exploración de lista por cada acceso! 42 Tema 17: Seguridad y protección del sis. de archivos 4.3 Listas de control de acceso Simplificaciones: Comprobar lista sólo al abrir fichero Ante un cambio de permiso (revocación): • Comprobar procesos que tengan abierto archivo • Cerrar archivo si revocación les afecta Abreviar las listas mediante comodines: Archivo4: {([*,profesores], [leer, escribir]), ([*,alumnos], [leer])} Archivo5: {([jefe,*], [leer, escribir]), …} 43 Tema 17: Seguridad y protección del sis. de archivos 4. Protección y control de acceso 1. Matriz de control de acceso 2. Jerarquías de acceso 3. Listas de control de acceso 4. Listas de capacidades 44 Tema 17: Seguridad y protección del sis. de archivos 4.3 Listas de capacidades Idea: Organizar los derechos de acceso por sujeto Capacidad: entidad software asociada a un objeto que encapsula: La referencia al propio objeto Las operaciones realizables sobre el mismo Los derechos ¡Los objetos nunca hacen referencia al propio objeto, sino a su capacidad! Cada proceso recibe el conjunto de capacidades asociadas a los objetos que puede manipular Sólo puede acceder a cada objeto mediante su capacidad Si no dispone de la capacidad para un objeto: ¡no sabe ni de su existencia! 45 Tema 17: Seguridad y protección del sis. de archivos 4.3 Listas de capacidades Lista de capacidades debe ser gestionada por sistema operativo Operaciones soportadas: Crear un objeto (devuelve una capacidad al objeto) Duplicar una capacidad Restringir los derechos en una capacidad Eliminar una capacidad Pasar una capacidad como argumento a una llamada Copiar un objeto y su capacidad Destruir un objeto y su capacidad Transferir una capacidad a otro proceso Sobre la capacidad, se pueden aplicar todas las operaciones que se aplican sobre el objeto Un administrador por cada tipo de capacidad 46 Tema 17: Seguridad y protección del sis. de archivos 4.3 Listas de capacidades Problema de transferir capacidades entre procesos: ¿Cómo revocar derechos? Revocación de permisos: Lista encadenada de capacidades Puntero indirecto Claves asociadas a los objetos Lista encadenada de capacidades Todas las copias de una capacidad enlazadas entre sí Así se pueden localizar para revocar permisos leer escribir escribir leer escribir 47 Tema 17: Seguridad y protección del sis. de archivos 4.3 Listas de capacidades Puntero indirecto Capacidades no hacen referencia a objeto, sino a una referencia a éste Para revocar derechos, basta anular dicha referencia Objetos leer escribir leer escribir … leer escribir Se revocan todas las capacidades generadas a partir de esa referencia 48 Tema 17: Seguridad y protección del sis. de archivos 4.3 Listas de capacidades Claves asociadas a objetos Asocia a cada objeto una clave única Esta clave se copia en las capacidades generadas para dicho objeto En cada acceso, SO compara clave de objeto con clave de capacidad Si no coinciden, se deniega operación Para revocar todas las capacidades: basta cambiar clave leer escribir key=07FAFF leer key=07FAFF leer key=07FAFF key=06B1F0 key=07FAFF 49 Tema 17: Seguridad y protección del sis. de archivos Índice: 1. Conceptos generales de seguridad 2. Ataques contra la seguridad 3. Comprobación de la identidad del usuario 4. Protección y control de acceso 5. Ejemplos de sistemas de archivos 50 Tema 17: Seguridad y protección del sis. de archivos 5. Ejemplos de sistemas de archivos 1. NTFS 51 Tema 17: Seguridad y protección del sis. de archivos 5. Ejemplos de sistemas de archivos 1. NTFS 52 Tema 17: Seguridad y protección del sis. de archivos 5.1 NTFS Volumen = Unidad lógica NTFS Contiene un sistema de archivos formado • Una colección de ficheros • Espacio libre sin asignar Puede ocupar parte de un disco, su totalidad, e incluso extenderse entre hasta 32 discos Tamaño máximo: 264 bytes Cluster = unidad de asignación Constituido por 2k sectores consecutivos Tamaño de Volumen Sectores por cluster Tamaño de cluster Tamaño de Volumen Sectores por cluster Tamaño de cluster 512Mbytes 1 512 bytes 4Gb-8Gb 16 8K 512Mb-1Gb 2 1K 8Gb-16Gb 32 16K 1Gb-2Gb 4 2K 16Gb-32Gb 64 32K 2Gb-4Gb 8 4K >32Gb 128 64K 53 Tema 17: Seguridad y protección del sis. de archivos 5.1 NTFS Generalidades Cada elemento en el volumen es un fichero Cada fichero se compone de una colección de atributos Los datos del archivo son atributos Atributos constituyen flujos Coherencia del sistema mediante transacciones de archivos: garantizada Implementadas mediante registro de escritura anticipada Protección del sistema de archivos mediante listas de control de acceso Sistema de archivos no apto para discos pequeños Soporta compresión y encriptado de archivos Soporta archivos sparse 54 Tema 17: Seguridad y protección del sis. de archivos 5.1 NTFS Estructura de un volumen NTFS Sector de arranque Tabla maestra de ficheros (MFT) Ficheros de sistema Área de ficheros Sector de arranque Puede estar constituido por hasta 16 sectores Contenido: • Información sobre estructura del volumen – – – – Tamaño del sector Tamaño del cluster Nº de sectores y geometría del disco … • Información sobre el sistema de archivos – – Ubicación de la MFT en el disco … • Gestor de arranque (para determinar partición de arranque) 55 Tema 17: Seguridad y protección del sis. de archivos 5.1 NTFS Estructura de un volumen NTFS Sector de arranque Tabla maestra de ficheros (MFT) Ficheros de sistema Área de ficheros Tabla maestra de ficheros En esencia: lista de todo el contenido del volumen Organizada como sucesión lineal de registros Cada registro: 1K EN PRINCIPIO: un registro por cada fichero o directorio 16 primeros registros contienen información sobre el sistema • • • • Primera entrada: la propia MFT Segunda entrada: copia de la MFT Tercera entrada: Registro de escritura anticipada … 56 Tema 17: Seguridad y protección del sis. de archivos 5.1 NTFS Estructura de un volumen NTFS Contenido de cada registro de la MFT: Encabezado de registro: • • • • Nº mágico Nº de bytes usados por registro Contador de referencias Referencia a registro base Conjunto de pares [nombre atributo, valor atributo] • Existen atributos definidos por defecto y atributos definibles por el usuario (archivo del sistema $AttrDef) • Atributos un tanto interesantes: – – Datos del archivo (DATA, archivos pequeños) Lista de bloques (archivos grandes) • Si lista de bloques no cabe en un registro: se usan varios – – Primer registro: registro base registro base tiene los números de los demás registros 57 Tema 17: Seguridad y protección del sis. de archivos 5.1 NTFS Estructura de un volumen NTFS Sector de arranque Tabla maestra de ficheros (MFT) Ficheros de sistema Área de ficheros Ficheros de sistema Ficheros con metainformación sobre sistema de archivos Algunos ficheros del sistema: • • • • • • • • • $Mft: permite acceder a la MFT $$MftMir: copia de los cuatro primeros registros de la MFT $: directorio raíz $AttrDef: nombres de los atributos usados en el sistema $LogFile: Archivo de escritura anticipada $$Volume: Información sobre el volumen (etiqueta, etc.) $$Boot: código del cargador software $$BitMap: mapa de bits con bloques libres y usados $BadClus: Archivo de bloques defectuosos 58 Tema 17: Seguridad y protección del sis. de archivos 5.1 NTFS Estructura de un volumen NTFS Sector de arranque Tabla maestra de ficheros (MFT) Ficheros de sistema Área de ficheros Área de ficheros En NTFS, cada archivo tiene asociado una serie de atributos Cada atributo, constituye un flujo de datos Dos tipos de atributos: • residentes: atributos que caben en la MFT • no residentes: atributos que no caben en la MFT Atributos no residentes se almacenan en área de ficheros Datos del archivo: constituyen un atributo más del mismo lista de control de acceso: atributo no residente • de esa forma una ACL se puede compartir entre varios archivos 59 60