domingo, 20 de agosto de 2017

Ensayo de Seguridad WEB

Seguridad WEB


Introducción
La seguridad web es de las cosas más importantes en la informática y/o en las aplicaciones del mundo. ¿Qué es la seguridad WEB? Es el impedimento de acciones no autorizadas que pueden causar daños o alterar cierto sistema. Hoy en día se sufre de muchos ataques o atentados contra los programas o servidores por aquellos llamados hackers.

Los riesgos contra la seguridad
Existen 2 riesgos, los cuales son:
  • La Amenaza: Que es la posibilidad de violación de la seguridad, existe cuando hay una circunstancia, acción o evento que pudiera romper la seguridad. Es un peligro posible que podría explotar una vulnerabilidad.
  • El Ataque: Es un asalto a la seguridad del sistema derivado de una amenaza. Es decir, un acto para eludir los servicios de seguridad y violar la política de seguridad de un sistema. O cualquier acción que comprometa a la seguridad de la información de una organización. Existen 2 tipos de ataques:
    • Ataque Pasivo: Son la forma de escucha o de observación no autorizadas en las transmisiones. El objetivo es obtener información que se transmite. Estos ataques son muy difíciles de detectar, ya que no implican alteración en los datos. Ni el emisor ni el receptor son conscientes de la tercera persona que lee los mensajes. Para contrarrestarlos se usan los cifrados de datos. Existen dos tipos:
      • Obtención de contenido de Mensajes
      • Análisis de Tráfico
    • Ataque Activo: Que implican alguna modificación en el flujo de datos, o la creación de uno falso. Se divide en 4 categorías:
      • Suplantación
      • La Repetición
      • Modificación de Mensajes
      • Interrupción de Servicio
Para contrarrestar los ataques existen distintos servicios de seguridad, que mejoran la seguridad de los sistemas, el procesamiento de datos y la transferencia de información de una organización. Hacen uso de uno o más mecanismos para proporcionar su servicio. Los mecanismo de seguridad son diseñados para detectar los ataques y restablecerse de ellos.

Aquí se presenta una tabla de "Ataques vs Mecanismos de Seguridad".

CONCLUSIÓN
La seguridad es importante bajo la protección o/e integridad de los datos el no protegerlos conlleva a quitar privacidad o hasta fraudes, hay muchos mecanismos de seguridad que detectan los ataques, pero pueden ser burlados, se tienen que crear aún más mecanismos, no es totalmente seguro, ya que los ataques evolucionan con la seguridad.

Referencias
William Stallings, 2004, Fundamentos de Seguridad en Redes. Aplicaciones y Estándares. Madrid,España. Pearson Educación.
Ataque Informático, EcuRed, sin fecha,









Ensayo Cliente-Servidor

Arquitectura Cliente-Servidor
Resultado de imagen para cliente servidor arquitectura
Introducción
Es una arquitectura distribuida que consiste en que un cliente realice una petición y un servidor lo procese y devuelva una respuesta. El modelo Cliente-Servidor está referido a Ordenadores en red y consta de 3 niveles, el nivel 1 es el cliente, el nivel 2 el servidor, y el nivel 3 los recursos con los que interactúa el servidor. Por ejemplo: En un sistema distribuido cada máquina puede cumplir tanto con el rol de servidor como el de cliente. El cliente participa en las conexiones enviando la petición deseada, y se quede esperando por una respuesta, una vez que reciba la respuesta del servidor termina su conexión. 

Los Servidores
El servidor se puede ejecutar en cualquier sistema donde exista TCP/IP. Y está activo desde antes que le llegue la primera petición, lo cual hace que su tiempo de vida sea "interminable". Ellos pueden ejecutar tareas sencillas, que es donde procesan una petición a la vez, pero secuencialmente, ya que son rápidos al devolver una respuesta. Los más complejos trabajan concurrentemente, tienen alto requerimiento de protección y autorización, son capaces de leer archivos de sistema, mantenerse en línea, acceder a datos protegidos y a archivos de usuario, pero ellos tardan en dar una respuesta.

Constan de dos partes
  1. Programa o proceso que es responsable de aceptar nuevas peticiones se le llama: Maestro o Padre.
  2. Programas o procesos que deben manejar las peticiones individualmente son llamados: Esclavos o Hijos.
El programa “Maestro” tiene diferentes tareas, entre ellas están el abrir un puerto para que puedan acceder los clientes, esperar y aceptar las peticiones de los clientes, iniciar un programa “Esclavo” para realizar su petición.

CARACTERÍSTICAS
  • Combinación de un cliente que interactúa con el usuario (interfaz del sistema), y un servidor que interactúa con los recursos a compartir (bases de datos, impresoras, modem, entre otros).
  • Se establece una relación entre procesos distintos, los cuales pueden ser ejecutados en la misma máquina o en máquinas diferentes distribuidas a lo largo de la red.
  • No existe otra relación entre clientes y servidores que no sea el que se tiene en el intercambio de mensajes, ya que el mensaje es el medio de las peticiones y respuestas.
  • Conecta clientes y servidores independientemente de sus plataformas.
  • Tiene escalabilidad, permite agregar más estaciones de trabajo activas sin afectar altamente a su rendimiento, y puede agregar múltiples servidores.

VENTAJAS
  • Se pueden usar componentes software/hardware de varios fabricantes, contribuye a la reducción de costos.
  • Facilita la integración entres sistemas distintos y comparte información (Puede integrar varias PCs sin que tenga el mismo sistema operativo).
  • Es más rápido el mantenimiento y desarrollo de aplicaciones (SQL, sockets, RPC).
  • Contribuye a proporcionar a los diferentes departamentos de una organización, soluciones locales. Pero permitiendo la integración de la información relevante a nivel global.
DESVENTAJAS
  • El mantenimiento de los sistemas es más difícil pues implica los distintos componentes de software y hardware distribuidos por distintos proveedores, es difícil detectar las fallas.
  • Escasas herramientas de administración.
  • Los clientes y servidores deben usar el mimo mecanismo (sockets, RPC), por lo tanto, deben tener mecanismos generales en distintas plataformas.
  • En el aspecto de la seguridad se deben hacer verificaciones en el cliente y el servidor.
  • El desempeño puede disminuir por congestión de red y el tráfico de datos.

CONCLUSIÓN
El modelo Cliente-Servidor es importante para la conexión y el intercambio de información a nivel mundial, puesto que el cliente pide y el servidor envía. Lo cual su importancia implica en los sistemas distribuidos, ya que los distintos ordenadores se reparten las tareas. Es posible que su seguridad no sea muy avanzada pero sin el modelo no podrían ejecutarse muchas aplicaciones con las que hoy en día contamos.

Referencias
Aquitectura Cliente-Servidor, EcuRed, sin fecha https://www.ecured.cu/Arquitectura_Cliente_Servidor
Rodrigo Paszniuk, Arquitectura Cliente-Servidor, 2013-07-09, Programación





domingo, 13 de agosto de 2017

Ensayo de Sistemas Distribuidos

INTRODUCCIÓN


Es una conexión de computadoras autónomas conectadas mediante una red de comunicaciones que interactúan entre si por medio de mensajes para lograr hacer una determinada tarea. Para poder conectarse entre si llevan a cabo un protocolo preestablecido.  El sistema distribuido siempre está funcionando, aunque algunas aplicaciones no lo estén. También un sistema distribuido hace referencia al termino “red de computadoras”.


CARACTERÍSTICAS

  • Los usuarios y aplicaciones pueden interactuar con un sistema distribuido, sin importar en que momento o en donde se lleve la acción.
  • En los elementos que componen una red de computadoras, donde se ejecuta el sistema distribuido, son variados y diferentes. También conocido como la Heterogeneidad.
  • Tienen extensibilidad y apertura.
  • Tienen seguridad: Para los usuarios dichos mensajes que envían deben tener seguridad. Para ellos el sistema debe ofrecer confidencialidad (El manejo privado de la información), la autentificación del usuario, la integridad que asegure que la información no haya sido corrompida durante su envió y el control de acceso a los recursos administrados por un sistema, para eso se crean firewalls, encriptación de datos, entre otras cosas.
  • Escalabilidad: Hay escalabilidad cuando el número de recursos y usuario aumenta significativamente y el sistema logra conservar su efectividad. Los distintos aspectos que afectan la escalabilidad son: Su tamaño de usuarios/recursos, la localización entre las computadoras y su nivel de administración. Pero un sistema que es escalable en uno o varios aspectos termina afectando su rendimiento conforme a su crecimiento.
  • La transparencia: Un sistema distribuido, es transparente cuando es capaz de presentarse en las computadoras como si fuera un sistema que corre solo en ella y no como un sistema cuyos recursos y procesos están distribuidos físicamente en varias computadoras.

LA CONCURRENCIA

La concurrencia permite que los recursos disponibles en la red puedan ser utilizados simultáneamente por los usuarios y/o aplicaciones. Existe un control de concurrencia que trata con los problemas de aislamiento y consistencia del procesamiento de transacciones, el nivel de concurrencia o el número de transacciones simultaneas es el parámetro más importante en los sistemas distribuidos, por tanto los mecanismos de control de concurrencia buscan un balance entre el mantenimiento de la consistencia de datos y el mantenimiento de un alto nivel de concurrencia.

LA CARENCIA DE RELOJ GLOBAL

No tiene un reloj (hora) fijo. La coordinación para la transferencia de los mensajes entre los componentes de la red para realizar una determinada tarea, no tienen una temporización general o global, sino que está distribuida en los distintos equipos.

FALLOS INDEPENDIENTES EN LOS COMPONENTES

El sistema distribuido trabaja mutuamente entre los componentes, pero no significa que si uno de estos comienza a fallar los demás también, por lo cual los componentes siguen funcionando con normalidad haciendo un trabajo efectivo.

EJEMPLO DE UN SISTEMA DISTRIBUIDO


Un ejemplo sería Skype, ya que varias computadoras pueden conectarse para la comunicación de sus usuarios, usando micrófonos y/o cámaras. Skype debe usar la autentificación de usuario a través de su base de datos, cuando las computadoras están conectadas trabajan mutuamente para hacer la tarea que se les puso, en este caso la comunicación. También deben contar con una alta seguridad contra los terceros puesto que no cualquiera se puede meter a una llamada/videochat privado de forma normal sin invitación. 

CONCLUSIÓN

Los sistemas distribuidos son importantes para la vida cotidiana de hoy en día, necesitan muchos requerimientos para ser un buen sistema distribuido y tener mucha efectividad, pero lo que más necesitan es tener aún más seguridad que con la que cuentan hoy en día para proteger la información que el usuario envié o reciba de los terceros. Su mayor ventaja es sobre que si ocurre algún fallo independiente en la red, no afectara a los demás equipos y podrán completar la tarea determinada. Y la escalabilidad es un pequeño problema, puesto que entre más escalabilidad tenga su rendimiento es afectado. 

Referencias

Turpo Einar, Sistemas Distribuidos, recuperado el 13 de Agosto 2017, Unap, http://www.unap.edu.pe/cidiomas/licing/pdf/sd.pdf. 13 de Agosto 2017.
Sistemas Distribuidos, recuperado el 13 de Agosto 2017, Cinestav, http://www.tamps.cinvestav.mx/~vjsosa/clases/sd/sistemas_distribuidos_panorama.pdf. 13 de Agosto 2017.
Lopéz F. FranciscoSistemas Distribuido, recuperado el 13 de Agosto de 2017, México, UAM Cuajimalpa http://hermes.cua.uam.mx/libros/archivos/03IXStream_sistemas_distribuidos.pdf. Agosto 2015.

Autor: DAVID MADRIGAL BUENDÍA.