domingo, 29 de noviembre de 2015

Mapa Conceptual Unidad 5



Cifrado



Existen muchas defensas frente a los ataques informáticos, que abarcan toda la gama que va desde la metodología a la tecnología. La herramienta de carácter mas general que esta a disposición de los usuarios y de los disecadores de sistemas es la criptograma. En esta sección vamos a explicar algunos detalles acerca de la criptograma y de su uso en el campo de la seguridad informática.

En una computadora aislada, el sistema operativo puede determinar de manera fiable quienes son el emisor y el receptor de todas las comunicaciones interpretaros, ya que el sistema operativo controla todos los canales de comunicaciones de la computadora. En una red de computadoras, la situación es bastante distinta. Una computadora conectada a la red recibe bits desde el exterior, y no tiene ninguna forma inmediata y fiable de determinar que maquina o aplicación ha enviado esos bits. De forma similar, la propia computadora envía bits hacia la red sin tener ninguna forma de determinar quien puede llegar a recibirlos.




Métodos y técnicas de encriptacion

Cesar
Esta técnica consistía simplemente en sustituir una letra por la situada tres lugares mas aya en el alfabeto esto es la A se transformaba en D, la B en E y así sucesivamente hasta que la Z se convertía en C.

Gronsfeld
Este método utiliza mas de un alfabeto cifrado para poner en clave el mensaje y que se cambia de uno a otro según se pasa de una letra del texto en claro a otra.
Es decir que deben tenerse un conjunto de alfabetos cifrados y una forma de hacer corresponder cada letra del texto original con uno de ellos.

RSA
En los sistemas tradicionales de cifrado debe comunicarse una clave entre el emisor y el receptor del mensaje, el problema aqui es encontrar un canal seguro para transmitir dicha clave. Este problema viene a resolverse en los sistemas de clave publica la clave de cifrado, pues un tiempo enormemente de ordenador es necesario para encontrar una transformación de descifrado a partir de la de cifrado.

DES
DES fue desarrollado por IBM a mediados de los setenta. Aunque tiene un buen diseño, su tamaño de clave de 56 bits es demasiado pequeño para los patrones de hoy.
DES (Data Encryption Standard) es un mecanismo de encriptación de datos de uso generalizado. Hay muchas implementaciones de hardware y software de DES. Este transforma la información de texto llano en datos encriptados llamados texto cifrado mediante el uso de un algoritmo especial y valor semilla llamado clave. Si el receptor conoce la clave, podrá utilizarla para convertir el texto cifrado en los datos originales. Es un mecanismo de encriptado simétrico.

Chaffing & Winnowing
Esta técnica propuesta por Donald Rivest. Es mas un intento de esquivar las restricciones a la criptografia en EE.UU. (y otros paises) que una propuesta razonable debido al tamaño de los mensajes resultantes.
El termino ingles “winnowing” se tomara como aventar es decir separar el grano de la paja y el termino “chaffing” por el castellano empajar (cubrir o rellenar con paja). La idea básica consiste en mezclar la información real (grano) con otra de relleno (paja) de modo que sea imposible separarlas excepto para el destinatario.

SKIPJACK
Este algoritmo fue descalificado por el gobierno de Estados Unidos. Algunos detalles sobre el algoritmo en si y sus aplicaciones en la practica a los chips Clipper y Capstone.
Skipjack fue desarrollado por la NSA inicialmente para los chips Clipper y Capstone. Su diseño comenzó en 1985 y se completo su evaluación en 1990.

BIFIDO
El método Bifido es un cifrado fraccionario. Es decir que cada letra viene representada por una o mas letras o símbolos, y donde se trabaja con estos símbolos mas que con las letras mismas.

WLBYKYAAOTB
Este método altera la frecuencia de los caracteres a diferencia de lo que ocurre por ejemplo con los cifrados monoalfabeticos. Admite algunas variaciones como por ejemplo dividir la lista en 3,4,..., n partes.

Cifrado exponencial
Es un sistema basado en la exponencial modular, debido Pohlig y Hellman (1978). Este método es resistente al criptoanalisis.

Blowfish
Este algoritmo realiza un cifrado simple en 16 ciclos, con un tamaño de bloque de 64 bytes para un total de 448 bits. Aunque hay una fase compleja de la inicializacion. El cifrado de datos es muy eficiente en los microprocesadores grandes.

Validación y amenazas al sistema




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 mas ú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. 

CABALLO DE TROYA

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.

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.

BOMBA LÓGICA
Este tipo de delito forma parte de los sistemas informáticos que realizan ataques a la parte lógica del ordenador.
Se entiendo por bomba lógica (en ingles denominado time bombs), aquel software, rutinas o modificaciones de programas que producen modificaciones, borrados de ficheros o alteraciones del sistema en un momento posterior a aquel en el que se introducen por su creador.

VIRUS
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 si 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 mas benignos, que solo se caracterizan por ser molestos.

Amenazas del Sistema y de la Red
Las amenazas basadas en programas utilizan tipicamente un fallo en los mecanismos de protección de un sistema para atacar a los programas. Por contraste, las amenazas del sistema y de la red implican el abuso de los servicios y de las conexiones de red. En ocasiones, se utiliza un ataque del sistema y de la red para lanzar un ataque de programa, y viceversa.

GUSANOS
Un gusano es un virus informático o programa auto replicarte que no altera los archivos sino que reside en la memoria y se duplica a si 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 replican, los recursos del sistema se consumen hasta el punto de que las tareas ordinarias del mismo son excesivamente lentas o simplemente no pueden ejecutarse.


Clasificaciones de la seguridad






La seguridad interna esta 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.

Seguridad Operacional


Consiste en las diferentes políticas y procedimientos implementados por la administración de la instalación comunicacional.

La autorización determina que acceso se permite y a quien.

La clasificación divide el problema en problemas:

  • Los datos del sistema y los usuarios se dividen en clases:
    • A las clases se conceden diferentes derechos de acceso.

Un aspecto critico es la selección y asignación de personal:

  • La pregunta es si se puede confiar en la gente.
  • El tratamiento que generalmente se da al problema es la división de responsabilidades:
    • Se otorgan distintos conjuntos de responsabilidades.
    • No es necesario que se conozca la totalidad del sistema para cumplir con esas responsabilidades.
    • Para poder comprometer al sistema puede ser necesaria la cooperación entre muchas personas:
      • Se reduce la probabilidad de violar la seguridad.
    • Debe instrumentarse un gran numero de verificaciones y balances en el sistema para ayudar a la detección de brechas en la seguridad.
    • El personal debe estar al tanto de que el sistema dispone de controles, pero:
      • Debe desconocer cuales son esos controles:
        • Se reduce la probabilidad de poder evitarlos.
      • Debe producirse un efecto disuasivo respecto de posibles intentos de violar la seguridad.

Concepto de seguridad




Los términos seguridad y protección se utilizan en forma indistinta. Sin embargo, es útil hacer una distinción entre los problemas generales relativos a la garantía de que los archivos no sea leídos o modificados por personal no autorizado, lo que incluye aspectos técnicos, de administración, legales y políticos, por un lado y los sistemas específicos del sistema operativo utilizados para proporcionar la seguridad, por el otro. Para evitar la confusión, utilizaremos el termino seguridad para referirnos al problema general y el termino mecanismo de protección para referirnos a los mecanismos específicos del sistema operativo utilizado para resguardar la información de la computadora. Sin embargo, la frontera entre ellos no esta bien definida.



Protección basada en el lenguaje




La protección se logra con la ayuda del núcleo del SO 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 SO, 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 SO. 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.

Ventajas:
  • 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. 

Diferencias entre las distintas formas de protección:
 

  • SeguridadLa obligación de cumplimiento por núcleo ofrece un grado de seguridad que el código de seguridad ofrecido por el compilador.
  • Flexibilidad: La flexibilidad de la implementación por núcleo es limitada. Si un lenguaje no ofrece suficiente flexibilidad, se puede extender o sustituir, perturbando menos cambios en el sistema que si tuviera que modificarse el núcleo.
  •  Eficiencia: Se logra mayor eficiencia cuando el hardware apoya la protecció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.

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.El programador de aplicaciones necesita un mecanismo de control de acceso seguro y dinámico para distribuir capacidades a los recursos del sistema entre los procesos de usuario.

Implementacion 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 Lampson como una descripción generalizada de mecanismos de protección en sistemas operativos. Es el modelo mas utilizado, del que existen numerosas variaciones, especialmente en su implementación.

Implementación.
  • Tabla Global 
  • Sencilla. Se almacena una lista de ternas {<dominio, objeto, permisos>...}. 
  • Como el numero de objetos y dominios es posiblemente muy grande, se debería guardar en memoria virtual → lento.

Funciones del sistema de proteccion




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 políticas son diversas, dependen de la aplicación y pueden estar sujetas a cambios a lo largo del tiempo. Un principio importante es la separación de políticas de los mecanismos. ‘Los mecanismos determinan como algo se hará. Las políticas deciden que se hará'.

Concepto y objetivos de proteccion



La protección consiste en controlar y, en su caso, impedir el acceso de los programas, procesos o usuarios a los recursos del sistema (archivos, memoria, CPU, etc.). Se necesitan mecanismos y políticas que determinen qué acceso se permite a quién. Los recursos sólo pueden ser usados por los procesos que tienen autorización del SO.



Objetivos de la protección:
  • Asegurar que cada componente activo de un programa use los recursos de forma coherente.
  • Es necesario proteger los recursos
  • Un recurso desprotegido no puede defenderse contra el uso (o abuso) de un usuario incompetente o no autorizado.
  • Un sistema orientado hacia la protección debe proporcionar medios para distinguir entre usos autorizados y no autorizados
  • Compromiso seguridad-compartición