SISTEMAS OPERATIVOS
Operativos
Gracia Fernández López
Seguridad en los Sistemas de Información
Máster en Informática
Seguridad en los Sistemas Operativos
Índice
•
•
•
•
•
•
•
•
•
Introducción.
Protección de la memoria.
Buffer Overflow.
RAID.
Sistemas de Ficheros con journaling.
Backup.
Control de acceso.
Cifrado en sistema de ficheros.
Sistemas deAutenticación.
Seguridad en los Sistemas Operativos
Introducción
• Funciones básicas de un sistema operativo:
–
–
–
–
Gestión del Procesador y la Memoria.
Gestión de los Sistemas de Almacenamiento.
Gestión de la Entrada/Salida.
Gestión de la Red.
Seguridad en los Sistemas Operativos
Protección de Memoria
• Protección entre procesos:
– Memoria Virtual: direcciones virtuales.
– MMU:traduce de direcciones virtuales a direcciones físicas.
– Tabla de páginas propia de cada proceso → espacio de direcciones
independiente para cada proceso.
• Protección del kernel:
– Niveles de privilegio de ejecución.
– Tabla de páginas propia.
Seguridad en los Sistemas Operativos
Protección de Procesos
Seguridad en los Sistemas Operativos
Protección del Kernel
Seguridaden los Sistemas Operativos
Buffer Overflow
• Vulnerabilidad Software:
– El proceso permite asignar datos de un tamaño mayor al reservado
→ sobreescribe memoria adyacente.
– Exploit:
datos extra = ejecución código malicioso (shellcode)
• Estructura de un proceso.
• Tipos de buffer overflow.
• Mecanismos para evitarlo.
Seguridad en los Sistemas Operativos
Estructura de un proceso• Texto: instrucciones del programa.
• Data: variables globales.
• Heap: variables dinámicas (malloc).
• Stack: variables locales, argumentos
y dirección de retorno de cada
llamada a función (frame).
Stack y Heap: tamaño determinado en tiempo de ejecución →
puede darse buffer overflow.
Seguridad en los Sistemas Operativos
Tipos de Buffer Overflow (I)
• Stack Overflow:
–Exploit: introduce un shellcode (código
maligno) dentro del stack y cambia la
dirección de retorno de la función para
que pase a apuntar al shellcode.
– Técnica de hacking bien conocida →
existe muchos métodos para evitarla
Seguridad en los Sistemas Operativos
Tipos de Buffer Overflow (II)
Seguridad en los Sistemas Operativos
Tipos de Buffer Overflow (III)
• Heap Overflow:
–Objetivo: sobreescribir alguna variable importante
almacenada en el heap.
– Problema: más complejo (depende de la
implementación concreta del sistema de asignación de
memoria).
– Menos conocido y más difícil de detectar y evitar.
Seguridad en los Sistemas Operativos
Protección contra BO
• Protección Stack-smashing: Marca (“canario”) en el stack
para detectar que se ha producido undesbordamiento. Solución del
compilador.
• Protección del espacio ejecutable: Marcar las zonas de
memoria del stack y el heap como no ejecutables. Bit hardware NX o
implementación W^X.
• Address space layout randomization (ASLR): Las
partes del proceso se colocan en memoria de forma aleatoria. Dificulta
el cálculo de la dirección de retorno al shellcode.
• Deep packet inspection (DPI): Detectaataques remotos
usando firmas de ataques y heurísticas. Solución de los sistemas de
detección de intrusos.
Seguridad en los Sistemas Operativos
RAID
• Definición: RAID (Redundant Array of Inexpensive Disks) es
un sistema de almacenamiento con múltiples discos.
• Ventajas:
–
–
–
–
Mayor Integridad: redundancia de datos e información de paridad.
Tolerancia a fallos: recuperaciónde datos en tiempo real.
Mayor throughput (rendimiento): lecturas/escrituras en paralelo.
Alta disponibilidad: aumenta el tiempo de funcionamiento y
disponibilidad de la red.
Seguridad en los Sistemas Operativos
Niveles RAID (I)
• RAID 0 (disk striping):
– Información distribuída en discos (bloques).
– No tiene redundancia.
– Aumenta rendimiento (lecturas/escrituras en
paralelo)...
Regístrate para leer el documento completo.