Está en la página 1de 19

Programacin de sistemas operativos

Programa desarrollado


1
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 1



CARRERA: Ingeniera en Desarrollo de software
Cuatrimestre 04


Programa de la asignatura:
Programacin de sistemas operativos
Unidad 3. Seguridad y Proteccin

Clave: 160920415 / 150920415








Programacin de sistemas operativos
Programa desarrollado


2
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 2
ndice


Unidad 3. Seguridad y Proteccin ...................................................................................... 3
Presentacin de la unidad .............................................................................................. 3
Propsito ........................................................................................................................ 3
Competencia especfica ................................................................................................. 3
3.1. Entorno de Seguridad .............................................................................................. 4
Actividad 1. Seguridad y proteccin dentro del diseo de un sistema operativo ............. 9
3.1.1. Clasificaciones de la seguridad ............................................................................ 9
3.1.2. Verificacin de autenticidad de usuarios ............................................................. 10
3.1.3. Validacin y amenazas al sistema ...................................................................... 11
Actividad 2 Tabla de elementos que afectan la seguridad de un sistema ..................... 12
3.2. Concepto y objetivos de proteccin ....................................................................... 13
3.2.1. Mecanismos de proteccin ................................................................................. 14
3.2.2. Funciones del sistema de proteccin .................................................................. 15
3.2.3. Implementacin de matrices de acceso .............................................................. 16
Actividad 3. Cuadro sinptico de los mecanismos de proteccin .................................. 17
Autoevaluacin ............................................................................................................. 17
Evidencia de aprendizaje. Diagrama de flujo del sistema operativo ............................. 17
Cierre de la unidad ....................................................................................................... 18
Para saber ms ............................................................................................................ 19
Fuentes de consulta ..................................................................................................... 19


Programacin de sistemas operativos
Programa desarrollado


3
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 3

Unidad 3. Seguridad y Proteccin

Presentacin de la unidad

Los trminos de seguridad y proteccin se utilizan de forma indistinta, sirven para hacer la
distincin entre mecanismos especficos del sistema operativo que proporcionan
seguridad, y el aseguramiento de que los archivos no sean visualizados ni modificados
por usuarios no autorizados.

La proteccin, se obtiene por medio de un mecanismo que restringe el acceso de los
programas, de los procesos o de los usuarios, a los recursos definidos por un sistema
informtico. Este mecanismo debe proporcionar un medio para establecer los controles
que se deban imponer.

La seguridad, ofrece la validacin de los usuarios del sistema, con el objetivo de proteger
la integridad de la informacin almacenada en el mismo y los recursos fsicos del sistema;
adems protege el acceso no valido y la destruccin o modificacin mal intencionada de
los datos.

Por todo lo mencionado, son importantes los temas que se manejarn a lo largo de esta
unidad ya que son de vital importancia para un buen desarrollo de un sistema operativo.


Propsito

Controlar la seguridad y limitar el acceso a los archivos, mediante la implementacin de
mecanismos de proteccin que ofrezcan la confianza de que slo los procesos
autorizados del sistema puedan operar sobre los segmentos de memoria, CPU y otros
dispositivos de entrada y salida.


Competencia especfica

Utilizar las funciones y tcnicas para validar las amenazas de un sistema como polticas y
mecanismos mediante la diferenciacin de seguridad y proteccin.


Programacin de sistemas operativos
Programa desarrollado


4
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 4
3.1. Entorno de Seguridad

El objetivo de la seguridad est basado en la forma cmo debe protegerse un sistema
contra robos, ataques, o cualquier tipo de programas o usuario mal intencionado que
pueden llegar afectar el buen rendimiento del sistema operativo. Debido al uso creciente
de los sistemas operativos se ha extendido en ambientes comerciales, gubernamentales,
militares e incluso en hogares.

Una gran masa de datos, de vital importancia para el usuario, requiere de la seguridad; no
solo de un simple sistema de proteccin, sino adems considerar el entorno externo en el
que el sistema opera. Por lo general de nada sirve la proteccin interna si la consola del
operador est al alcance de personal no autorizado, o bien si se pueden extraer los
archivos de forma simple, estos problemas de seguridad no son atribuidos a problemas
del sistema operativo, sino ms bien se derivan bsicamente de problemas
administrativos.

Es importante dedicar un esfuerzo en la seguridad considerando el entorno externo en
que el sistema opera. La informacin almacenada en el sistema, as como los recursos
propios del sistema, deben protegerse contra acceso no autorizado, destruccin o
alteraciones tales como la modificacin accidental de inconsistencias hacia el sistema
operativo

En lo que concierne a la seguridad de un sistema operativo, existen varias etapas en las
que se debe poner cuidado al tratar de implementar algn medio de seguridad en el
sistema, las dos ms importantes son: la prdida de datos y la penetracin de intrusos.

Algunas de las causas ms comunes en la prdida de datos son:

1.- Causas Naturales: Se conoce como causas naturales a las que no tiene nada que
ver con el desarrollo del sistema, su implementacin ni ambiente de trabajo, pues se ve
afectado por motivos como incendios, inundaciones, terremotos, etc.

2.- Fallas en hardware / Software: Este tipo de fallas va enfocado al dao fsico en las
partes que componen la computadora, como lo es fallas de CPU, disco duro, memoria,
etc. y fallas en la estructura interna del sistema.

3.- Error humano: Este puede incurrir de varias formas, la ms comn es el descuido en
la captura de datos; por ejemplo, puede haber errores en la forma de montar algn
dispositivo de disco duro, o al ejecutar un programa que no debera ejecutarse; la mayora
de estas causas, que derivan en la prdida de informacin, pueden evitarse manteniendo
un constante y adecuado respaldo de la informacin que es considerada como
importante.

Programacin de sistemas operativos
Programa desarrollado


5
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 5
Existen tambin varios tipos de amenazas a la seguridad, que pueden afectar a la
integridad del sistema, as como a la informacin, para esto se deben de cumplir con los
siguientes requisitos:
Confidencialidad.- Para un sistema es muy importante mantener un nivel de
confidencialidad, para que cuando se acceda a la informacin, sta sea ms fcil
de comprender y que slo los usuarios autorizados, tengan los permisos de
lectura.

Integridad.- Es importante que la informacin que se maneja dentro un sistema
sea la ms completa posible y que se pueda editar solo por los usuarios
autorizados.

Disponibilidad.- Hoy en da, el desarrollo de sistemas exige que los elementos
estn siempre disponibles y en lnea para que los usuarios autorizados tengan
acceso a la informacin.

Siempre al desarrollar un sistema lo que se busca es poder garantizar la seguridad propia
del sistema operativo; para esto, es necesaria la implementacin en todos los niveles, ya
que por menor que sea la debilidad contenida en el sistema, la informacin contenida en
el mismo podra colapsar. Para poder mantener una seguridad en el sistema es necesario
mantener como mnimo los requisitos anteriores, que permitan establecer el esquema de
proteccin bsico para el desarrollo de un sistema operativo.

Adems de ofrecer y garantizar durante el desarrollo la seguridad, el sistema es quien
debe proveer de mecanismos de proteccin para la implementacin de las caractersticas
de seguridad. Sin la capacidad de autorizar a los usuarios y procesos, de controlar su
acceso y el registro de tareas, sera prcticamente imposible poder implementar estas
medidas pues el sistema estara restringido para poder llevarlas a cabo. Lo idea es de que
el sistema tenga la posibilidad de poder establecer un enfoque global de proteccin,
soportndose tal vez por mecanismos de proteccin hardware. La mayor parte de los
aspectos de seguridad resultan ser complicados, pues a medida que los usuarios
malintencionados conocen las vulnerabilidades de los sistemas de seguridad estos
pueden ser atacados.

A medida que van creciendo los sistemas y las necesidades de los usuarios, es necesario
establecer medidas de seguridad que respondan a los requerimientos del mismo sistema.
Existen diferentes tipos de amenazas que pueden llegar afectar la integridad de los
sistemas operativos, stas pondran al sistema operativo en un riesgo latente, o bien,
dejarlo inservible, estas son: la interrupcin, la intercepcin,

Para ejemplificar estas amenazas revisa el flujo normal de informacin, que surge cuando
se va generando un flujo desde el origen -como un archivo o una regin de memoria
principal- hacia su destino; la figura 3.1. representa un ejemplo de este flujo de
Programacin de sistemas operativos
Programa desarrollado


6
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 6
transmisin de datos desde el origen, sin ningn tipo de bloqueo o interrupcin hacia el
destino de la informacin.



Figura 3.1. Flujo normal de informacin (Stallings, 2005: 573)

Una de las amenazas ms comunes es la interrupcin, la cual es considerara una de las
amenazas que afectan a la disponibilidad del sistema operativo -puede ser por un ataque
que genere una interrupcin de los procesos o la administracin de archivos- esto tiene
como consecuencia dejar al sistema intil.

La figura 3.2. muestra un ejemplo de cmo se puede generar una interrupcin del flujo de
informacin, la cual es causada por amenaza, bloqueo o falla en el flujo de la informacin
hacia su destino; este ejemplo indica que el sistema operativo quedara intil tras esta
interrupcin.

Figura 3.2. Flujo normal de informacin (Stallings, 2005: 573)

La Intercepcin es otro tipo de amenaza, en un ejemplo tpico de este tipo se encuentra
que ocurre un acceso de forma inesperada y sin autorizacin, la cual llega a afectar la
integridad de la informacin. La figura 3.3. representa un ejemplo de flujo de informacin,
donde el envi de la informacin a su destino es interceptada de forma no autorizada para
poner en peligro la integridad de la informacin.



Programacin de sistemas operativos
Programa desarrollado


7
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 7
Figura 3.3. Flujo normal de informacin (Stallings, 2005: 573)

Existe un tipo de amenaza ms latente y que afecta de forma directa la integridad de la
informacin. En la figura 3.4. se representa un claro ejemplo de una alteracin del flujo
de informacin, donde una amenaza acceda de forma no autorizada y modifica el flujo
de informacin a su destino, alterando de forma directa la informacin del sistema
operativo.



Figura 3.4. Flujo normal de informacin (Stallings, 2005: 573)

Otro tipo de amenaza es la de invencin; esta pone en riesgo la integridad de la
informacin. En la figura 3.5. se muestra como dentro de un flujo de informacin, una
amenaza ingresa dejando fuera al origen de la informacin para formar parte de esta
amenaza para insertar datos falsos al sistema operativo



Figura 3.5. Flujo normal de informacin Imagen 1. Flujo normal de informacin. (Stallings,
2005: 573)

El problema ms comn al que se enfrente un sistema operativo y que es bastante difcil
de afrontar, es la modificacin o alteracin de la informacin, lo cual provoca un mal
Programacin de sistemas operativos
Programa desarrollado


8
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 8
funcionamiento y afecta la integridad de las funciones, en la siguiente tabla se muestran
las diferentes amenazas a las que se afrontan cada clase de elementos.



Tabla 3.1. Elementos que afrontan la seguridad e integridad de la informacin. (Stallings,
2005: 575)

Las amenazas a la integridad de la informacin, son una preocupacin constante para los
desarrolladores de sistemas operativos, ya que la confidencialidad, disponibilidad e
integridad del sistema estara en peligro, por los diferentes tipos de amenazas que estn a
la orden del da.

Las amenazas por su complejidad y tipo de afectacin se pueden clasificar como
amenazas pasivas y amenazas activas.

Las amenazas pasivas, son aquellas que solo interceptan el flujo de la informacin
afectando la confidencialidad de la misma, este tipo de amenazas tienen el objetivo solo
de espiar y divulgar el contenido de la informacin. Estas amenazas son difcil de ser
detectarla, pues no generan alteracin al administrador de archivos ni funcionalidad del
sistema operativo, una posible medida debera ser de prevencin para evitar el filtrado.

Las amenazas activas son delicadas para la integridad del sistema. En stas est latente
la alteracin del flujo de datos o bien la creacin de un flujo falso que pone en riesgo el
funcionamiento normal del sistema operativo. En la mayora de los casos una amenaza
activa es difcil prevenir de forma absoluta, pues requerira de una proteccin de todos los
servicios y rutas de comunicacin.

Programacin de sistemas operativos
Programa desarrollado


9
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 9

Actividad 1. Seguridad y proteccin dentro del diseo de un sistema
operativo

La presente actividad tiene como propsito que reflexiones sobre la seguridad y la
proteccin en un sistema operativo.

1. Retoma la lectura del tema 3.1. Entorno de Seguridad.

2. Busca los conceptos de seguridad y proteccin en cualquier mbito (laboral,
personal, etc.).

3. Identifica qu seguridad y proteccin debes considerar para un buen sistema
operativo y qu es lo ms importante: la seguridad o la proteccin.

4. Ingresa al foro y genera una nueva entrada.


3.1.1. Clasificaciones de la seguridad

El departamento de defensa de los EEUU, especifica cuatro clasificaciones de seguridad
para los sistemas: A, B, C, D, esta especificacin se usa ampliamente en dicho pas para
determinar la seguridad de una instalacin y modelar soluciones de seguridad.
(Silberschatz, 2006).

Tomando como base de referencia la clasificacin del autor, se ubican cuatro niveles de
clasificacin de acuerdo a los requerimientos de seguridad necesaria para un sistema
operativo:

Nivel D. Esta divisin, es la considerada de menor nivel, o bien requiere de una
proteccin mnima para la integridad del sistema operativo. Los sistemas
operativos diseados con procesos individuales o mono usuarios, por su
naturaleza de administracin simple de archivos no es muy comn o frecuente el
uso de un nivel superior de la informacin.

Nivel C. Est considerado como un nivel superior al mnimo de seguridad
requerido para un sistema operativo, en este nivel se implementan mecanismos de
proteccin de recursos que estaran bajo la responsabilidad de los usuarios
quienes tendrn los privilegios de poder realizar modificaciones, se considera que
los sistemas comerciales como Linux, Windows, por mencionar solo unos caen
esta categora, este nivel a su vez se clasifica en dos subniveles.
Programacin de sistemas operativos
Programa desarrollado


10
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 10
o C1. Este subnivel integra algunos controles que permitan a los usuarios
proteger su informacin de lectura, escritura o eliminacin de archivos.
o C2. En este subnivel, Es la parte superior del nivel C1 donde existe un
usuario con privilegios superiores que permiten la auditoria de la
informacin, tal como un administrador del sistema.
Nivel B. En este nivel seguridad cuenta con los parmetros incluido de los niveles
anteriores. Adicionando para el incremento de la seguridad, la amplitud de
controles y etiquetas de seguridad, dominio y mecanismos estructurados de
proteccin que son de utilidad para el refuerzo de restriccin de acceso no
autorizados.
Nivel A. Tcnicamente este nivel cumple con todas las caractersticas que tiene
una clasificacin B, este nivel utiliza niveles especficos de diseo y tcnicas de
validacin para el filtrado de la informacin.


3.1.2. Verificacin de autenticidad de usuarios

Muchos esquemas de proteccin se basan en el supuesto de que el sistema conoce la
identidad de cada usuario. El problema de identificar los usuarios cuando inician se
denomina verificacin de autenticidad de usuarios. La mayor parte de los mtodos de
verificacin de autenticidad se basan en identificar algo que el usuario conoce, tiene o es.
Contrasea. Fuente Sistemas Operativos Diseo e implementacin, (Tanenbaum,
2003).

Resulta un tanto simple para algunos usuarios o aplicaciones mal intencionadas, descifrar
el contenido y complejidad de las contraseas y vencer la autenticidad de stas teniendo
como resultado el acceso a la informacin de algn sistema ya sea para modificar el flujo
de la informacin, como en la intercepcin, o algo ms delicado, como en la inversin.

Frecuentemente se van incrementado los niveles de complejidad para la creacin de
contraseas o password utilizados para la validacin de acceso a la informacin. Muchas
aplicaciones codifican, por medio de algn algoritmo de encriptacin -este mtodo provee
un nivel de seguridad ms avanzado que la utilizacin simple de caracteres-
comparndolo con la lista de contraseas disponibles para la validacin.

Otro mtodo para la proteccin de contraseas es el cambio regular de stas. Es
importante cambiarlas de manera peridica para evitar que algn intruso, pueda
descifrarla.

Otra variacin que es utilizada para la validacin y autentificacin de usuarios, es la
utilizada para la identificacin fsica. Este enfoque se basa en algn dispositivo fsico para
Programacin de sistemas operativos
Programa desarrollado


11
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 11
la autorizacin de ingreso al sistema, se utiliza un algoritmo de validacin completamente
distinto a una contrasea.

El uso de los dispositivos es til para saber si se trata del usuario propietario, dichos
dispositivos sern la llave de acceso al sistema; algo que ocurre de forma comn, es que
las tarjetas magnticas que son validadas por un lector magntico -el cual determina si es
vlida o no- no tienen un alto grado de efectividad en cuestiones de seguridad, ya que es
comn el extravo o falsificacin de estos dispositivos.

Las huellas digitales, lectura de retina o patrn de voz, forman parte de un mtodo fsico
de verificacin de usuarios. Estos mtodos consisten en la verificacin y autenticidad
fsica de las caractersticas nicas de cada usuario, las cuales resultan difcil de falsificar.

La validacin o verificacin fsica es muy amplia y tiene muchas aplicaciones, ventajas y
desventajas, comparndolos con otros medios de verificacin, el desarrollador es quien
planea que tipo o clasificacin de seguridad se implementara para la validacin y acceso
de usuarios.

Algunas de las medidas preventivas que se deben de considerar para el incremento de
las medidas de seguridad, son:
Registrar los inicios de sesin y log de actividades.
Bloqueo de inicios de sesin por fecha o por intentos errneos de validacin.
Encriptacin, caducidad y modificacin constante de contraseas.
Especificar estacin de trabajo validas para el acceso al sistema.

Estas medidas son algunas de las ms usadas y son, bajo el criterio del desarrollador, el
tipo de seguridad a implementar de acuerdo al nivel y uso de la informacin que sea
considerada como importante.


3.1.3. Validacin y amenazas al sistema

Al da de hoy nos encontramos con amenazas a los sistemas operativos cada vez ms
sofisticadas, las cuales aprovechan los puntos ms dbiles; por eso, es importante que
se validen y se considere al disear un sistema operativo.

Principales amenazas que se deben validar al disear un sistema operativo

En la actualidad existen muchos tipos de amenazas, por lo cual, lo mejor es prevenir
todas stas desde el diseo, teniendo en cuenta buenas prcticas de prevencin. Estas
amenazas se conocen como virus que atacan y actan de muchas maneras, se
mencionan algunas de ellas a continuacin:
Programacin de sistemas operativos
Programa desarrollado


12
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 12

Troyano
Ingresa cuando el sistema no tiene seguridad, permite accesos a otros tipos de archivos
que hacen dao y en ciertos momentos se activan y ejecutan actividades que daan.

Exploits (secuencia de aprovechamiento)
Localizan un punto dbil en el sistema y ejecutan acciones que no deberan ser
ejecutadas causando caos en el sistema.

Rootkits (secuencia de nulidad)
Su origen est en el lenguaje UNIX y son herramientas que entran como administradores
tomando el control.

Backdoors (secuencia de salida emergente)
Como su traduccin al espaol lo dice puerta trasera la cual es abierta para que otros
sistemas dainos puedan entrar. Abren una puerta trasera en el sistema para que el
creador de malware entre en el sistema y lo domine a su antojo. El objetivo es crear una
red computadoras infectadas con el mismo.

Keyloggers (registro de teclas o pulsaciones)
Registra la pulsacin de las teclas y clic para enviarlas a un usuario no autorizado puede
instalarse como hardware o aplicacin.


Actividad 2 Tabla de elementos que afectan la seguridad de un sistema

Con el fin de distinguir qu elementos afectan la seguridad en un sistema, en la siguiente
actividad construirs una tabla de elementos, tomando en cuenta los temas abordados
con anterioridad.

1. Investiga sobre los elementos de seguridad en un sistema operativo.

2. Con base en la investigacin, realiza una tabla que contenga los elementos de
seguridad que debe tener un sistema operativo y cul es el objetivo de cada uno de ellos.

3. Tomando en cuenta la informacin contenida en la tabla, elige los tres elementos que
consideres de mayor importancia y justifica los motivos por los cuales elegiste esos.

4. Guarda la actividad con el nombre PSO_U3_A2_XXYZ. Sustituye las XX por las dos
primeras letras de tu primer nombre, la Y por la inicial de tu apellido paterno y la Z por la
inicial de tu apellido materno.

Programacin de sistemas operativos
Programa desarrollado


13
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 13
5. Enva el archivo a travs de la seccin de Base de datos.

6. Revisa y comenta los trabajos de tus compaeros.

7. Con base en los comentarios de tus compaeros(as) reelabora tu tabla y envala a tu
Facilitador(a) para recibir retroalimentacin.


3.2. Concepto y objetivos de proteccin

Por una necesidad de mantener la integridad y confiabilidad de los sistemas, la proteccin
de stos se vuelve prioridad para todo desarrollo de sistemas operativos, una de las
necesidades de la proteccin es impedir el acceso y violacin a la informacin del sistema
de archivos. La proteccin es la fuente de control y restriccin de acceso a los sistemas,
administracin de los recursos y procesos.

El objetivo primordial de la proteccin, es proveer de un mecanismo que tenga la facultad
de establecer polticas de restriccin, y crear bloqueos a usuarios mal intencionados.

Cuando un sistema o parte del sistema no est protegido, no tiene la confiabilidad,
integridad y mucho menos la disponibilidad de la informacin. Debido al mal uso de la
informacin que puede llegar a ser modificada por el acceso de usuarios mal
intencionados.

Frecuentemente, podemos utilizar un principio director a lo largo de un proyecto, como
pueda ser el diseo de un sistema operativo. Ajustarnos a este principio simplifica las
decisiones de diseo y hace que el sistema contine siendo coherente y fcil de
comprender. Uno de los principios directores clave y que ha resistido al paso del tiempo a
la hora de proporcionar proteccin es el principio del mnimo privilegio. Este principio dicta
que a los programas, a los usuarios, incluso a los sistemas se les concedan nicamente
los suficientes privilegios para llevar a cabo a sus tareas. (Silberschatz, 2006)

Se considera que cuando un sistema operativo cumple con el principio de mnimo
privilegio, durante el desarrollo integra caractersticas y/o mecanismos de proteccin que
cubran las necesidades de poder minimizar los daos causados por usuarios mal
intencionados. Este principio tiene la bondad de poder ofrecer un entorno ms seguro al
sistema, por ello es de suma importancia que sea considerado durante la planificacin y
desarrollo, de lo contrario no lograra su objetivo de proteccin.


Programacin de sistemas operativos
Programa desarrollado


14
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 14
3.2.1. Mecanismos de proteccin

Durante el desarrollo del sistema, la parte fundamental que se debe considerar es la
seguridad y proteccin del sistema operativo; se deben de tener en cuenta al menos los
problemas potenciales considerados en temas anteriores, para solucionar esa parte se
pueden utilizar tcnicas para poder establecer las polticas y mecanismos de proteccin.

En algunos sistemas, la proteccin se impone mediante un programa llamado monitor de
referencias. Cada vez que se intenta un acceso a un recurso que pudiera estar protegido,
el sistema pide primero al monitor de referencias que verifique que tal acceso est
permitido. (Tanenbaum, 2003)

Los diferentes tipos de mecanismos de proteccin se encuentran clasificados en:
Dominio de proteccin. Este punto considera al sistema de cmputo como grupo
global de software y hardware, cada una de las partes que lo conforman tienen su
propio nombre, caractersticas y objetivo, mediante el cual se podrn realizar
operaciones con archivos y manejo de informacin. Durante la ejecucin de un
proceso solo se podr tener acceso a los recursos que tiene autorizados para
realizar sus tareas. En la siguiente figura (3.6.), se muestra un ejemplo de tres
dominios, cada uno contiene sus propios objetos con la autorizacin para poder
escribir (W), leer (R) y ejecutar (X), se puede apreciar que la impresora est en
dos dominios distintos al mismo tiempo, debido a que los archivos de cada
dominio hacen referencia a la misma impresora conectada al sistema de cmputo.



Figura 3.6. Dominios de proteccin con sus propios objetos y derechos de aplicacin.
(Tanenbaum, 2003: 447)

Listas de control de acceso. El objetivo de esta tcnica consiste en asociar los
registros de una lista ordenada que contenga la mayor cantidad de dominios y que
pueda ingresar al objeto.
Capacidades. Este mtodo distingue las caractersticas de cada objeto, las cuales
indican las operaciones permitidas que puede realizar, as la lista muestra los
objetos y sus capacidades para logra procesar la informacin, con esto clasifica
los objetos de acuerdo a sus capacidades facilitando el compartimiento de
subdominios.
Programacin de sistemas operativos
Programa desarrollado


15
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 15
Matriz de acceso. Este modelo de proteccin, puede completar su estructura por
medio de abstraccin de datos compuesto por una coleccin de derechos de
acceso a la informacin, este tipo de modelo proporciona el mecanismo factible
para definir e implementar un control especifico para la asociacin de procesos y
dominios de forma dinmica y esttica, los procesos deben poder conmutar de un
dominio a otro y permitir la modificacin controlada del contenido de las entradas
de la matriz de acceso, estas por lo general requieren de operaciones adicionales,
tales como: copy, owner and contro.


3.2.2. Funciones del sistema de proteccin

La principal caracterstica que distingue las funciones de un sistema de proteccin, es
aquel que cumple con los requerimientos de proteccin de los procesos del sistema,
contra los procesos de los usuarios, protege los procesos de los usuarios contra los de
otros usuarios, protege la administracin de la memoria y protege los dispositivos.

Durante el desarrollo del sistema operativo, es conveniente dar flexibilidad a la estructura
de los datos para imponer una variedad de polticas y mecanismos de proteccin,
exigiendo que cumpla con el mnimo de requerimientos para el control de prdida de
datos.

Ms adelante se mostrarn algunos de los mecanismos que se pueden utilizar para
asegurar los archivos, segmentos de memoria y otros dispositivos administrados por el
sistema operativo. Se dar cuenta que el principal objetivo de todo sistema operativo es
mantener la confiabilidad, integridad y disponibilidad del sistema. El uso de estos
mecanismos contribuye evitando el mayor nmero de amenazas que pueden afectar el
rendimiento del sistema.

La proteccin se refiere a la implementacin de mecanismos para restringir el acceso de
programas, procesos o bien usuarios no deseados que pueden perjudicar el rendimiento
del sistema.

Las funciones principales para proveer un buen sistema de proteccin, son:

Establecer polticas de uso de recursos. Las polticas se pueden establecer por
usuario, administrador del sistema o bien sobre el diseo y/o desarrollo.
Mecanismos de proteccin. Su uso comn es el controlar el acceso de
programas o procesos a los recursos del sistema.
Monitoreo de amenazas. Se pueden establecer rutinas de control que permitan
ingresar al sistema o bien rechazar la peticin de acceso a determinadas
aplicaciones o procesos.
Programacin de sistemas operativos
Programa desarrollado


16
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 16

Queda claro que es importante y necesaria la proteccin de un sistema operativo, para
prevenir violaciones malintencionadas de acceso al flujo de datos de un proceso dentro
del sistema. Por ello la conveniencia de asegurar cada componente que forme parte del
sistema, un recurso o componente no asegurado no puede defenderse contra alguna
variacin al flujo de datos.


3.2.3. Implementacin de matrices de acceso

Al iniciar con la implementacin de una matriz de acceso y de ir llenando de datos, la
matriz tendr espacios vacos, estos lleva a una serie de desventajas en el rendimiento
del sistema operativo. Los mtodos para la implementacin de una matriz de acceso son
de utilidad para aquellas matrices dispersas y de poca utilidad, a continuacin se describe
cada uno de estos mtodos para su implementacin:

Tabla global. Este primer mtodo, tiene la funcin ms simple de acceso para una
tabla compuesta por tripletas (dominio, objeto, conjunto-derechos), suponiendo
que se tiene un Dominio Da, Un objeto Oa y sus derechos de lectura Ra. Si Da
intenta el acceso en Oa mediante alguna operacin Ma, se analizar toda la tabla
en bsqueda de la tripleta <Da, Oa, Ra> y que Ma pertenezca a Ra, si la
encuentra realiza caso contrario sigue realizando el proceso de bsqueda o bien
hasta que se genere algn error. Este tipo de implementacin resulta estar
creciendo considerablemente conforme van generndose operaciones de E/S, por
lo que no es posible mantenerla en memoria principal. Como desventaja se tienen
que generar operaciones adicionales de E/S.
Lista de acceso para los objetos. En este mtodo, se van almacenando los
datos por columna en la matriz para ir asociando cada objeto dentro de una lista
de ordenadas de pares. Siguiendo el ejemplo de la tripleta anterior, se tiene que si
Da intenta ingresar a Oa mediante la operacin M se permite si, se encuentra <Da,
Ra> y M tenga pertenencia en Ra. Su ventaja se radica en la facilidad de poder
agrupar los dominios.
Listas de capacidades para los dominios. La listas de capacidades se
propusieron originalmente como una especie de puntero seguro, para satisfacer la
necesidad de proteccin de los recursos que se prevea que iba a ser necesaria a
medida que los sistemas informticos multiprogramados se generalizaran
(Silberschatz, 2006).

La capacidad de este mtodo, consiste en que los derechos de acceso a un objeto se
almacenan en la matriz por filas con su dominio, por lo general las listas de capacidades
est asociada con un dominio, pero un proceso que se ejecute en el dominio no podr
Programacin de sistemas operativos
Programa desarrollado


17
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 17
ingresar de forma directa sobre esta. Cada elemento de la matriz es denominado como
capacidad y la lista de capacidades debe de protegerse por el sistema operativo.

Mecanismo de bloqueo-clave. El esquema de bloqueo-clave, es un compromiso
entre las listas de acceso y las listas de capacidades. Cada objeto tiene una lista
de patrones de bit distintos, denominados bloqueos. De forma similar, cada
dominio tiene una lista de patrones de bit distintos, denominados claves
(Silberschatz, 2006: 494).

La mayora de los sistemas requieren de alguna implementacin de matrices de acceso
para localizar la informacin para un proceso determinado, y es decisin del desarrollador
del sistema operativo determinar que mtodo sera el ms ptimo para la implementacin
de las matrices de bsqueda.


Actividad 3. Cuadro sinptico de los mecanismos de proteccin

Esta actividad tiene como propsito que, mediante una representacin esquemtica,
distingas las relaciones que se establecen entre los modelos, funciones e
implementacin de los mecanismos de proteccin.

1. En un archivo de texto o Microsoft Visio realiza un cuadro sinptico con los temas de
conceptos y objetivos de proteccin.

2. Guarda la actividad con el nombre PSO_U3_A3_XXYZ, donde XX es tu apellido(s) y
YY nombre(S)

3. Enva el archivo a tu Facilitador(a) para recibir retroalimentacin.


Autoevaluacin

Para reforzar los conocimientos relacionados con los temas que se abordaron en esta
tercera unidad del curso, es necesario que resuelvas la actividad integradora. Recuerda
que es muy importante leer cuidadosamente los planteamientos indicados y elegir la
opcin adecuada para cada uno.


Evidencia de aprendizaje. Diagrama de flujo del sistema operativo

Programacin de sistemas operativos
Programa desarrollado


18
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 18
Como parte de la evaluacin de esta unidad, debes llevar a cabo una actividad cuyo
propsito es conceptuar el proceso del sistema operativo, mediante la aplicacin de los
conceptos aprendidos en la unidad.

1. En un archivo de texto elabora un diagrama de flujo en el cual reflejes el orden, la
secuencia y los pasos que realizaras para disear un sistema operativo con respecto a
seguridad y proteccin, considerando todos los subtemas expuestos en la unidad.

2. Guarda la evidencia con el nombre PSO_U3_EA_XXYZ.

3. Enva el archivo a tu Facilitador(a) para recibir retroalimentacin.


Autorreflexiones

Adems de enviar tu trabajo de la Evidencia de aprendizaje, es importante que ingreses
al foro Preguntas de Autorreflexin y consultes las preguntas que tu Facilitador(a)
presente, a partir de ellas, debes elaborar tu Autorreflexin en un archivo de texto llamado
PSO_U3_ATR_XXYZ. Posteriormente enva tu archivo mediante la herramienta
Autorreflexiones.


Cierre de la unidad

Has concluido la tercera unidad del curso. A lo largo de sta se vieron conceptos bsicos
sobre el la seguridad y proteccin, cmo se clasifica la seguridad, cmo se verifica la
autenticidad de los usuarios y las principales amenazas que debemos considerar al
disear un sistema operativo, en cuanto a la proteccin: qu mecanismos se utilizan para
que es el sistema de proteccin y cmo se implementan la matrices de acceso.

Es aconsejable que revises nuevamente la unidad en caso de que los temas que se
acaban de mencionar no te sean familiares o no los recuerdes, de no ser este tu caso, ya
ests preparado(a) para seguir con la unidad cuatro, en donde continuars con la base
del diseo del sistema operativo. Todo ello con el fin de obtener el prototipo final al
terminar la ltima unidad del curso de Programacin de Sistemas Operativos.


Programacin de sistemas operativos
Programa desarrollado


19
Ciencias Exactas, Ingenieras y Tecnologa | Ingeniera en Desarrollo de Software 19
Para saber ms

Si deseas conocer ms informacin acerca de la seguridad de los sistemas operativos,
revisa la siguiente pgina web:

Seguridad de los Sistemas Operativos
http://exa.unne.edu.ar/depar/areas/informatica/SistemasOperativos/SO14.htm


Fuentes de consulta

Candela, S. y Garca, C. (2007) Fundamentos de Sistemas Operativos. Teora y
ejercicios resueltos. Espaa: Paraninfo.
Ortiz, H. (2005) Sistemas Operativos Modernos. Colombia: Medellin.
Silberschatz, Abraham (2006) Fundamentos de Sistemas Operativos. 7ma. Edicin.
Espaa: Mc. Graw Hill.
Stallings, W. (2005) Sistemas Operativos Modernos: Aspectos Internos y principios de
diseo. Mxico: Pearson, Prentice Hall
Tanenbaum, A (2003) Sistemas Operativos Modernos. Mexico: Pearson Educacin.

También podría gustarte