Está en la página 1de 31

Proteccin y Seguridad

Mdulo 13
Departamento de Ciencias e Ingeniera de la Computacin Universidad Nacional del Sur

Proteccin
Objetivos de la Proteccin Principios de la Proteccin Dominio de Proteccin

Matriz de Acceso
Implementacin de la Matriz de Acceso Control de Acceso Revocacin de los Derechos de Acceso Sistemas Basados en Capacidades Proteccin Basada en Lenguajes

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Objetivos
Discutir los objetivos y principios de la proteccin en un sistema de computacin moderno Explicar como los dominios de proteccin combinados con las matrices de acceso son usados para especificar como puede un proceso acceder a los recursos Examinnar los sistemas de proteccin basados en capacidades y lenguajes

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Objetivos de la Proteccin
El SO consiste de una coleccin de objetos, hardware o software

Cada objeto tiene un nico nombre y puede ser accedido por un conjunto de operaciones bien definidas
El problema de proteccin asegura que cada objeto es accedido correctamente y solo por aquellos procesos que les est permitido hacerlo

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Principios de Proteccin
Principio gua principio del menor privilegio Programas, usuarios y sistemas debera obtener suficientes privilegios para realizar sus tareas

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Estructura de Dominios
Derecho de Acceso = <nombre del objeto, conjunto de derechos> donde el conjunto de derechos es un subconjunto de todas las operaciones vlidas que pueden ser realizadas por el objeto. Dominio = conjunto de derechos de acceso

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Implementacin de Dominios (UNIX)


El sistema consiste de dos dominios: Usuarios Supervisor UNIX Dominio = identificacin de usuario Conmutacin de dominios realizado via sistema de archivos
Cada

archivo est asociado a un bit de dominio (setuid bit)

Cuando

el archivo est ejecutando y el setuid = on, entonces la identificacin de usuario es pasada al dueo del archivo en ejecucin. Cuando se completa la ejecucin la identificacin de usuario es retornada a su original.

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Matriz de Acceso
Vista de la proteccin como una matriz (matriz de acceso)

Las filas representan dominios


Las columnas representan objetos Acceso(i, j) es el conjunto de operaciones que un proceso ejecutando en Dominioi puede invocar sobre un Objetoj

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Matriz de Acceso

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Uso de la Matriz de Acceso


Si un proceso en Dominio Di trata de hacer op sobre el objeto Oj, entonces op debe estar en la matriz de acceso Puede ser expandido a proteccin dinmica Agregar operaciones, borrar derechos de acceso Derechos de acceso especiales:
dueo copiar control

de Oi op desde Oi a Oj

Di puede modificar los derechos de acceso de Dj conmutar del Di a Dj


Sistemas Operativos Proteccin y Seguridad

transferencia
JRA 2011

Uso de Matriz de Acceso (Cont)


La Matriz de Acceso: su diseo separa mecanismos de polticas Mecanismo
El La

SO provee matriz de acceso + reglas

matriz es manipulada solamente por agentes autorizados y las reglas son estrictamente forzadas usuario dicta la poltica puede acceder a que objeto y de que modo

Polticas
El Quin

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Implementacin de la Matriz de Acceso


Cada columna = Lista de control de acceso por un objeto Define quien puede realizar que operacin.
Dominio 1 = Read, Write Dominio 2 = Read Dominio 3 = Read

Cada fila = Lista de capacidades (como una clave) Para cada dominio que operaciones estn permitidas sobre que objetos.
Objeto 1 Read Objeto 4 Read, Write, Execute Objeto 5 Read, Write, Delete, Copy

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Matriz de Acceso con Dominios como Objetos

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Matriz de Acceso con Derechos de Copy

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Matriz de Acceso con Derechos de Owner

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Matriz de Acceso Modificada

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Control de Accesos
La proteccin puede ser aplicada a recursos fsicos Solaris 10 provee control de accesos basado en roles (RBAC) para implementar privilegios Un privilegio es un derecho a ejecutar llamadas a sistema o usar una opcin dentro de una llamada a sistema Puede ser asignado a procesos Los roles asignados a usuarios garantizan accesos a privilegios y programas

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Control de Acceso basado en Roles en Solaris 10

Ejecuta con rol de privilegios 1

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Revocacin de Derechos de Acceso


Lista de Accesos Borra derechos de acceso de la lista de accesos Simple Inmediato Lista de Capacidades Requiere un esquema para localizar capacidades antes que puedan ser revocadas Readquisicin Punteros hacia atrs Indireccin Claves
JRA 2011 Sistemas Operativos Proteccin y Seguridad

Proteccin Basada en Lenguajes


La especificacin de proteccin en lenguajes de programacin permite una descripcin en alto nivel de polticas para la alocacin y uso de recursos La implementacin del lenguaje puede forzar software para proteccin cuando la verificacin automtica soportada por hardware no est disponible Especificacin de proteccin interpretada para generar llamadas donde sea que la proteccin era llevada a cabo por el hardware y el SO

JRA 2011

Sistemas Operativos Proteccin y Seguridad

10

Proteccin en Java 2
La proteccin es adminstrada por Java Virtual Machine (JVM) Una clase es asignada para proteccin de un dominio cuando es cargada por la JVM Proteccin de dominio indica que operaciones puede (o no puede) realizar la clase Si una librera de mtodos es invocada y realiza una operacin privilegiada, el stack es inspeccionado para asegurarse que la operacin puede ser realizada por la librera
JRA 2011 Sistemas Operativos Proteccin y Seguridad

Cdigo Mvil (1) Cajas de Arena


Direccin virtual en MB Monitor de referencia para verificacin del sistema

(a) Memoria dividida en cajas de arena de 1-MB


(b) Una forma de verificar la validez de una instruccin
JRA 2011 Sistemas Operativos Proteccin y Seguridad

11

Cdigo Mvil (2)

Los applets pueden ser interpretados por el browser de Web

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Seguridad

JRA 2011

Sistemas Operativos Proteccin y Seguridad

12

Seguridad
El Problema de Seguridad Programas Peligrosos Amenazas al Sistema y Redes Criptografa como Herramienta de Seguridad Autenticacin de Usuario Implementando Defensas de Seguridad Firewalls para Proteger Sistemas y Redes Clasificaciones de la Seguridad en Computadoras Ejemplo: Windows XP

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Objetivos
Discutir amenazas y ataques a la seguridad Explicar los fundamentos de la encripcin, autenticacin, y hashing Examinar los usos de la criptografa en computacin Describir varias contramedidas a ataques a la seguridad

JRA 2011

Sistemas Operativos Proteccin y Seguridad

13

El Problema de Seguridad
La seguridad debe considerar el ambiente externo del sistema y proteger los recursos del sistema Los intrusos (crackers) intentan romper la seguridad Una amenaza es potencialmente una violacin a la seguridad Un Ataque es un intento de romper la seguridad Un ataque puede ser accidental o malicioso Es ms fcil proteger contra un uso accidental que que contra uno maliciosos

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Violaciones de Seguridad
Categoras Fallo de confidencialidad Fallo de integridad Fallo de disponibilidad Robo de servicio Negacin de Servicio (Denial of service) Mtodos Mascarada (brecha de autenticacin) Ataque Replay
Modificacin

de Mensajes

Ataque Hombre-en-el-Medio Sesin de toma de control


JRA 2011 Sistemas Operativos Proteccin y Seguridad

14

Ataques Comunes a la Seguridad

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Niveles de Medidas de Seguridad


La seguridad debe existir en cuatro niveles para ser efectiva: Fsica Humana
Evite

ingeniera social, phishing, dumpster diving

Sistema Operativo Red La seguridad es tan dbil como el eslabn ms dbil de la cadena

JRA 2011

Sistemas Operativos Proteccin y Seguridad

15

Programas Peligrosos
Caballo de Troya Segmento de cdigo que se usa dentro de su ambiente Explota mecanismos que permiten programas escritos por usuarios ser ejecutados por otros usuarios Spyware, pop-up de ventanes en navegadores, canales encubiertos Puerta Trampa Identificador de usuario especfico y contrasea que saltea los procedimientos de seguridad normales Pueden ser includas en un compilador Bomba Lgica Programa que inicia un incidente bajo ciertas cicunstancias Rebalse de Stack y Buffer Explota un bug en un programa (rebalse en el stack o buffers de memoria)
JRA 2011 Sistemas Operativos Proteccin y Seguridad

Rebalse de Buffer
Espacio virtual de direciones Variables locales del principal Espacio virtual de direciones Variables locales del principal Espacio virtual de direciones Variables locales del principal

SP

dir de retorno Variables locales de A

dir de retorno Variables locales de A

Programa

Programa

Programa

(a) Situacin cuando el programa principal esta corriendo (b) Luego del llamado al programa A (c) El rebalse de buffer mostrado en gris
Sistemas Operativos Proteccin y Seguridad

JRA 2011

16

Programas Peligrosos
Virus Fragmento de cdigo embebido en un programa legtimo Muy especfico a la arquirectura de la CPU, SO, aplicaciones Usualmente nace via email o como una macro
MacroVisual

Basic para modificar el formato de un disco duro

Sub AutoOpen() Dim oFS Set oFS = CreateObject(Scripting.FileSystemObject) vs = Shell(c:command.com /k format End Sub c:,vbHide)

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Programas Peligrosos (Cont.)


Virus dropper inserta virus dentro del sistema Muchas categoras de virus, literalmente muchos miles de virus Archivo Boot Macro Cdigo fuente Polimrfico Encriptado Furtivo Tunneling Multipartite Armored
JRA 2011 Sistemas Operativos Proteccin y Seguridad

17

Amenazas al Sistema y Red


Gusanos (Worms) usa mecanismos de spawn; es un programa standalone Worm Internet Explota caractersticas de red de UNIX (acceso remoto) y bugs en los programas finger y sendmail Programa Grappling hook levanta el programa principal del gusano Barrido de Prticos Intento automatizado de conectar un rango de prticos con una o un rango de direcciones IP Negacin de Servicio Sobrecarga la computadora blanco evitando que haga algn trabajo til Negacin de servicios distribuido (Distributed denial-of-service (DDOS)) proviene de mltiples sitios a la vez
JRA 2011 Sistemas Operativos Proteccin y Seguridad

El Gusano Internet Morris

JRA 2011

Sistemas Operativos Proteccin y Seguridad

18

Criptografa como Herramienta de Seguridad


Herramienta de seguridad ampliamente disponible La fuente y el destino de los mensajes no puede ser confiable sin la criptografa Medio para limitar potenciales emisores (sources) y/o receptores (destinations) de los mensajes Basada en el secreto (keys)

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Bases de la Criptografa
Clave de encriptacin Clave de desencriptacin

Entrada texto plano Algoritmo

Texto cifrado

encriptacin
Encriptacin

Algoritmo desencriptacin

Salida texto plano

Desencriptacin

Relacin entre el texto plano y el texto cifrado

JRA 2011

Sistemas Operativos Proteccin y Seguridad

19

Criptografa con Clave Secreta


Sustitucin Monoalfabtica cada letra es reemplazada por otra letra diferente Clave de encriptacin dada, fcil de obtener la clave de desencriptacin Clave criptogrfica secreta llamada clave criptogrfica simtrica

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Criptografa con clave Pblica

Todos los usuarios toman un par de claves: una clave pblica y una clave privada publica la clave pblica

no publica la privada
La clave pblica es la clave de encriptacin (depende) La clave privada es la clave de desencriptacin

JRA 2011

Sistemas Operativos Proteccin y Seguridad

20

Firma Digital (1)


Computadora de Alice Computadora de Bob clave priv de Bob clave publ de Alice

clave priv
de Alice

clave publ de Bob

Firma digital en un mensaje usando criptografa con clave pblica.

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Firma Digital (2)


Computadora de Alice Computadora de Bob

Funcin Hash Funcin Hash clave priv de Alice clave publ de Alice

Firma digital en un mensaje usando un digesto.

JRA 2011

Sistemas Operativos Proteccin y Seguridad

21

Implementando Defensas de Seguridad


Defensa en profundidad es la teora ms comn de seguridad mltiples capas de seguridad Polticas de seguridad describe que debe asegurarse Evaluacin de la vulnerabilidad compara el estado real del sistema/red comparado con la poltica de seguridad Deteccin de intrusin busca detectar intentos o intrusiones exitosas Deteccin basado en firmas Deteccin de anomalas resalta diferencias con el comportamiento normal
Puede

detectar ataques zero-day

Problemas de Falsos-positivos y falsos-negativos Proteccin de virus Auditora, contabilidad, y registro de todas (o especficas) las actividades de red y sistema
JRA 2011 Sistemas Operativos Proteccin y Seguridad

Autenticacin de Usuario
Es crucial para identificar correctamente al usuario, dado que el

sistema de proteccin depende del user ID


La identidad del usuario es frecuentemente establecida por

contraseas, pueden ser consideradas casos especiales de claves o capacidades

Tambin puede incluirse algo til y/o algn atributo del usuario Cambios frecuentes de contraseas Uso de contraseas no adivinables Registro de todos los intentos de acceso invlidos

Las contraseas deben permanecer secretas


Las contraseas pueden ser encriptadas o permitir que se usen una

sola vez
JRA 2011 Sistemas Operativos Proteccin y Seguridad

22

Autenticacin (1)

Autenticacin basada en clave secreta compartida.


JRA 2011 Sistemas Operativos Proteccin y Seguridad

Autenticacin (2)

Autenticacin basada en clave secreta compartida, pero usando tres mensajes en lugar de cinco.
JRA 2011 Sistemas Operativos Proteccin y Seguridad

23

Autenticacin (3)
Primera sesin

Segunda sesin

Primera sesin

El ataque por reflejo.


Sistemas Operativos Proteccin y Seguridad

JRA 2011

Autenticacin Usando Contraseas

Salt

Contrasea

El uso del salt para derrotar la precomputacin de las contraseas encriptadas.

JRA 2011

Sistemas Operativos Proteccin y Seguridad

24

Seguridad Multinivel (1)


Bell-La Padula (Modelo de Confidencialidad)
Nivel de seguridad 4 Leyenda Proceso Objeto Leer 2 Escribir 1

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Seguridad Multinivel (2) El Modelo Biba


Principios para garantizar la integridad de los datos Principio simple de integridad El proceso puede escribir solamente objectos en su nivel de seguridad o inferior La propiedad de integridad

El proceso puede leer solamente objectos en su nivel de seguridad o mas alto

JRA 2011

Sistemas Operativos Proteccin y Seguridad

25

Firewall para Proteger Sistemas y Redes


Un firewall de red est ubicado entre hosts confiables y no

confiables

El firewall limita el acceso a la red entre estos dos dominios de seguridad Tunneling permite deshabilitar protocolos para ir dentro de protocolos permitidos (p.e. telnet en HTTP) Las reglas del firewall estn tipicamente basadas en el nombre del host o direccin IP la cual puede ser spoofed Puede monitorear / limitar el trfico desde y hacia el host

Puede ser tunneled o spoofed


Un firewall personal es una capa de software sobre un dado host

Firewall con proxy de aplicacin entiende protocolos de aplicacin

y puede controlarlos (p.e. SMTP)


Firewall de llamadas a sistema monitorea todas las llamadas al

sistema importantes y aplica reglas a ellas (p.e. este programa puede ejecutar tal llamada a sistema)
JRA 2011 Sistemas Operativos Proteccin y Seguridad

Seguridad en Redes por Separacin de Dominios va Firewall


Acceso a Internet desde las computadoras de la compaia

Computadoras compaia

Acceso a DMZ desde Internet

Acceso entre la DMZ y las computadoras de la compaia

JRA 2011

Sistemas Operativos Proteccin y Seguridad

26

Clasificaciones de Seguridad
El Departamento de Defensa de EEUU considera la seguridad de las

computadoras dividida en cuatro: A, B, C y D


D Mnima seguridad C Provee una proteccin discreta

Dividida en C1 y C2

C1 identifica usuarios cooperando con el mismo nivel de proteccin C2 permite control de acceso a nivel de usuario

B Todas las propiedades de C, sin embargo cada objeto puede tener

etiquetas nicas de sensinbilidad

Dividida en B1, B2, y B3

A Usa tcnicas formales de diseo y verificacin para asegurar la

seguridad

JRA 2011

Sistemas Operativos Proteccin y Seguridad

El Libro Naranja de la Seguridad (1)

El smbolo X significa nuevos requerimientos El smbolo requerimientos desde la siguiente categora inferior se

aplican aqu tambin


JRA 2011 Sistemas Operativos Proteccin y Seguridad

27

El Libro Naranja de la Seguridad (2)

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Canales Encubiertos (1)


Cliente Servidor Colaborador Servidor encapsulado

Canal cubierto

Procesos cliente, servidor y colaborador

El servidor encapsulado puede an fugar datos a un colaborador via canales cubiertos

JRA 2011

Sistemas Operativos Proteccin y Seguridad

28

Canales Encubiertos (2)

Un canal cubierto usando bloqueo de archivos (locking)

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Canales Cubiertos (3)


Los cuadros parecen los mismos El cuadro de la derecha tiene el texto de 5 piezas de Shakespeare

encriptadas, insertadas en los bits de bajo orden de los valores de color

Zebras
JRA 2011

Hamlet, Macbeth, Julius Caesar Merchant of Venice, King Lear


Sistemas Operativos Proteccin y Seguridad

29

Esteganografa

Esta demostracin puede encontrarse en: www.cs.vu.nl/~ast/ Haga click sobre el encabezamiento STEGANOGRAPHY DEMO luego siga las instrucciones en la pgina para descargar la imagen y las herramientas de esteganografa necesarias para extraer las piezas.

JRA 2011

Sistemas Operativos Proteccin y Seguridad

Algunos Textos
Stalling, W.; Cryptography and Network Security: Principles and Practice, 2nd Edition, Prentice Hall, 1999 Schmidt, J.; Seguridad en Windows 2000, Prentice Hall, 2000. McClure, S.; Scambray, J.; Kurtz, G. ; Hackers: Secretos y Soluciones para la Seguridad de Redes, McGraw Hill, 2000. Escamilla, T.; Intrusion Detection: Network Security Beyond the Firewall, John Wiley, 1998. Annimo, Linux: Mxima Seguridad, Prentice Hall, 2000. Jaworski, J.; Perrone, P. J.; Seguridad en Java, Prentice Hall, 2001.

JRA 2011

Sistemas Operativos Proteccin y Seguridad

30

Fin
Mdulo 13
Departamento de Ciencias e Ingeniera de la Computacin Universidad Nacional del Sur

31

También podría gustarte