6.- Protección y seguridad
INTRODUCCION
En este tema
abordara lo que es el tema de la
protección mediante los Sistemas Operativo nos dirá acerca de que se ve la
manera de proteger el Sistema Operativo.
Hay importantes razones para proveer protección. La más 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.
Para tener una forma de analizar los distintos mecanismos de protección, es conveniente presentar el concepto de dominio. Un dominio es un conjunto de parejas (objeto, derechos). Cada pareja determina un objeto y cierto subconjunto de las operaciones que se pueden llevar a cabo en él. Un derecho es, en este contexto, el permiso para realizar alguna de las operaciones.
Hay importantes razones para proveer protección. La más 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.
Para tener una forma de analizar los distintos mecanismos de protección, es conveniente presentar el concepto de dominio. Un dominio es un conjunto de parejas (objeto, derechos). Cada pareja determina un objeto y cierto subconjunto de las operaciones que se pueden llevar a cabo en él. Un derecho es, en este contexto, el permiso para realizar alguna de las operaciones.
CONCEPTO Y OBJETIVO DE PROTECCION
Concepto de protección
Concepto de protección
La protección se refiere a los mecanismos para controlar el acceso de programas, procesos, o usuarios a los recursos definidos por un sistema de computación.
Pero contra que nos debemos proteger:
Adware:
Un programa de clase adware es cualquier programa que automáticamente muestra publicidad web al usuario durante su instalación o durante su uso para generar lucro a sus autores. 'Ad' en la palabra 'adware' se refiere a 'advertisement' (anuncios) en idioma inglés.
Algunos programas adware son también shareware, y en estos los usuarios tienen las opciones de pagar por una versión registrada o con licencia, que normalmente elimina los anuncios.
Adware:
Un programa de clase adware es cualquier programa que automáticamente muestra publicidad web al usuario durante su instalación o durante su uso para generar lucro a sus autores. 'Ad' en la palabra 'adware' se refiere a 'advertisement' (anuncios) en idioma inglés.
Algunos programas adware son también shareware, y en estos los usuarios tienen las opciones de pagar por una versión registrada o con licencia, que normalmente elimina los anuncios.
Backdoor:
En la informática, una puerta trasera (o en inglés backdoor) es una secuencia especial dentro del código de
programación, mediante la cual se pueden evitar los sistemas de seguridad del
algoritmo (autentificación) para acceder al sistema. Aunque estas
"puertas" pueden ser utilizadas para fines maliciosos y espionaje no
siempre son un error, ya que pueden haber sido diseñadas con la intención de
tener una entrada secreta.
Badware alcalinos:
Este es un tipo
de Malware mitad spyware, mitad
backdoor, suele residir en las ventanas del sistema observando incesantemente
hasta que se lanza al hecho de su usuario.
Bomba fork:
La bomba fork es una forma de ataque
del tipo denegación
de servicio sobre
un computador que
implementa la operación fork, o alguna
funcionalidad equivalente mediante la cual un proceso es capaz de crear otro
proceso. La bomba fork es considerado un wabbit ya que no se replica de la misma forma que
los gusanos o los virus. Su efecto se
basa en la suposición de que el número de programas y procesos que se
ejecutan simultáneamente en un ordenador tiene un límite.
Una bomba fork
funciona creando una gran cantidad de procesos muy rápidamente con el objetivo
de saturar el espacio disponible en la lista de procesos mantenida por el sistema operativo del computador. Si la
tabla de procesos se llega a saturar, entonces no se pueden iniciar nuevos programas
hasta que no se cierre alguno. En el caso que esto suceda, es muy poco probable
que se pueda iniciar un programa útil ya que los procesos de la bomba estarán
esperando para poder crear nuevos procesos a la primera oportunidad que se les
conceda.
Bots:
Un bot (aféresis de robot) es un programa
informático,
imitando el comportamiento de un humano. Un bot puede realizar funciones rutinarias de
edición. El bot puede responder a cuestiones sobre el propio contenido del
sitio (bots
conversacionales).
En el ambiente de
los videojuegos, se conoce como bot a programas que son capaces
de jugar por sí mismos el juego en cuestión (también conocidos como borgs).
La calidad del bot en este caso viene determinada por su capacidad de vencer (y
en qué términos) el videojuego. Los bots para juegos CRPG (computer role-playing games) son
particularmente conocidos ya que este tipo de aplicaciones requieren una gran
capacidad de estrategia para ganarlos. Es muy habitual también usar este
término en los juegos denominados 'shooters', en los que sustituyen a un
jugador humano cuando no hay contrincantes disponibles o en juego offline.
La palabra bot es
parte de la jerga informática y no es
seguro si será sustituida por una equivalente en español, se incorporará al idioma, o se usará la palabra
original de la cual procede, robot.
Es importante
distinguir que bot es una definición funcional, y no hace
diferencias en cuanto a su implementación. Un bot puede estar diseñado en
cualquier lenguaje
de programación, funcionar en un servidor o en un cliente, o ser
un agente móvil, etc.
Bug:
El término Bugs puede referirse a:
·
Bichos en inglés.
Troyano:
En informática, se denomina caballo de
Troya, o troyano, a
un software malicioso que se presenta al usuario como un programa aparentemente legítimo e
inofensivo, pero que, al ejecutarlo, le brinda a un atacante acceso remoto al
equipo infectado. .
Los troyanos pueden realizar
diferentes tareas, pero, en la mayoría de los casos, crean una puerta trasera (en inglés backdoor) que permite la administración remota a un usuario no autorizado.
Un troyano no es de por sí,
un virus informático, aun cuando teóricamente pueda ser distribuido y funcionar como tal. La
diferencia fundamental entre un troyano y un virus consiste en su finalidad.
Para que un programa sea un "troyano" solo tiene que acceder y
controlar la máquina anfitriona sin ser advertido, normalmente bajo una
apariencia inocua. Al contrario que un virus, que es un huésped destructivo, el troyano no necesariamente provoca daños, porque no
es ese su objetivo. Este tipo de virus crean una página negra con letras
blancas que, por lo general, suelen ser trampas. No existen muchas personas
capaces de eliminarlos debido a su gran potencia tecnológica, pero los que lo
logran suelen ser hacks de gran nivel, capaces de crear un historial en línea
bastante amplio. Éstos suelen usar claves específicas que solo ellos conocen.
Cookies:
Una cookie (o galleta informática) es una pequeña
información enviada por un sitio web y almacenado en el navegador del usuario,
de manera que el sitio web puede consultar la actividad previa del usuario.
Su principal
funciones es:
Llevar el control de usuarios: cuando un usuario introduce su nombre de usuario y contraseña, se almacena una cookie para que no tenga que estar introduciéndolas para cada página del servidor. Sin embargo, una cookie no identifica a una persona, sino a una combinación de computador-navegador-usuario.
Llevar el control de usuarios: cuando un usuario introduce su nombre de usuario y contraseña, se almacena una cookie para que no tenga que estar introduciéndolas para cada página del servidor. Sin embargo, una cookie no identifica a una persona, sino a una combinación de computador-navegador-usuario.
Crackers:
El término cracker (del inglés cracker, y este de to crack, ‘romper’, ‘quebrar’)
se utiliza para referirse a las personas que "rompen" algún sistema de seguridad. Los crackerspueden estar motivados
por una multitud de razones, incluyendo fines de lucro, protesta, o por el
desafío. Mayormente, se entiende
que los crackers se dedican a la edición desautorizada de software propietario.
Sin embargo, debe entenderse que si bien los ejecutables binarios son uno de
los principales objetivos de estas personas, una aplicación web o cualquier
otro sistema informático representan otros tipos de ataques que de igual forma
pueden ser considerados actos de cracking.
Objetivos
de protección
•
Inicialmente protección del SO frente a usuarios poco confiables.
•
Protección: control para que cada componente activo de un proceso solo pueda
acceder a los recursos especificados, y solo en forma congruente con la
política establecida.
• 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.
• La
política puede variar
•
dependiendo de la aplicación,
• A lo
largo del tiempo.
• La
protección no solo es cuestión del administrador, sino también del usuario.
• 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.
|
FUNCIONES DEL SISTEMA
DE PROTECCIÓN
Funciones del sistema de protección
Funciones del sistema de protección
Dado que los sistemas de cómputo 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:
1. Protección de los procesos del sistema contra los procesos de usuario.
2. Protección de los procesos de usuario contra los de otros procesos de
usuario.
3. Protección de Memoria.
4. Protección de los dispositivos.
Funciones de un sistema de protección.
Dado que los sistemas de cómputo 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:
1. Protección de los procesos del sistema contra los procesos de usuario.
2. Protección de los procesos de usuario contra los de otros procesos de
usuario.
3. Protección de Memoria.
4. Protección de los dispositivos.
Protección = Control de empleo de la información + Recursos
Funciones:
Las funciones de un sistema de protección son asegurar la independencia
entre objetos que lógicamente son independientes y la de asegurar el control de
acceso a la información y puede ser control asociado al tipo de información o
puede ser el control asociado al usuario que solicita el acceso.
Todos los mecanismos dirigidos a asegurar el sistema informático, siendo el
propio sistema el que controla dichos mecanismos, se engloban en lo que
podemos denominar seguridad interna.
• Seguridad del procesador
Los
mecanismos de protección de procesador son:
• Estados protegidos (kernel) o no protegidos (usuarios).
• Reloj hardware para evitar el bloqueo del procesador.
• Seguridad de la memoria
Se
trata de mecanismos para evitar que un usuario acceda la información. Entre
ellos citaremos dos:
• Registros límites o frontera.
• Estado protegido y no protegido del procesador.
Además se emplean para la memoria métodos como el de
utilizar un bit de paridad o el checksum.
Bit de paridad. Consiste en añadir un bit a cada octeto o palabra que se
transmita para con él conseguir que la suma de unos sea par (paridad par) o
impar (paridad impar). Con este método se detectan errores al variar un bit o
un número impar de ellos sin que se detecten variaciones de un número par de
bits.
Si se prevé que los daños esperados en una transmisión no
sean de un bit en un octeto o palabra, sino en una secuencia de ellos, se puede
utilizar un algoritmo que permita realizar una suma denominada suma de chequeo
(checksum) y aplicar el método denominado de redundancia cíclica durante la
transmisión, de tal forma que al terminar éste se repite con el destino el
mismo algoritmo de suma, comprobándose si el valor final de la suma es el
mismo.
• Seguridad de los archivos
La finalidad principal de las computadoras es el del tratamiento de la
información que se almacena permanentemente en los archivos. La pérdida o
alteración no deseada de la información causa trastornos irreparables en
algunos casos. Por eso es necesario tomar medidas de seguridad que se deben
enfocar desde dos aspectos diferentes: La disponibilidad y la privacidad de los
archivos.
1) Disponibilidad de los archivos
Un archivo debe tener la información prevista y estar disponible en el momento
que un usuario la necesite. Se debe de tener presente la necesidad de asegurar
las circunstancias y se deben realizar las siguientes acciones:
.Copias de seguridad (Backup). Consiste en que cada cierto tiempo (hora, día, semana...)
se realice una copia del contenido de los archivos, de forma que si se
destruyen éstos, es posible la recuperación de los datos a partir de la última
de las copias. La operación de realizar las copias y la recuperación a partir
de las mismas, se realizan por medio de programas de utilidad del sistema operativo.
.Archivos log. Se usan en sistemas de tiempo compartido, con muchos usuarios
trabajando simultáneamente, en estos sistemas se recurre a archivos auxiliares
donde se registran todas las operaciones que realiza un usuario sobre sus
archivos, almacenándose la nueva información o aquella que difiere de la ya
existente.
Estos archivos reciben el nombre de archivos log y son tratados por utilidades
del sistema operativo conjuntamente con las copias de seguridad para los
procesos de recuperación. Esta segunda técnica permite asegurar la consistencia
del contenido de los archivos ante caídas inesperadas del sistema, evitando que
una información se quede a medias de escribir.
Para solucionar problemas de consistencia, algunos sistemas no dan la
operación de escritura por realizada hasta que no se refleja en el log, y esto
se hace una vez confirmada la escritura en el disco. Al volver a arrancar, el
sistema inspecciona el log buscando operaciones iniciadas y no acabadas,
finalizándolas antes de permitir de nuevo el trabajo de los usuarios.
2) Privacidad de los archivos
Los archivos se deben proteger de posibles accesos no deseados, el
sistema de protección debe permitir acceso de forma controlada, según reglas
definidas y con las siguiente autorización:
Cada usuario, al comenzar la sesión en
un sistema tras su identificación, tiene asignado por el sistema de protección
un dominio compuesto de una serie de recursos y de operaciones permitidas, por
ejemplo, una serie de archivos a los que acceden, no teniendo permitido el
acceso al resto de archivos.
En general, los sistemas operativos almacenan la información relativa a
los dominios en los que se denomina matriz de dominios, cuyas filas indican los
dominios existentes y las columnas los recursos. Cada elemento de la matriz
indica el derecho a utilizar el recurso correspondiente en el dominio.
IMPLEMENTACION DE MATRICES DE ACCESO
Implementación de Matrices de Acceso
El modelo de protección del sistema se puede
ver en forma abstracta como una matriz, la matriz de acceso.
Una matriz de acceso es una representación
abstracta del concepto de dominio de protección.
Este modelo fue propuesto por Lampón como una
descripción generalizada de mecanismos de protección en sistemas operativos. Es
el modelo más utilizado, del que existen numerosas variaciones, especialmente
en su implementación.
Los elementos básicos
del modelo son los siguientes:
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 estan Leer, Escribir y Ejecutar.
El modelo considera un conjunto de recursos,
denominados objetos, cuyo acceso debe ser controlado y un conjunto de sujetos
que acceden a dichos objetos. Existe también un conjunto de permisos de acceso
que especifica los diferentes permisos que los sujetos pueden tener sobre los
objetos (normalmente lectura, escritura, etc., aunque pueden ser diferentes, en
general, dependiendo de las operaciones que puedan realizarse con el objeto).
Se trata de especificar para cada pareja
(sujeto, objeto), los permisos de acceso que el sujeto tiene sobre el objeto.
Esto se representa mediante una matriz de acceso M que enfrenta todos los
sujetos con todos los objetos. En cada se indican los permisos de acceso
concretos que tiene el sujeto i sobre el objeto j.
Representación de una
matriz de acceso
Los derechos de acceso definen que
acceso tienen
varios sujetos sobre varios objetos.
Los sujetos acceden a
los objetos.
Los objetos son entidades que contienen información. Los objetos pueden ser:
Concretos:
Ej.: discos, cintas, procesadores, almacenamiento, etc.
Abstractos:
Ej.: estructuras de datos, de procesos, etc.
Los objetos están protegidos contra los sujetos.
Las autorizaciones a un sistema se conceden a los sujetos. Los sujetos pueden ser varios tipos de entidades:
Ej.: usuarios, procesos, programas, otras entidades,
etc.
Los derechos de acceso más comunes son:
Una forma de implementación es mediante una matriz
de control de acceso con:
Una matriz de control de acceso debe ser
muy celosamente protegida por el S. O.
Un sistema de cómputos contiene muchos
objetos que necesitan protección. Estos objetos pueden ser el hardware, la
CPU, los segmentos de memoria, terminales, unidades de disco o impresoras; o
bien ser del software, como los proceso, archivos, bases de datos o semáforos.
Cada objeto tiene un único nombre mediante
el cual se la hace referencia y un conjunto de operaciones que se pueden
realizar en él. READ y WRITE son operaciones adecuadas para un archivo; UP y
DOWN tiene sentido en un semáforo.
Es evidente que se necesita una vía para
prohibir el acceso de los procesos a los objetos a los que no tiene permitido
dicho acceso. Además, este mecanismo debe posibilitar la restricción de los
procesos a un subconjunto de operaciones legales en caso necesario. Por
ejemplo, puede permitirse que el proceso A lea el archivo F, pero no escriba
en el.
Un dominio es un conjunto de parejas (objeto,
derechos):
Cada pareja determina:
Un objeto.
Un subconjunto de las operaciones que se pueden llevar a cabo en el.
Un derecho es
el permiso para realizar alguna de las operaciones.
Es posible que un objeto se encuentre en
varios dominios con “distintos” derechos en cada dominio.
Un proceso se ejecuta en alguno de los dominios de
protección:
Existe una colección de objetos a los que puede tener
acceso.
Cada objeto tiene cierto conjunto de derechos.
Los procesos pueden alternar entre los
dominios durante la ejecución.
En algunos S. O. los dominios se llaman anillos.
Una forma en la que el S. O. lleva un
registro de los objetos que pertenecen a cada dominio es mediante una matriz
:
Los renglones son los dominios.
Las columnas son los objetos.
Cada elemento de la matriz contiene los derechos
correspondientes al objeto en ese dominio, por ej.: leer, escribir, ejecutar.
Dominio de protección
PROTECCION
BASADA EN EL LENGUAJE
Protección Basada en el Lenguaje
La
especialización de protección en un lenguaje de programación permite la descripción
de alto nivel de políticas para la asignación y usos de recursos.
La especificación de protección en un
lenguaje de programación permite la descripción de alto nivel de políticas
para la asignación y uso de recursos.
La implementación del lenguaje puede
proveer software para hacer cumplir la protección cuando no se pueda validar
si el hardware está soportado.
Interpretar las especificaciones de
protección para generar llamadas en cualquier sistema de protección provisto
por el hardware y el SO.
Protección en java:
La protección la maneja la máquina virtual
(JVM)
La JVM asigna un dominio de protección a
una clase cuando la carga.
El dominio de protección indica qué operaciones
puede (y no puede) realizar la clase.
Si se invoca un método de biblioteca y éste
realiza una operación privilegiada, se examina el stack para asegurar que la
biblioteca pueda realizar la operación
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.
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.
Diferencias entre las distintas formas de protección:
Seguridad: La obligación del cumplimiento
por un núcleo ofrece un mayor grado de seguridad del sistema de protección
mismo, que el que ofrece la generación de código de verificación de
protección por un compilador. En un esquema apoyado por compilador, la
seguridad depende de lo correcto que sea el traductor, de algún mecanismo
subyacente de gestión de almacenamiento que proteja los segmentos desde los
cuales se ejecuta el código compilador y, en última instancia, de la
seguridad de los archivos desde los que se carga el programa.
Flexibilidad: Hay límites a la flexibilidad
de un núcleo de protección para implementar una política definida por el
usuario, aunque podría proporcionar recursos suficientes para que el sistema
haga cumplir sus propias políticas. Con un lenguaje de programación, se puede
declarar la política de protección y hacerse cumplir según sea necesario en
una implementación.
Eficiencia: Se logra la eficiencia máxima
cuando hardware apoya directamente el cumplimiento de la protección. En la
medida en que se requiera soporte de software, el cumplimiento basado en el lenguaje tiene
la ventaja de que es posible verificar el cumplimiento del acceso estático
fuera de línea en el momento de la compilación.
En síntesis, la especificación de la
protección en un lenguaje de programación permite describir un alto nivel de
políticas de asignación y uso de recursos.
|
CONCLUSION
La protección es un mecanismo control de acceso de los
programas, procesos o usuarios al sistema o recursos.
Existen varios mecanismos que pueden usarse para asegurar
los archivos, segmentos de memoria, CPU, y otros recursos administrados por el
Sistema Operativo. Por ejemplo, el direccionamiento de memoria asegura que unos
procesos puedan ejecutarse solo dentro de sus propios espacios de dirección.
El modelo de protección del sistema se puede ver en forma abstracta como
una matriz, la matriz de acceso. Una matriz de acceso es una
representación abstracta del concepto de dominio de protección.
La protección se logra con la ayuda del núcleo del Sistemas Opertivos
que valida los intentos de acceso a recursos. El gasto de inspeccionar y
validar todos los intentos de acceso a todos los recursos es muy grande, por lo
tanto debe ser apoyada por hardware. Al aumentar la complejidad del Sistemas
Operativos, se deben refinar los mecanismos de protección. Los sistemas de
protección, no solo se preocupan de si puedo acceder a un recurso, sino también
de cómo lo accedo, por lo tanto los diseñadores de aplicaciones deben protegerlos,
y no solo el Sistemas Opertivos. Los diseñadores de aplicaciones mediante
herramientas de los lenguajes de programación pueden declarar la protección
junto con la tipificación de los datos.
6.5 Concepto de Seguridad
Seguridad es un conjunto de métodos y herramientas
destinados a proteger la información antes cualquier amenaza, y equivale
principalmente a garantizar al usuario:
Consistencia
Servicio
Protección
Control de acceso
Autenticidad.
Integridad
Disponibilidad
*Seguridad esta definido el conjunto de medidas tomadas para protegerse contra
robos, ataques, crímenes y espionajes o sabotajes, que implica evitar
la exposición a situaciones de peligro y la actuación para
quedar a cubierto frente a contingencias adversas; hay que considerar la
seguridad interna y externa. La información almacenada en el sistema
y sus recursos físicos tienen que ser protegidos contra acceso no
autorizado, destrucción o alteración mal intencionado, y
la introducción accidental de inconsistencia.
Seguridad en el sistema operativo consiste en tener
libre de todo peligro, daño o riesgo y que debe ser de una manera infalible,
que quiere decir que garantice tres aspectos: confidencialidad, integridad y
disponibilidad.
la seguridad tiene muchas facetas, dos de las mas
importantes son la perdida de datos y los intrusos. Algunas de las causas mas
comunes de la perdida de datos son:
Actos divinos: incendios, inundaciones, terremotos o
ratas que roen las cintas o discos flexibles.
Errores de Hardware o Software: mal funcionamiento
de la CPU, discos o cintas ilegible, errores de telecomunicación o
errores en el programa.
Errores humanos: entrada incorrecta de datos, mal
montaje de las cintas o el disco, ejecución incorrecta del programa,
perdida de cintas o discos.
En la evolución de la computación y de las
comunicaciones en las últimas décadas, ha hecho más accesibles a los sistemas
informáticos e incrementando los riesgos vinculados a la seguridad, entre ellos
esta:
La vulnerabilidad de las comunicaciones de datos que
es un aspecto clave de la seguridad cada vez mayor
en función ala proliferación de las redes de computadoras.
El nivel de criticidad y confidencialidad de los
datos.
El sistema operativo, como administrador de los recursos
cumple medidas externas de seguridad ya que realmente con la simple
seguridad física resulta insuficiente ante
la posibilidad acceso mediante equipos remotos conectados y es por
eso que se debe identificar las amenazas potenciales que
pueden proceder de fuentes maliciosas o no.
La seguridad cuenta con una herramienta que es
el que nos orienta a host y el nos orienta a la red; sin embargo
cuenta también con niveles de seguridad que es:
Servicio de seguridad
Gestión de seguridad
Seguridad de red seguridad de aplicaciones
Seguridad de aplicaciones
y Seguridad de datos.
En primer lugar debemos tener en cuenta el hecho de
que cuando utilizamos Internet nos vemos permanentemente expuestos a
contraer virus y descargar archivos dañados, sin importar el formato y la
finalidad de los mismos, por eso debemos decir que si utilizamos Internet ya
sea por entretenimiento o cuestiones laborales, debemos comenzar a pensar en un
software para la seguridad en sistemas que te proteja de cualquier tipo de
ataque cibernético.
Una de las pautas que debemos tener en cuenta cuando
comiences a utilizar un sistema operativo es q ue todos los programas que hacen
la mismo, se actualicen permanentemente y
nosotros también actualizarlos, porque, por lo general se encuentran
unos desactualizados corremos el riesgo de que nuestro sistema operativo
se dañe y los programas funcionaran lentos.
Existen varios mecanismos que pueden usarse para
asegurar los archivos, segmentos de memoria, CPU, y otros recursos
administrados por el Sistema Operativo.
Por ejemplo, el direccionamiento de memoria asegura que unos procesos puedan
ejecutarse solo dentro de sus propios espacios de dirección. El timer asegura
que los procesos no obtengan el control de la CPU en forma indefinida.
La protección se refiere a los mecanismos para controlar el acceso de
programas, procesos, o usuarios a los recursos definidos por un sistema de
computación. Seguridad es la serie de problemas relativos a asegurar la
integridad del sistema y sus datos.
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
6.6 Clasificaciones de seguridad
La seguridad interna está
relacionada a los controles incorporados al hardware y al Sistema
Operativo para asegurar los recursos del
sistema.
Seguridad Externa
La seguridad externa consiste en:
·
Seguridad física.
·
Seguridad operacional.
La 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.
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.
6.7
Validación y amenazas al sistema.
Identificar cada usuario que está trabajando en el
sistema (usando los recursos).
Uso de contraseñas.
Vulnerabilidad de contraseñas.
Que sean
complejas y difíciles de adivinar.
Cambiarlas
de vez en cuando.
Peligro
de pérdida del secreto.
La contraseña debe guardare cifrada.
Protección por Contraseña
Las clases de elementos de autentificación para
establecer la identidad de una persona son:
Algo sobre la persona:
Ej.:
huellas digitales, registro de la voz, fotografía, firma, etc.
Algo poseído
por la persona:
Ej.:
insignias especiales, tarjetas de identificación, llaves, etc.
Algo conocido
por la persona:
Ej.:
contraseñas, combinaciones de cerraduras, etc.
El esquema más común de autentificación es la protección
por contraseña:
El usuario elige una palabra clave, la
memoriza, la teclea para ser admitido en el sistema computarizado:
La clave
no debe desplegarse en pantalla ni aparecer impresa.
La protección por contraseñas tiene ciertas desventajas si
no se utilizan criterios adecuados para:
Elegir las contraseñas.
Comunicarlas
fehacientemente en caso de que sea necesario.
Destruir
las contraseñas luego de que han sido comunicadas.
Modificarlas
luego de algún tiempo.
Los usuarios tienden a elegir
contraseñas fáciles de recordar:
Nombre de un amigo, pariente, perro, gato, etc.
Numero de
documento, domicilio, patente del auto, etc.
Estos datos podrían ser conocidos por
quien intente una violación a la seguridad mediante intentos repetidos, por lo
tanto debe limitarse la cantidad de intentos fallidos de
acierto para el ingreso de la contraseña.
La contraseña no debe ser muy corta para no
facilitar la probabilidad de acierto.
Tampoco debe ser muy larga para que no se dificulte
su memorización, ya que los usuarios la anotarían por miedo a no recordarla y
ello incrementaría los riesgos de que trascienda.
Contraseñas de un solo uso
Al final de cada sesión, se le pide al
usuario que cambie la contraseña.
Si alguien “roba una contraseña”, el
verdadero usuario se dará cuenta cuando vaya a identificarse de nuevo, pues el
impostor habrá cambiado la contraseña, con lo que el fallo de seguridad queda
detectado.
Verificación de Amenazas
Es una técnica según la cual los usuarios no
pueden tener acceso directo a un recurso:
Solo lo tienen las rutinas del S. O. llamadas programas
de vigilancia.
El
usuario solicita el acceso al S. O.
El S. O.
niega o permite el acceso.
El acceso
lo hace un programa de vigilancia que luego pasa los resultados al programa del
usuario.
Permite:
Detectar
los intentos de penetración en el momento en que se producen.
Advertir
en consecuencia.
Amenazas relacionadas con los programas
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. En esta sección, vamos a describir algunos métodos comunes mediante
los que os programas pueden provocar brechas de seguridad. Hay que resaltar que
existe una considerable variación en lo que respecta a los convenios de
denominación de los agujeros de seguridad, y que en este texto utilizamos los
términos más comunes o descriptivos.
CABALLO DE TROYA
Definición.- Un programa indudablemente útil e
inocente que contiene códigos escondidos que permiten la modificación no
autorizada y la explotación o destrucción de la información. Los programas
caballo de Troya se distribuyen por lo general por Internet. Los juegos,
freeware y protectores de pantalla son los medios comunes que utilizan los
caballos de Troya.
Se denomina troyano (o caballo
de Troya, traducción más fiel del inglés Trojan horse aunque
no tan utilizada) a un programa malicioso capaz de alojarse en computadoras y
permitir el acceso a usuarios externos, a través de una red local o de
Internet, con el fin de recabar información o controlar remotamente a la
maquina anfitriona.
Un troyano no es de por sí, un virus, aun cuando
teóricamente pueda ser distribuido y funcionar como tal. La diferencia
fundamental entre un troyano y un virus consiste en su finalidad. Para que un
programa sea un "troyano" solo tiene que acceder y controlar la
maquina anfitriona sin ser advertido, normalmente bajo una apariencia inocua.
Al contrario que un virus, que es un huésped destructivo, el troyano no
necesariamente provoca danos porque no es su objetivo.
Suele ser un programa pequeño alojado dentro de una
aplicación, una imagen, un archivo de música u otro elemento de apariencia
inocente, que se instala en el sistema al ejecutar el archivo que lo contiene.
Una vez instalado parece realizar una función útil (aunque cierto tipo de
troyanos permanecen ocultos y por tal motivo los antivirus o anti troyanos no
los eliminan) pero internamente realiza otras tareas de las que el usuario no
es consciente, de igual forma que el Caballo de Troya que los griegos regalaron
a los troyanos.
Habitualmente se utiliza para espiar, usando la
técnica para instalar un software de acceso remoto que permite monitorizar lo
que el usuario legítimo de la computadora hace (en este caso el troyano es un
spyware o programa espía) y, por ejemplo, capturar las pulsaciones del teclado
con el fin de obtener contraseñas (cuando un troyano hace esto se le cataloga
de keylogger) u otra información sensible.
La mejor defensa contra los troyanos es no ejecutar
nada de lo cual se desconozca el origen y mantener software antivirus
actualizado y dotado de buena heurística; es recomendable también instalar
algún software anti troyano, de los cuales existen versiones gratis aunque
muchas de ellas constituyen a su vez un troyano. Otra solución bastante eficaz
contra los troyanos es tener instalado un firewall.
Otra manera de detectarlos es inspeccionando
frecuentemente la lista de procesos activos en memoria en busca de elementos
extraños, vigilar accesos a disco innecesarios, etc.
Lo peor de todo es que últimamente los troyanos
están siendo diseñados de tal manera que es imposible poder detectarlos excepto
por programas que a su vez contienen otro tipo de troyano, inclusive y aunque
no confirmado, existen troyanos dentro de los programas para poder saber cuál
es el tipo de uso que se les y poder sacar mejores herramientas al mercado
llamados también "troyanos sociales"
Los troyanos están actualmente ilegalizados, pero
hay muchos crackers que
lo utilizan.
PUERTA TRASERA
En la informática, una puerta trasera (o
en ingles backdoor), es una secuencia especial dentro del código de
programación mediante el programador puede acceder o escapar de un programa en
caso de emergencia o contingencia en algún problema.
A su vez, estas puertas también pueden ser
perjudiciales debido a que los crackers al descubrirlas pueden acceder a un
sistema en forma ilegal y aprovecharse la falencia.
A pesar de que no se consideran propiamente como virus, representan un riesgo de seguridad importante, y usualmente son desconocidas la inmensa gama de problemas que estas puedan llegar a producir. Al hablar de estas nos referimos genéricamente a una forma "no oficial" de acceso a un sistema o a un programa.
A pesar de que no se consideran propiamente como virus, representan un riesgo de seguridad importante, y usualmente son desconocidas la inmensa gama de problemas que estas puedan llegar a producir. Al hablar de estas nos referimos genéricamente a una forma "no oficial" de acceso a un sistema o a un programa.
Algunos programadores dejan puertas traseras a
propósito, para poder entrar rápidamente en un sistema; en otras ocasiones
existen debido a fallos o errores.
Ni que decir tiene que una de las formas típicas de
actuación de los piratas informáticos es localizar o introducir a los diversos
sistemas una puerta trasera y entrar por ella.
El término es adaptación directa del inglés
backdoor que comúnmente significa “puerta de atrás”.
Lo usual en estos programas los cuales no se
reproducen solos como los virus, sino que nos son enviados con el fin de tener
acceso a nuestros equipos muchas veces a través del correo electrónico, por lo
que la mayoría de las veces no son fáciles de detectar y por si solos no
siempre causan danos ni efectos inmediatos por su sola presencia, siendo así
pueden llegar a permanecer activos mucho tiempo sin que nos percatemos de ello.
Generalmente estos se hacen pasar por otros, es
decir, se ocultan en otro programa que les sirve de caballo de Troya para que
el usuario los instale por error.
Lo peor que puede pasarle cuando está en el
Messenger o en el ICQ
no es que contraiga su PC un virus. Lo peor es que alguien instale un backdoor en su PC. Las puertas traseras son fáciles de entender.
no es que contraiga su PC un virus. Lo peor es que alguien instale un backdoor en su PC. Las puertas traseras son fáciles de entender.
Como todo en Internet se basa en la arquitectura
cliente / servidor, solo se necesita instalar un programa servidor en una
máquina para poder controlarla a distancia desde otro equipo, si se cuenta con
el cliente adecuado, esta puede bien ser la computadora de un usuario
descuidado o poco informado.
Las puertas traseras (backdoors) son programas que
permiten acceso prácticamente ilimitado a un equipo de forma remota. El
problema, para quien quiere usar este ataque, es que debe convencerlo a usted
de que instale el servidor.
Por eso, si aparece un desconocido ofreciéndole
algún programa maravilloso y tentador, no le crea de inmediato. Lo que están
probablemente a punto de darle es un troyano, un servidor que le proporcionara
a algún intruso acceso total a su computadora.
Con todo el riesgo que esto implica, hay una forma
simple y totalmente segura de evitarlo: no acepte archivos ni mucho menos
ejecute programas que le hayan mandado siendo estos sobre todo de procedencia
dudosa.
Los programas que se clasifican como “backdoors” o
"puertas traseras" son utilerías de administración remota de una red
y permiten controlar las computadoras conectadas a esta.
El hecho que se les clasifique como software
malévolo en algunos casos, es que cuando corren, se instalan en el sistema sin
necesidad de la intervención del usuario y una vez instalados en la
computadora, no se pueden visualizar estas aplicaciones en la lista de tareas
en la mayoría de los casos.
Consecuentemente un backdoor puede supervisar casi
todo proceso en las computadoras afectadas, desinstalar programas, descargar
virus en la PC remota, borrar información y muchas cosas más.
Recomendación para estar a salvo de las puertas
traseras y el delicado riesgo para la seguridad que estas representan. A saber:
1.- Es recomendable asegurarnos de que cada cosa
que ejecutamos este bajo nuestro control. Una buena guía para ello es el
sentido común (el menos común de los sentidos).
2.- Procure no ejecutar programas de los que no
sepamos su procedencia, tanto en anexos de correo, ICQ, Messenger y descargas de
Internet (ya sean vía Web o FTP).
3.- La información nos protege. Es recomendable
enterarse un poco de las noticias de virus y programas dañinos relacionados,
visitando por lo menos las páginas de las distintas empresas antivirus o
suscribiéndose a algunos boletines.
4.- Es necesario instalar un antivirus y mantenerlo
actualizado. En la
actualidad se protege al usuario no solo contra virus, sino también
contra gusanos, programas de puerta trasera, troyanos y algunos programas maliciosos.
actualidad se protege al usuario no solo contra virus, sino también
contra gusanos, programas de puerta trasera, troyanos y algunos programas maliciosos.
5.- Es bueno tener presente que existen virus y
troyanos que pueden
aparentar ser amigables (una simple tarjeta de San Valentín), o que provienen de gente que conoces (como es el caso del gusano Sircam). Siendo así, no confíes en ningún programa ni en nada que recibas hasta no revisarlo con el Antivirus.
aparentar ser amigables (una simple tarjeta de San Valentín), o que provienen de gente que conoces (como es el caso del gusano Sircam). Siendo así, no confíes en ningún programa ni en nada que recibas hasta no revisarlo con el Antivirus.
6.- Mantenga al día todas las actualizaciones de
seguridad de Microsoft, para todas y cada una de las distintas aplicaciones
Un virus informático es un
programa que se copia automáticamente y que tiene por objeto alterar el normal
funcionamiento de la computadora, sin el permiso o el conocimiento del usuario.
Aunque popularmente se incluye al "malware" dentro de los virus, en
el sentido estricto de esta ciencia los virus son programas que se replican y
ejecutan por sí mismos. Los virus, habitualmente, reemplazan archivos
ejecutables por otros infectados con el código de este. Los virus pueden
destruir, de manera intencionada, los datos almacenados en un ordenador, aunque
también existen otros más benignos, que solo se caracterizan por ser molestos.
Los virus informáticos tienen, básicamente, la
función de propagarse, replicándose, pero algunos contienen además una carga
dañina (payload) con distintos objetivos, desde una simple broma hasta realizar
danos importantes en los sistemas, o bloquear las redes informáticas generando
trafico inútil.
El funcionamiento de un virus informático es
conceptualmente simple. Se ejecuta un programa que está infectado, en la
mayoría de las ocasiones, por desconocimiento del usuario. El código del virus
queda residente (alojado) en la memoria RAM de la computadora, aun cuando el
programa que lo contenía haya terminado de ejecutarse. El virus toma entonces
el control de los servicios básicos del sistema operativo, infectando de,
manera posterior, archivos ejecutables que sean llamados para su ejecución.
Finalmente se añade el código del virus al del programa infectado y se graba en
disco, con lo cual el proceso de replicado se completa.
Un gusano es un virus informático o programa auto
replicante que no altera los archivos sino que reside en la memoria y se
duplica a sí mismo. Los gusanos utilizan las partes automáticas de un sistema
operativo que generalmente son invisibles al usuario. Es algo usual detectar la
presencia de gusanos en un sistema cuando, debido a su incontrolada
replicación, los recursos del sistema se consumen hasta el punto de que las
tareas ordinarias del mismo son excesivamente lentas o simplemente no pueden
ejecutarse.
Un gusano, al igual que un virus, esta diseñado
para copiarse de un equipo a otro, pero lo hace automáticamente. En primer
lugar, toma el control de las características del equipo que permiten
transferir archivos o información. Una vez que un gusano este en su sistema,
puede viajar solo. El gran peligro de los gusanos es su habilidad para
replicarse en grandes números. Por ejemplo, un gusano podría enviar copias de
sí mismo a todos los usuarios de su libreta de direcciones de correo
electrónico, lo que provoca un efecto domino de intenso tráfico de red que
puede hacer más lentas las redes empresariales e Internet en su totalidad.
Cuando se lanzan nuevos gusanos, se propagan muy
rápidamente. Bloquean las redes y posiblemente provocan esperas largas (a todos
los usuarios) para ver las páginas Web en Internet.
Gusano Subclase de virus. Por lo general, los gusanos se
propagan sin la intervención del usuario y distribuye copias completas
(posiblemente modificadas) de sí mismo por las redes. Un gusano puede consumir
memoria o ancho de banda de red, lo que puede provocar que un equipo se
bloquee.
Debido a que los gusanos no tienen que viajar
mediante un programa o archivo "host", también pueden crear un túnel
en el sistema y permitir que otro usuario tome el control del equipo de forma
remota. Entre los ejemplos recientes de gusanos se incluyen: Sasser y Blaster.
6.7
Cifrado
|
BIBLIOGRAFIA
Arvin Vázquez Aguilar (2012) funciones del sistema de
protección
Recuperado de:
Sistemas de protección basada en lenguaje (2010) recuperado
de:
Cintia
Carrasco(11 de diciembre del 2012) Sistemas operativos recuperado de:


