Introducción.........................................................................................................3 6.1 Concepto y Objetivo de Protección………………………………………..4 6.2 Funciones del Sistema de Protección………………………………………5 6.3 Implementación de Matrices de Acceso…………………………………...6 6.4 Protección Basada en el Lenguaje…………………………………………7 6.5 Concepto de Seguridad……………………………………………………..8 6.6 Clasificaciones de la Seguridad…………………………………………….10 6.7Validación……………………………………………………………………13 6.8Cifrado……………………………………………………………………….15 Conclusión……………………………………………………………………… .17 Bibliografía……………………………………………………………………… 18
2
La unidad VI protección y seguridad esta enfocada a la protección y la seguridad que debe de haber en un sistema operativo por que es fundamental la seguridad ante todo. Los temas que son expuestos son los siguientes: iniciando con el concepto y los objetivos que tiene la protección que tiene la función de proveer un mecanismo para el fortalecimiento de las políticas que gobiernan el uso de recursos, siguiendo de las funciones del sistema de protección, luego la implementación de matriz de acceso que esta compuesta por sujeto, objeto y derecho de acceso, el siguiente tema es la protección basada en lenguaje seguido de concepto de seguridad y la clasificación de la seguridad que son clasificación a, b, c, d. Los últimos dos temas son la validación y amenazas que se ven las posibles amenazas que tienen los sistemas operativos como son los virus y los ataques. Cifrado todos estos son los temas que se explican a continuación.
3
6.1 CONCEPTO Y OBJETIVO DE PROTECCIÓN La protección es un mecanismo control de acceso de los programas, procesos o usuarios al sistema o recursos. El sistema de protección tiene la función de proveer un mecanismo para el fortalecimiento de las políticas que gobiernan el uso de recursos. Tales políticas se pueden establecer de varias maneras, algunas en el diseño del sistema y otras son formuladas por el administrador del sistema. Otras pueden ser definidas por los usuarios individuales para proteger sus propios archivos y programas.
Objetivos: • Inicialmente protección del SO frente a usuarios poco confiables. • La mejora de la protección implica también una mejora de la seguridad. • Las políticas de uso se establecen: • Por el hardware. • Por el administrador / SO. • Por el usuario propietario del recurso. • Principio de separación entre mecanismo y política: • Mecanismo → con que elementos (hardware y/o software) se realiza la protección. • Política → es el conjunto de decisiones que se toman para especificar como se usan esos elementos de protección.
El sistema de protección debe:
Distinguir entre usos autorizados y no-autorizados.
Especificar el tipo de control de acceso impuesto.
Proveer medios para el aseguramiento de la protección.
4
6.2 FUNCIONES DEL SISTEMA DE PROTECCIÓN La protección es un mecanismo control de acceso de los programas, procesos o usuarios al sistema o recursos. Hay importantes razones para proveer protección. La más obvia es la necesidad de prevenirse de violaciones intencionales de acceso por un usuario. Otras de importancia son, la necesidad de asegurar que cada componente de un programa, use solo los recursos del sistema de acuerdo con las políticas fijadas para el uso de esos recursos. Un recurso desprotegido no puede defenderse contra el uso no autorizado o de un usuario incompetente. Los sistemas orientados a la protección proveen maneras de distinguir entre uso autorizado y desautorizado. Los aspectos principales de protección en un Sistema Operativo son: 1. 2. 3. 4.
Protección de los procesos del sistema contra los procesos de usuario. Protección de los procesos de usuario contra los de otros procesos de usuario. Protección de Memoria. Protección de los dispositivos.
5
6.3 IMPLEMENTACIÓN DE MATRICES DE ACCESO Un modelo de protección puede ser visto abstractamente como una matriz, llamada matriz de derecho. Los renglones de la matriz representan dominios y las columnas representan objetos. Cada entrada en la matriz contiene un conjunto de derechos de acceso. Dado que los objetos son definidos explícitamente por la columna, se puede omitir el nombre del objeto en el derecho de acceso. La entrada "Matriz[i, j]" define el conjunto de operaciones que un proceso ejecutándose en el dominio "Dj" puede realizar sobre el objeto "Oj". Una forma de implementación es mediante una matriz de control de acceso con:
Filas para los sujetos.
Columnas para los objetos.
Celdas de la matriz para los derechos de acceso que un usuario tiene a un objeto.
Sujeto: Una entidad capaz de acceder a los objetos. En general, el concepto de sujeto es equiparable con el de proceso. Cualquier usuario o aplicación consigue acceder en realidad a un objeto por medio de un proceso que representa al usuario o a la aplicación.
Objeto: Cualquier cosa cuyo acceso debe controlarse. Como ejemplo se incluyen los archivos, partes de archivos, programas y segmentos de memoria.
Derecho de acceso: la manera en que un sujeto accede a un objeto. Como ejemplo está Leer, Escribir y Ejecutar. Una matriz de control de acceso debe ser muy celosamente protegida por el S. O.
6
Los lenguajes de programación se en cargan de especificar el control de acceso deseado a un recurso compartido en un sistema es hacer una declaración acerca del recurso. Este tipo de declaración se puede integrar en un lenguaje mediante una extensión de su mecanismo de tipificación. Si se declara la protección junto con la tipificación de los datos, el diseñado de cada subsistema puede especificar sus necesidades de protección así debería darse directamente durante la redacción del programa, y en el lenguaje en el que el programa mismo se expresa. Este enfoque tiene varias ventajas importantes: 1. Las necesidades de protección se declaran de forma sencilla en vez de programarse como una secuencia de llamadas a procedimientos de un sistema operativo. 2. Las necesidades de protección pueden expresarse independientemente de los recursos que ofrezca un sistema operativo en particular. 3. El diseñador de un subsistema no tiene que proporcionar los mecanismos para hacer cumplir la protección. 4. Una notación declarativa es natural porque los privilegios de acceso están íntimamente relacionados con el concepto lingüístico de tipo de datos. Hay diversas técnicas que una implementación de lenguaje de programación puede utilizar para hacer cumplir la protección, pero cualquiera de ellas deberá depender hasta cierto punto del grado de soporte de una máquina subyacente y su sistema operativo.
La protección que se ofrece en los sistemas de computación existentes casi siempre se ha logrado con la ayuda del núcleo de un sistema operativo, que actúa como agente de seguridad que inspecciona y valida cada intento por acceder a un recurso protegido. Las políticas para el uso de recursos también podrían variar, dependiendo de la aplicación, y podrían cambiar con el tiempo. Por estas razones, la protección ya no puede considerarse como un asunto que sólo concierne al diseñador de un sistema operativo; también debe estar disponible como herramienta que el diseñador de aplicaciones pueda usar para proteger los recursos de un subsistema de aplicación contra intervenciones o errores.
Menciona que este enfoque tiene varias ventajas importantes: 1. Las necesidades de protección se declaran de forma sencilla en vez de programarse como una secuencia de llamadas a procedimientos de un sistema operativo.
7
2. Las necesidades de protección pueden expresarse independientemente de los recursos que ofrezca un sistema operativo en particular. 3. El diseñador de un subsistema no tiene que proporcionar los mecanismos para hacer cumplir la protección. 4. Una notación declarativa es natural porque los privilegios de acceso están íntimamente relacionados con el concepto lingüístico de tipo de datos.
CONCEPTO DE SEGURIDAD
La seguridad está definida en el diccionario como el conjunto de medidas tomadas para protegerse contra robos, ataques, crímenes y espionajes o sabotajes. La seguridad implica la cualidad o estado de estar seguro, es decir, la evitación de exposiciones a situaciones de peligro y la actuación para quedar a cubierto frente a contingencias adversas. La seguridad son aquellos problemas relativos a asegurar la integridad del sistema y sus datos. La seguridad debe tener en cuenta eventos tanto internos como externos, de nada sirve tener mecanismos de protección interna muy buenos, si el sistema operativo no es capaz de identificar a los usuarios que acceden al sistema o si no existe una política de salvaguarda de datos antes la rotura de un disco. La seguridad de un sistema operativo se basa principalmente en tres aspectos de diseño: 1. Evitar pérdida de datos 2. Controlar la confidencialidad 3. Controlar el acceso a los datos y recursos. La seguridad tiene muchas facetas. Dos de las más importantes son la perdida de datos y los intrusos. Algunas de las causas más comunes de la perdida de datos son: • Actos divinos: Incendios, inundaciones, terremotos, guerras, revoluciones o ratas que roen las cintas o discos flexibles. • Errores de Hardware o Software: Mal funcionamiento de la CPU, discos o cintas ilegibles, errores de telecomunicación o errores en el programa.
8
• Errores Humanos: Entrada incorrecta de datos, mal montaje de las cintas o el disco, ejecución incorrecta del programa, perdida de cintas o discos Un problema mas interesante es que hacer con los intrusos. Estos tienen dos variedades. Los intrusos pasivos solo desean leer archivos que no están autorizados a leer. Los intrusos activos son más crueles: Desean hacer cambios no autorizados a los datos. Si se desea diseñar un sistema seguro contra los intrusos, es importante tener en cuenta el tipo de intruso con el que se desea tener protección.
Algunas de las categorías comunes son:
Curiosidad casual de usuarios no técnicos. Muchas personas tienen en sus escritorios terminales para sistemas con tiempo compartido y, por la naturaleza humana, algunos de ellos leerán el correo electrónico de los demás u otros archivos, si no existen barreras en frente de ellos. Por ejemplo la mayoría de los sistemas UNIS tienen pre definido que todos los archivos se pueden leer de manera pública.
Conocidos
husmeando.
Algunos
estudiantes,
programadores
de
sistemas,
operadores y demás personal técnico consideran como un reto personal romper la seguridad del sistema de cómputo local. A menudo son muy calificados y están dispuestos a invertir una cantidad sustancial de su tiempo en este esfuerzo.
Espionaje comercias o militar.
El espionaje indica un intento serio y
fundamentado por parte de un competidor u otro país para robar programas, secretos comerciales, patentes, tecnología, diseño de circuitos, planes de comercialización, etc. A menudo, este intento implica la cobertura de cables o el levantamiento de antenas hacia la computadora con el fin de recoger su radiación electromagnética.
9
6.6 CLASIFICACIONES DE LA SEGURIDAD
La seguridad en los sistemas operativo puede ser de distintos tipos: interna, externa. La seguridad interna se encuentra relacionada con los controles que están incorporados al hardware y a los sistemas operativos. La seguridad externa se compone de seguridad física (protección contra intrusos y contra desastres) y seguridad operacional (es la implantada por el administrador del sistema de computación, y mediante la autorización se ve que acceso se permite y a qué entidad).
Seguridad Externa consiste en:
Seguridad física incluye: Protección contra desastres (como inundaciones, incendios, etc.). Protección contra intrusos. En la seguridad física son importantes los mecanismos de detección, algunos ejemplos son: Detectores de humo. Sensores de calor. Detectores de movimiento. La protección contra desastres puede ser costosa y frecuentemente no se analiza en detalle; depende en gran medida de las consecuencias de la perdida. La seguridad física trata especialmente de impedir la entrada de intrusos: Se utilizan sistemas de identificación física: o
Tarjetas de identificación.
o
Sistemas de huellas digitales.
Identificación por medio de la voz. o
10
Seguridad Operacional Consiste en las diferentes políticas y procedimientos implementados por la administración de la instalación computacional. La autorización determina que acceso se permite y a quien. La clasificación divide el problema en subproblemas: Los datos del sistema y los usuarios se dividen en clases: o
A las clases se conceden diferentes derechos de acceso.
Un aspecto crítico es la selección y asignación de personal: La pregunta es si se puede confiar en la gente. El tratamiento que generalmente se da al problema es la división de responsabilidades: Se otorgan distintos conjuntos de responsabilidades. No es necesario que se conozca la totalidad del sistema para cumplir con esas responsabilidades. Para poder comprometer al sistema puede ser necesaria la cooperación entre muchas personas: Se reduce la probabilidad de violar la seguridad. Debe instrumentarse un gran número de verificaciones y balances en el sistema para ayudar a la detección de brechas en la seguridad. o
El personal debe estar al tanto de que el sistema dispone de controles, pero: Debe desconocer cuales son esos controles:
Se reduce la probabilidad de poder evitarlos.
Debe producirse un efecto disuasivo respecto de posibles intentos de violar la seguridad.
11
En esta clasificación especifica, hay cuatro niveles de seguridad: a, b, c y d… a continuación, se describen estos niveles de seguridad y las características de cada uno.
Nivel A es el Sistemas de seguridad certificados para acceder a este nivel, la política de seguridad y los mecanismos de protección del sistema deben ser verificados y certificados por un organismo autorizado para ello.es decir dos tipos: 1. Diseño verificado. 2. Desarrollo controlado.
Nivel B es el Control de acceso obligatorio en este nivel, los controles de acceso no son discrecionales de los usuarios o los dueños de los recursos, que deben existir obligatoriamente. Esto significa que todo objeto controlado debe tener protección sea del tipo que sea. Es decir que son tres y son: 1. Etiqueta de seguridad obligatoria. 2. Protección estructurada.
Nivel C a la Capacidad discrecional para proteger recursos, La aplicación de los mecanismos de protección depende del usuario, o usuarios, que tienen privilegios sobre los mismos. Entonces esto significa que un objeto puede estar disponible para lectura, escritura o cualquier otra operación. Y entonces casi todos los sistemas operativos comerciales de propósito general, como Unix, Linux o Windows NT se clasifican en este nivel.es decir dos son: 1. Control de acceso por dominios. 2. Control de acceso individualizado.
Nivel D es el Sistemas con protección mínima o nula no pasan las pruebas de seguridad mínima. MS-DOS y Windows 3. 1 son sistemas de nivel d. Puesto que están pensados para un sistema mono proceso y mono usuario, no proporcionan ningún tipo de control de acceso ni de separación de recursos.
12
6.7 VALIDACIÓN Y AMENAZAS AL SISTEMA Amenazas a la seguridad en el acceso al sistema:
Intrusos. Programas malignos.
Intrusos:
Piratas o hackers: individuos que acceden al sistema sin autorización. Los sistemas presentan agujeros por donde los hackers consiguen colarse.
Técnicas de intrusión:
Averiguar contraseñas (más del 80% de las contraseñas son simples). Probar exhaustivamente. Descifrar archivo de contraseñas. Intervenir líneas. Usar caballos de Troya.
Técnicas de prevención de intrusos: Establecer una buena estrategia de elección de contraseñas:
Contraseñas generadas por ordenador (difícil memorización). Inspección activa (proceso periódico de averiguación). Inspección proactiva (decidir si es buena en su creació
Técnicas de detección de intrusos: Investigar actividades inusuales:
Detección de anomalías estadísticas. Uso de registros de auditoría que recogen información del comportamiento de cada usuario. Detección basada en reglas. Conjunto de reglas empleadas para decidir si una actividad es inusual.
Tipos de amenazas:
Amenazas pasivas:
Revelación del contenido del mensaje. Análisis del tráfico: En caso de que los mensajes vayan encriptados. o 13
o
Determinar las máquinas que se comunican y la frecuencia y longitud de los mensajes.
Amenazas activas: Alteración del flujo de mensajes. Privación del servicio:
Impide el uso normal de los servicios de comunicaciones. Suplantación: Cuando una entidad finge ser otra diferente. o
Clasificación de programas malignos: Programas malignos que necesitan anfitrión: Forman parte de un programa. Trampillas:
Punto de entrada secreto a un programa. Se usan para depuración y prueba. Pueden usarse para acceso no autorizado.
Bomba lógica:
Se ejecutan cuando se cumplen ciertas condiciones. Ej: se borra el disco duro si programador no estáen nómina.
Caballo de Troya:
Código dañino incrustado en programa que se ejecuta cuando se ejecuta el programa.
Programas malignos que no necesitan anfitrión: Gusanos:
Programas independientes. Se reproducen a través de la red. Además de propagarse pueden causar daños.
Bacterias:
No dañan explícitamente. Su único objetivo es reproducirse. 14
Se reproducen exponencialmente agotando la capacidad del procesador.
Virus:
Código incrustado en un programa. Se reproducen e insertan en otros programas. Pueden causar daños.
Algoritmo de virus muy simple (tan sólo se reproduce):
Encontrar 1ª instrucción de un ejecutable del disco. Sustituirla por salto a posición siguiente a la última instrucción. Insertar copia del código de virus (este algoritmo) en dicha posición. Hacer que el virus simule la instrucción sustituida por el salto. Saltar a la segunda posición.
6.8 CIFRADO El cifrado es un método que permite aumentar la seguridad de un mensaje o de un archivo mediante la codificación del contenido, de manera que sólo pueda leerlo la persona que cuente con la clave de cifrado adecuada para descodificarlo. Por ejemplo, si realiza una compra a través de Internet, la información de la transacción (como su dirección, número de teléfono y número de tarjeta de crédito) suele cifrarse a fin de mantenerla a salvo. Use el cifrado cuando desee un alto nivel de protección de la información.
Métodos y Técnicas de Cifrado. Cifrado de sustitución El cifrado de sustitución consiste en reemplazar una o más entidades (generalmente letras) de un mensaje por una o más entidades diferentes. Existen varios tipos de criptosistemas de sustitución:
La sustitución monoalfabética consiste en reemplazar cada una de las letras del mensaje por otra letra del alfabeto. La sustitución polialfabética consiste en utilizar una serie de cifrados monoalfabéticos que son re-utilizados periódicamente. La sustitución homófona hace posible que cada una de las letras del mensaje del texto plano se corresponda con un posible grupo de caracteres distintos. La sustitución poligráfica consiste en reemplazar un grupo de caracteres en un mensaje por otro grupo de caracteres.
15
Cifrado César Este código de cifrado es uno de los más antiguos ya que su uso se remonta a Julio César. El principio de cifrado se basa en la adición de un valor constante a todos los caracteres de un mensaje o, más precisamente, a su código ASCII.
Cifrado ROT 13 El caso específico del cifrado César donde la clave de cifrado es N (la 13º letra del alfabeto) se denomina ROT 13? (se eligió el número 13, la mitad de 26, para que sea posible cifrar y descifrar fácilmente mensajes textuales).
Cifrado de Transposición El método de cifrado por transposición consiste en reordenar datos para cifrarlos a fin de hacerlos ininteligibles. Esto puede significar, por ejemplo, reordenar los datos geométricamente para hacerlos visualmente inutilizables.
El Cifrado Simétrico. El cifrado simétrico (también conocido como cifrado de clave privada o cifrado de clave secreta) consiste en utilizar la misma clave para el cifrado y el descifrado. El cifrado consiste en aplicar una operación (un algoritmo) a los datos que se desea cifrar utilizando la clave privada para hacerlos ininteligibles. El algoritmo más simple (como un OR exclusivo) puede lograr que un sistema prácticamente a prueba de falsificaciones (asumiendo que la seguridad absoluta no existe).
El Cifrado Asimétrico. El cifrado asimétrico (también conocido como cifrado con clave pública). En un criptosistema asimétrico (o criptosistema de clave pública), las claves se dan en pares:
Una clave pública para el cifrado; Una clave secreta para el descifrado.
En un sistema de cifrado con clave pública, los usuarios eligen una clave aleatoria que sólo ellos conocen (ésta es la clave privada). A partir de esta clave, automáticamente se deduce un algoritmo (la clave pública). Los usuarios intercambian esta clave pública mediante un canal no seguro.
16
Esta investigación nos explico el concepto de protección y seguridad que tienen los sistemas operativos, ya que para su funcionamiento es primordial. Aprendimos que la protección es un mecanismo control de acceso de los programas, procesos o usuarios al sistema o recursos ya seguridad es La seguridad debe tener en cuenta eventos tanto internos como externos, de nada sirve tener mecanismos de protección interna y su clasificación son a, b, c, d.
17
http://archivosproteccionseguridad-lopez2.blogspot.com/
http://sistemasoperativos.angelfire.com/html/6.3.html http://sistemas.itlp.edu.mx/tutoriales/sistemasoperativos/t6.4.htm http://sistemas.itlp.edu.mx/tutoriales/sistemasoperativos/t6.5.htm http://sistemas.itlp.edu.mx/tutoriales/sistemasoperativos/t6.6.htm
18