Вы находитесь на странице: 1из 29

Seguridad y proteccin

Conceptos generales Mecanismos de proteccin Seguridad

Seguridad y proteccin tratan de controlar el uso no autorizado y acceso a recursos hardware/software de un computador. Violaciones potenciales de la seguridad:
Obtencin no autorizada de informacin Modificacin no autorizada informacin Denegacin no autorizada de servicio a un usuario autorizado, por medios:
internos (cada del sistema, sobrecarga del sistema, etc.) externos (corte elctrico, fuego, etc,).

Seguridad externa frente a interna


La seguridad de un sistema de computador se puede dividir en:
Externa o fsica - trata con la regulacin de acceso al sistema, que incluye la mquina fsica (hardware, discos, cintas, fuente de alimentacin, aire acondicionado, terminales, consola, etc). Las cuestiones relativa a ella son ms simples y de naturaleza administrativa, p.ej. un vigilante, cdigos secretos en la puerta, sistema antiincendios, etc.

Interna - trata con el acceso y uso a la informacin y hardware almacenado en el sistema. Esta es ms compleja y sutil, y ser el ncleo del tema.

Entre la seguridad externa y la interna esta la autentificacin, mediante la cual un usuario se identifica para poder acceder al hardware y software del sistema.

Seguridad y proteccin
La definicin de estos trminos no es exacta y depende de quin la utilice. Para unos:
Proteccin son los mecanismo. Seguridad son las polticas

Para otros:
Seguridad es un termino ms amplio que proteccin, y trata ms de aspectos externos al sistema; mientras que proteccin trata con los aspectos de la seguridad que conciernen al SO.

Objetivos
Integridad modificacin slo por personal autorizado. Confidencialidad acceso slo por personal autorizado. No repudiacin incapacidad para rechazar propiedad Autenticidad verificacin de la identidad Disponibilidad acceso continuo del personal autorizado.

Principios de diseo para sistemas seguros


Economa - un mecanismo de proteccin debe ser econmico de desarrollar y usar. Su inclusin en el sistema no debe provocar costo o sobrecarga sustancial. Mediacin completa - el diseo de un sistema completamente seguro requiere que cada solicitud de acceso a un objeto deba ser comprobada para su autorizacin.
Diseo abierto - un mecanismo de proteccin no debe dejar su integridad en el desconocimiento de posibles atacantes relativo al propio mecanismo de proteccin.

Separacin de privilegios - un mecanismo de proteccin que requiere dos llaves para obtener acceso a un objeto protegido es ms robusto y flexible que uno que utiliza una. Menor privilegio - un sujeto debe tener los derechos de acceso mnimos que son suficientes para completar su tarea. Tambin se conoce este principio como need-toknow.

Mecanismo del mnimo comn - la porcin de un mecanismo comn a ms de un usuario debe ser minimizada. Cualquier acoplamiento entre usuarios representa un camino de informacin potencial entre ellos y por tanto un ataque potencial a su seguridad. Aceptabilidad - un mecanismo de proteccin debe ser fcil de usar, sino no ser aceptado y por tanto, no se utilizar por los usuarios. Fallo seguro por defecto - el caso por defecto debe significar la falta de acceso, dado que es lo ms seguro.

Dominio de proteccin
Podemos ver un computador como una coleccin de procesos y objetos (recursos).
Los objetos, tienen un nombre nico que los diferencia de otros, y son accedidos a travs de un conjunto definido de operaciones son esencialmente un TAD. La habilidad para ejecutar una operacin sobre un objeto es un derecho de acceso.

Un dominio de proteccin define un conjunto de objetos y una coleccin de derechos de acceso,<nombre_objeto, conjunto_derechos>.
Un proceso se ejecuta en un dominio de proteccin.

Dominios: ejemplo

Modelo de la Matrz de Acceso


Consta de tres componentes:
Objetos corrientes - un conjunto finito de entidades, O, a las cuales debemos controlar el acceso. P. ej. un archivo. Sujetos corrientes - un conjunto finito de entidades, S, que acceden a los objetos actuales. P.ej, un proceso. Derechos genricos - un conjunto finito de derechos genricos, R = {r1,r2,r3, ..., rn}, da varios derechos de acceso que los sujetos pueden tener sobre objetos. P.ej., lectura, escritura, etc.

Estado de proteccin
El estado de proteccin de un sistema esta representado por la tripleta (S, O, P) donde S es el conjunto de sujetos, O el conjunto de objetos, y P la matrz de acceso con una fila por sujeto y una columna por objeto La matriz de acceso P es en s misma un objeto protegido.

Ejemplo: matriz de acceso

Imponer poltica de seguridad


Se impone una poltica de seguridad validando cada acceso del usuario con los derechos de acceso apropiados. Se realiza por un monitor de la forma: 1.Sujeto solicita un acceso a un objeto o. 2.El sistema de proteccin presenta la tripleta (s,a,o) al monitor de o. 3.El monitor mira los derechos de acceso: si pertenece a P[s,o], permite el acceso; en caso contrario, no. El modelo de la matriz de acceso es muy popular debido a su simplicidad, estructura elegante, y docilidad de implementacin.

Capacidades
Cada sujeto s tiene asignada la lista de tuplas (o,P[s, o]) para todos los objetos o a los que puede acceder. Cada tupla se denomina capacidad. Si s tiene una capacidad (o, P[s, o]) ,entonces esta autorizado a acceder o como especifica P[s, o].
Una capacidad tiene dos campos:
un identificador o descriptor de objeto lista de derechos de acceso

Direccionamiento con capacidades

Caractersticas del direccionamiento basado en capacidades


Las dos caractersticas ms relevantes son:
Reubicabilidad podemos reubicar un objeto en memoria sin tener que cambiar las capacidades que lo referencia (solo cambiar la base en la tabla de objetos) Comparticin - varios programas pueden compartir un objeto (programa/datos) con diferentes nombres (descriptores de objetos)

Observacin: reubicabilidad y comparticin se consiguen con la indireccin introducida con la tabla de objetos.

Como mecanismo de direccionamiento, las capacidades pueden estar empotrada en los programas y estructuras de datos del usuario.
Sin embargo, para mantener la capacidades libres de falsificacin, un usuario no debe ser capaz de acceder (leer, modificar, o construir) a una capacidad.

Tenemos que establecer mtodos para implementarlas de forma segura.

Dos formas de implementar capacidades:


Enfoque etiquetado - se aaden un(os) bit(s) a cada palabra de memoria y registros; estos estn activos si la informacin es una capacidad. Existen instrucciones privilegiadas para manipularlos.

Enfoque particionado - capacidades y datos ordinarios se almacenan separadamente. Cada objeto tiene dos segmentos, tambin el procesador tiene dos juegos de registros. Los usuarios no pueden manipular los segmentos y registros que contienen capacidades.

Ventajas de las capacidades


Eficiencia para comprobar la validez de acceso; una acceso es implcitamente vlido si se tiene una capacidad. Simplicidad debido a la correspondencia natural entre la propiedades estructurales de la capacidad y las propiedades semnticas de las variables de direccionamiento. Flexibilidad dado que permiten al usuario definir ciertos parmetros. P. ej. un usuario puede definir cual de sus direcciones contiene capacidades.

Desventajas de las capacidades


Control de propagacin - ciertas aplicaciones necesitan por seguridad y contabilidad controlar la copia de capacidades de un usuario a otro. Por ello, se introduce un bit de copia o contador de profundidad. Revisin - es difcil conocer los sujetos que tienen acceso a un objeto

La revocacin, o retirada, de derechos es difcil de implementar.


Es necesario un mecanismo de recoleccin de basura para borrar objetos no referenciados por una capacidad. Una solucin es tener un creador de objetos.

Ataques a la seguridad
Los posibles ataques a al seguridad se pueden presentar en diferentes frentes, a saber:
Ataques de programas - el uso de un programa por parte de un usuario diferente al que lo escribi puede ofrecer una oportunidad de mal uso que puede provocar una conducta incorrecta. Ataques del sistema - la creacin de procesos desde un proceso es una fuente potencial de mal uso de los recursos.

Ataques de programas
Caballo de Troya - programas ejecutados en el dominio que suministra los derechos de acceso del usuario que los ejecuta y que utilizan mal dichos derechos. P. ej. inclusin del . en el path de bsqueda, creacin de un programa con el aspecto del programa de autentificacin de usuarios, etc.
Puerta trasera - el programa tiene un agujero de seguridad que slo el programador conoce. P. ej. password con privilegios especiales, compilador que genera cdigo objeto y puerta trasera.

Gusanos - procesos que usan el mecanismo de creacin de procesos para sobrecargar el sistema, creando copias de l mismo o paran-do el sistema utilizado por otros procesos. Muy potentes en entornos de red. Virus - diseado para expandirse en otros programas, modificando o destruyendo archivos. A diferencia de un gusano ( estructurado como un nico programa), un virus es un fragmento de cdigo empotrado en un programa legtimo. La mejor proteccin contra los virus informticos es la computacin segura.

Ocultar un virus
A partir de un programa no infectado, aadimos el virus al final: Problema: el tamao del archivo cambia Solucin: comprimir, es necesario un compresor/descompresor Problemas para el creador: virus fcil de reconocer.

Podemos encriptarlo: Variar la clave en cada archivo El cdigo del virus varia en cada archivo infectado. Problema: demasiado cdigo visible: des/compresor, des/encriptador Deja solo la clave y el desencriptador o incluso

Virus polimrficos
Todas las secuencias de cdigo de abajo hacen los mismo, generando cdigo mquina muy distinto.

Вам также может понравиться