You are on page 1of 6

Unidad 6 Protección y seguridad

6.1 Concepto y objetivos de protección
Definición de protección:
La protección es un mecanismo de control de acceso de los programas, procesos o
usuarios al sistema o recursos.
La protección es la seguridad relativa al control de acceso de programas, procesos o
usuarios a los recursos de un sistema informático.
Objetivos de protección
Establecer de forma eficaz un sistema de autorizaciones de utilización de recursos y la
información
Prevenir o evitar amenazas a la seguridad.
Detectar los intentos de intrusión.
Recuperarse de las violaciones de seguridad.
Proteger al sistema operativo frente a usuarios incompetentes, poco confiables y
malintencionados.
Controlar a los procesos para que solo puedan acceder a los recursos especificados y de
forma coherente con las políticas (reglas, leyes) establecidas.
Estas políticas se proporcionan de varias formas, algunas están fijas en el diseño de un
sistema operativo mientras que otras se formulan para administrar el sistema. También se
definen por los usuarios para proteger sus archivos y programas. Las políticas trabajan en
conjunto con los mecanismos que se diferencian de las políticas ya que están impuestas por
los programadores de aplicaciones para evitar el uso indebido de recursos.
Resolver todo lo anterior consumiendo el mínimo de recursos y sin que represente una
molestia a los usuarios.

6.2 Funciones del sistema de protección
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.
Las funciones de protección de un sistema operativo son:
Controlar el acceso a los recursos de los programas y procesos en ejecución.
Asegurarse de que todos los recursos del sistema están controlados.
Controlar la lectura, modificación y destrucción de datos e impedir la perdida de información
por fenómenos naturales, errores humanos, etc.

Para lograr estas funciones el sistema operativo proveen de mecanismos de protección
para poder implementar políticas de seguridad. Estas políticas de seguridad definen que
hay que hacer (que datos y que recursos deben de protegerse y de quien) y los
mecanismos determinan como hay que hacerlo.

6.3 Implantación de matrices de acceso
Una matriz de acceso es una representación abstracta del concepto de dominio de
protección. Es una representación generalizada de mecanismos de protección en sistemas
operativos.
Está compuesta por:
Sujetos: es una identidad capaz que puede acceder a los objetos.
Objetos: son identidades que contienen información. Son de dos tipos, concretos (por
ejemplo discos, cintas, procesadores, almacenamiento) y abstractos (por ejemplo estructura
de datos, estructura de procesos, etc.)
Derecho de acceso: es la manera en la que un sujeto accede a un objeto (leer, escribir y
ejecutar).
Una matriz de acceso se puede representar mediante dominios formados por parejas
(objeto, derechos) en las cuales cada pareja determina un objeto y las operaciones que se
pueden realizar con él.

6.4 Protección basada en el lenguaje
Antes la protección que ofrecían los sistemas operativos la realizaban con ayuda del núcleo
que validaba los intentos de accesos a los recursos pero con el paso del tiempo los
mecanismos de protección se han ido refinando por lo que en la actualidad los sistemas de
protección no solo se preocupan de que si pueden acceder a un recurso, sino también de
cómo se acceden, por lo tanto los diseñadores de aplicaciones deben proteger a los
recursos y no solo el sistema operativo.
Esto se logra mediante herramientas en los lenguajes de programación que pueden
declarar la protección junto con la tipificación (clasificación o clases) de los datos.

Las ventajas de la protección basada en lenguajes son:

Las necesidades de protección se declaran sencillamente y no llamando
procedimientos del SO.

Las necesidades de protección pueden expresarse independientemente de los
recursos que ofrece el SO.


El diseñador no debe proporcionar mecanismos para hacer cumplir la protección.
Los privilegios de acceso están íntimamente relacionados con el tipo de datos que se
declara.

En conclusión la especificación de protección en un lenguaje de programación permite
describir en alto nivel las políticas de asignación y uso de recursos.

6.5 Concepto de seguridad
Los términos de seguridad y de protección son similares y se usan en forma indistinta, pero
es importante hace una distinción entre ambos para evitar confusión.
La seguridad es el conjunto de medidas tomadas para protegerse contra robos, ataques,
desastres naturales, espionajes, etc. La seguridad implica la cualidad o estado de estar
seguro, es decir, evitar exposiciones a situaciones de peligro y actuar para quedar expuesto
a situaciones adversas no deseadas. Mientras que la protección son todos aquellos
mecanismos específicos del sistema operativo para resguardar la información de la
computadora.
Los aspectos más importantes que cubre la seguridad en el sistema operativo son: la
pérdida de datos y los intrusos.
La pérdida de datos se puede dar por desastres naturales (inundaciones, terremotos,
incendios, guerras), errores del hardware o del software (discos y cintas ilegibles, mal
funcionamiento del CPU, bugs en los programas) y errores humanos (mal montaje de los
medios de almacenamiento, ejecución incorrecta del programa, entrada incorrecta de
datos). Para evitar pérdidas de datos es importante que el usuario realice respaldos o
copias de seguridad de sus datos y mantenerlos de preferencia alejados de los datos
originales.
Los intrusos son aquellos individuos que acceden a datos a los que no tienen
autorización. Existen de dos tipos. Los intrusos pasivos que solo buscan leer
archivos a los cuales no tienen permiso y los intrusos activos que buscan
modificar, robar o dañar los datos.
Algunas clasificaciones de intrusos son:
Intrusos casuales no técnicos: personas que acceden a archivos de otras sin que
hayan medios para detenerlas.
Intrusos que husmean: personas con conocimiento técnico que buscan irrumpir
en la seguridad de un sistema computacional. Pueden ser muy hábiles y estar
dispuestos a dedicar gran tiempo a ello.
Intrusos que buscan obtener dinero: personas que intentan obtener dinero por
medios fraudulentos como el chantaje y el robo de información. Un ejemplo es el
ransomware en el cual se bloquea el acceso a determinados archivos de la
computadora parar luego pedir un rescate y quitar esta restricción.
Espionaje militar o comercial: personas que intentan robar programas, secretos
comerciales, patentes, tecnología, diseños de circuitos, planes de negocios, etc.
Para poder garantizar la seguridad de un sistema es necesario proteger las
maquinas físicamente, que solo los usuarios autorizados tengan acceso a las
computadoras, que el sistema operativo sea capaz de auto protegerse y por
último que la red por donde circulan los datos sea segura para evitar la
intercepción de datos por parte de terceros o la interrupción en la comunicación.

6.6 Clasificación de la seguridad
La seguridad se clasifica en 3 tipos diferentes. Seguridad interna, seguridad
externa y seguridad operacional.
La seguridad interna está relacionada a todos los controles incorporados al
hardware y al sistema operativo para asegurar los recursos del sistema.
La seguridad externa comprende a la protección contra desastres, protección
contra intrusos y mecanismos de detección como sensores de humo, de calor, de
movimiento, tarjetas de identificación, etc.
Y la seguridad operacional que consiste en las diferentes políticas y
procedimientos implementados por la administración de la instalación
computacional.
Para indicar que tan seguro es un sistema computacional se utilizan cuatro
niveles de seguridad, A, B, C y D. Donde A es el nivel más alto de seguridad y D
es el más bajo.
Nivel D: son sistema con mínima o nula protección. Ejemplos son MS-DOS y
Windows 3.1 que son sistemas mono usuario que no proporcionan ningún tipo
de control de acceso.
Nivel C: sistemas que tienen sistemas sus recursos protegidos con controles de
acceso y evitan que los programas de usuario escriban en partes vitales de la
memoria
Nivel B: sistemas en los cuales cada objeto del sistema (usuario, dato, etc.) se le
asigna una etiqueta con un nivel de seguridad jerárquico, tienen protección
estructurada y dominios de seguridad.
Nivel A: Son sistemas de seguridad certificados. Estos sistemas son verificados y
certificados por u organismo autorizado.

6.7 Validación y amenazas al sistema
Los tipos de amenazas a la seguridad de un sistema informático los podemos
caracterizar teniendo en cuenta como esta información es suministrada por el
sistema. En general, hay un flujo de información de una fuente a un destino.
Los procesos son junto con el kernel, el único medio de realizar un trabajo útil
En una computadora. Por tanto, un objetivo común de los piratas informáticos
consiste en escribir un programa que cree una brecha de seguridad. De hecho,
las mayorías de las brechas de seguridad no relacionadas con programas tienen
por objetivos crear una brecha que si este basada en un programa. Por ejemplo,
aunque resulta útil iniciar una sesión en un sistema sin autorización,
normalmente es mucho más útil dejar un demonio de tipo puerta trasera que
proporcione información o que permita un fácil acceso incluso aunque se bloquee
la brecha de seguridad original.
Amenazas del tipo software
Bomba Lógica: Es un código incrustado en un programa que comprueba si
ciertas condiciones se cumplen, en cuyo caso ejecuta alguna acción no

autorizada. Un ejemplo de uso de bomba lógica es el caso de un programador
que vende un programa a una empresa. Si transcurrido un cierto tiempo la
empresa no ha pagado, el programador revela la existencia de la bomba lógica
con el fin de obtener su dinero.
Puerta Falsa (Trapdoor): Es un punto de entrada secreto en un programa, de
forma que alguien que conozca la existencia de dicha puerta puede obtener
permisos de acceso sin tener que pasar por los mecanismos normales de
autentificación.
Caballo de Troya (Trojan Horse): Es una rutina oculta en un programa de utilidad.
Cuando el programa se ejecuta, se ejecuta la rutina y ésta realiza acciones no
autorizadas. Estos programas permiten realizar de forma indirecta acciones que
no puede realizar de forma directa. Por ejemplo, puede ser un editor que cuando
es ejecutado modifica los permisos de los ficheros que edita de forma que éstos
puedan ser accedidos por cualquier usuario.
Virus: Es código introducido en un programa que puede infectar otros
programas mediante la copia de sí mismo en dichos programas.
Bacteria: Programa que consume recursos del sistema replicándose asimismo,
pero no daña explícitamente ningún fichero. Se suele reproducir
exponencialmente, por lo que puede acaparar recursos como CPU, memoria y
disco.
Gusano (Worm): Es un programa que usa las redes de computadores para pasar
de unos sistemas a otros. Una vez que llega a un sistema, el gusano se puede
comportar como un virus o una bacteria, puede implantar programas caballo de
Troya, o puede realizar acciones no autorizadas.
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.
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.