Images

Unidad 6: Protección y Seguridad

6.1. Concepto y Objetivos de Protección  

Los procesos en un sistema operativo deben protegerse de las actividades realizadas por otros procesos. Para proporcionar dicha protección, podemos utilizar diversos mecanismos para garantizar que sólo los procesos que hayan obtenido la adecuada autorización del sistema operativo puedan operar sobre los archivos, los segmentos de memoria, sobre la CPU y sobre otros recursos del sistema.  
El concepto de protección hace referencia a un mecanismo para controlar el acceso de los programas, de los procesos o de los usuarios a los recursos definidos por el sistema informático. Este mecanismo debe proporcionar un medio de especificar los controles que hay que imponer, junto con un modo de imponerlos. Podemos distinguir entre los conceptos de protección y seguridad; este último es una medida de la confianza en que se puedan preservar la integridad de un sistema de sus datos.

Objetivos de la protección.   

A medida que los sistemas informáticos se han hecho más sofisticados y a medida que su rango de aplicaciones se ha ido incrementando, también ha crecido la necesidad de proteger la integridad de esos sistemas. La protección se concebía originalmente como algo asociado a los sistemas operativos multiprogramados, de modo que a los usuarios que no fueran de confianza pudieran compartir de manera segura un espacio lógico de nombres común, como por ejemplo un directorio de archivos, o compartir un espacio físico de nombres común, como por ejemplo la memoria. Los conceptos modernos de protección han evolucionado para incrementar la fiabilidad de cualquier sistema complejo que haga uso de recursos compartidos. 

6.2. Funciones del Sistema de Protección.    

Dado que los sistemas de computo se han venido haciendo cada vez más sofisticados en sus aplicaciones, la necesidad de proteger su integridad, también ha crecido. Los aspectos principales de protección en un Sistema Operativo son: 
  • 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. 





6.3. Implantación de Matrices de Acceso.  

¿Qué es el Dominio de Protección?  
Un sistema computacional esta compuesto por procesos y objetos, los Objetos involucran Hardware y Software, cada objeto tiene un nombre único que lo diferencia y cada objeto puede ser accesado solamente mediante operaciones bien definidas. 
Ejemplo: 
  • El CPU se utiliza solamente para ejecución. 
  • Los segmentos de memoria se pueden leer y escribir. 
  • Un archivo puede ser leído, escrito, ejecutado y borrado. 

6.4. Protección Basada en el Lenguaje. 

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. Puesto que la validación de todos los accesos puede dar pie a un gasto extra considerable, debemos apoyarla con hardware para reducir el costo de cada validación o bien debemos aceptar que el diseñador del sistema podría inclinarse por sacrificar los objetivos de la protección. Es difícil satisfacer todos estos objetivos si los mecanismos de soporte con que se cuenta restringen la flexibilidad para implementar diversas políticas de protección. 

A medida que ha aumentado la complejidad de los sistemas operativos, sobre todo al trata de ofrecer interfaces de más alto nivel con el usuario, lo objetivos de la protección se han vuelto mucho más refinados. En esta refinación observamos que los diseñadores de los diseñadores de los sistemas de protección se han apoyado mucho en ideas que se originaron en los lenguajes de programación y especialmente en los conceptos de tipos de datos abstractos y objetos. Los sistemas de protección ahora se ocupan no sólo de la identidad de un recurso al cual se intenta acceder, sino también de la naturaleza funcional de ese acceso. En los sistemas de protección más nuevos, el interés en la función que se invocará se extiende más allá de un conjunto de funciones definidas por el sistema, como los métodos de acceso a archivos estándar, para incluir funciones que también podrían ser definidas por el usuario.  
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.  
Aquí es donde los lenguajes de programación entran en escena. 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:  
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. Las necesidades de protección pueden expresarse independientemente de los recursos que ofrezca un sistema operativo en particular. El diseñador de un subsistema no tiene que proporcionar los mecanismos para hacer cumplir la protección. 

6.5. 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.   El uso creciente y la confianza en los computadores en todo el mundo ha hecho surgir una preocupación legítima con respecto a la seguridad informática. El uso de los computadores ha extendido en ambientes comerciales, gubernamentales, militares e incluso en los hogares. Grandes cantidades de datos vitales sensibles se están confiando y almacenado cada vez más en computadores. Entre ellos se incluyen registros sobre individuos, negocios y diferentes registros públicos y secretos gubernamentales y militares. Grandes transacciones monetarias tienen lugar diariamente en forma de transferencia electrónicas de fondos. Más recientemente, informaciones tales como notificaciones de propiedad intelectual y datos comerciales estratégicos son también almacenados, procesados y diseminados mediante computadores. Entre ellos se incluyen diseños de ventas, contratos legales y muchos otros.  
La seguridad, no solo requiere un sistema de protección apropiado, sino también considerar el entorno externo en el que el sistema opera. La protección interna no es útil si la consola del operador está al alcance de personal no autorizado, o si los archivos se pueden sacar simplemente del sistema de computación y llevarse a un sistema sin protección. Estos problemas de seguridad son esencialmente de administración, no problemas del sistema operativo.  
La información almacenada en el sistema, así como los recursos físicos del sistema de computación, tienen que protegerse contra acceso no autorizado, destrucción o alteración mal intencionada, y la introducción accidental de inconsistencia. 

6.6. Clasificaciones de La Seguridad.  

Clasificación de seguridad.  
Es decir que la clasificación de los sistemas de computación según sus requerimientos de la seguridad ha sido ampliamente discutida de la seguridad del sistema.  
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 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. 
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: Control de acceso por dominios. Control de acceso individualizado. 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: Etiqueta de seguridad obligatoria. Protección estructurada. Y el dominio de seguridad. 

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: Diseño verificado. Desarrollo controlado.

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ón 
  • 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. 
  • Amenazas activas
  • Alteración del flujo de mensajes. 
  • Privación del servicio:  Impide el uso normal de los servicios de comunicaciones.   

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.  

Programas malignos que no necesitan anfitrión: 
  • Gusanos: Programas independientes. 
  • Se reproducen a través de la red. 
  • Bacterias: No dañan explícitamente. Su único objetivo es reproducirse. 
  • 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. 

6.8. Cifrado.  

Concepto de 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. 
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 (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. 



0 comentarios: