Você está na página 1de 5

Caso de Estudio: Sistema de Distribucin de Informacin Correo Electrnico Universidad de Los Andes

PARTE II.

Anlisis de Necesidades de Seguridad en Transacciones


Asistente Graduado: Vctor Guana (vm.guana26@uniandes.edu.co).

Universidad de Los Andes Departamento de Ingeniera de Sistemas y Computacin Infraestructura Computacional ISIS 2203 (C1) Caso 2 Anlisis de Necesidades de Seguridad en Transacciones Preparado por: Asistente Graduado Vctor Guana. Objetivos: y Identificar los requerimientos de seguridad de las transacciones involucrados en la infraestructura tecnolgica del sistema de recepcin y envo de correo electrnico de la Universidad de los Andes y plantear soluciones a los mismos Construir un prototipo a escala del sistema que permita enfrentar algunos de los requerimientos de seguridad detectados.

Descripcin General: En la primera parte del caso se present el sistema de recepcin y envo de correos electrnicos de la Universidad de Los Andes, adicionalmente usted como consultor dimension la infraestructura que consider necesaria dadas sus caractersticas y requerimientos. Sin embargo se dej de lado la evaluacin de los requerimientos de seguridad que se involucran en la construccin de la solucin. En esta segunda parte del caso se desarrollar esta temtica, desde el punto de vista de las necesidades de la infraestructura computacional, hasta parte de la arquitectura de la solucin. Problemtica: Como se observ en el caso anterior la principal tarea del sistema de correo es interactuar con sistemas y usuarios externos, entre estos servidores de intercambio de otras organizaciones (siendo estas abiertas o cerradas en trminos organizacionales, o si se prefiere pblicas o privadas), en general el sistema de correo tiene que interactuar con 4 agentes para sus funciones fundamentales. 1. Recepcin y envo de correo externo relacionados con el dominio @uniandes.edu.co, 2. Recepcin y envo de correo interno del dominio respectivo, 3. Recuperacin de correos y retribucin de los mismos a clientes web, 4. Recuperacin de correos y retribucin de los mismos a clientes de escritorio. Dado lo anterior es evidente que surgen diversos problemas de seguridad en cada una de las transacciones que entran y salen del sistema, en este orden de ideas es necesaria una evaluacin de la seguridad en las transacciones para mitigar vulnerabilidades y amenazas que configuran riesgos tales como: y y y y Repudio de transacciones. Espionaje de transacciones. Suplantacin de identidad en la realizacin de transacciones. Integridad de informacin dentro de las transacciones.

Su tarea en este caso es actuar como consultor para analizar, desde el punto de vista de la seguridad, las transacciones que pasan a travs de la infraestructura computacional que usted dise en la resolucin del Caso I. Para este fin usted necesitar tener el Caso I totalmente desarrollado, en especial el punto A del mismo y realizar las tareas que se presentan a continuacin.

Tareas: A. Anlisis y Entendimiento del Problema. 1. Dadas cada una de las transacciones caracterizadas en la primera parte del caso, y suponiendo que el sistema no tiene previsto ningn mecanismo de proteccin: Identifique las amenazas del sistema anterior. Identifique las vulnerabilidades del sistema anterior, teniendo en cuenta nicamente aspectos tcnicos (no organizacionales o de procesos). Identifique vulnerabilidades no slo en lo relacionado con la comunicacin sino tambin con el almacenamiento de los datos (cmo se almacenan, en dnde, cmo se cargan en memoria, entre otros). Tanto en el caso de las amenazas como de las vulnerabilidades tenga en cuenta solamente aspectos relacionados con: y y y y Repudio Espionaje Suplantacin de identidad Falta de integridad de la informacin

Explique clara y detalladamente sus respuestas 2. Modele un escenario de riesgo para cada tem del punto 1 para cada transaccin. El escenario debe tener los siguientes elementos: Fuente de Amenaza, Fuente de vulnerabilidad, Consolidacin del Riesgo, y Ambiente.

B. Propuesta de Soluciones. 3. Proponga mecanismos de mitigacin (vulnerabilidades o amenazas) con el fin de impedir la consolidacin del riesgo. Establezca en cada uno de los casos identificados en los puntos 1 y 2 mecanismo(os) especfico(os) y justifique (los mecanismos propuestos deben ser detallados). Tenga en cuenta aspectos relacionados con: - Eficacia - Costo - Eficiencia - Flexibilidad - Aspectos prcticos - Otros que considere conveniente considerar Evale si con el plan de mitigacin los riesgos se consolidan a pesar de la vulnerabilidad y amenaza que los conforman (si se mitigan explique cmo, retome los escenarios planteados en el punto anterior). 4. Analice el impacto que las soluciones planteadas agregan al sistema y la infraestructura en trminos de necesidades infraestructurales y transacciones (adicionales a las planteadas en el caso 1). Replantee el diagrama de infraestructura segn dichas necesidades (se necesitan mquinas adicionales para responder a requerimientos funcionales de su solucin?, es necesaria la introduccin de elementos de infraestructura adicionales para responder a atributos de calidad (tiempos de respuesta, consumo de recursos, entre otros) generados por su solucin?

C. Anlisis e Implementacin de Prototipo. 1. Su tarea consiste en construir un cliente de correo electrnico de escritorio (bajo la tecnologa JAVA SE) que sepa entenderse con un servidor de correo externo, en este caso usaremos Gmail (mail.google.com). Es pre-requisito que usted cuente con al menos dos cuentas de correo dentro de este proveedor. El cliente a construir deber, 1. Ser capaz de enviar mensajes mediante el protocolo SMTP, 2. Ser capaz de recuperar los mensajes al cliente dado su cuenta mediante el protocolo POP3/IMAP. Hay que tener en cuenta que la comunicacin con dicho sistema de correo usa SSL y su cliente debe ser construido para soportarlo. (Su solucin deber estar documentada con diagramas de clases y arquitectura, deber tener una interfaz de usuario GUI basada en Java Swing, las funcionalidades del sistema desarrollado debern ser distribuidas en entidades lgicas con bajo acoplamiento y alta cohesin) 2. Al cliente de correo realizado en el punto anterior se le van a agregar las siguientes funcionalidades: A pesar de que servidores como el de Gmail utilizan SSL, y por lo tanto tienen proteccin contra el espionaje, hay algunos servidores que no lo usan. Se va entonces a agregar al cliente de correo la posibilidad de encriptar los mensajes enviados y desencriptar los recibidos. Lo que debe hacer entonces es agregar al cliente de correo desarrollado en el punto 1. la posibilidad de encriptar/desencriptar los mensajes. (a este nivel se deber implementar un mecanismo de encripcin as este sea redundante al canal de conexin SSL) Para poder desarrollar el punto anterior debe primero definir los siguientes aspectos: - Qu tipo de encripcin conviene usar, la simtrica o la asimtrica? Justifique. - Qu mecanismo usar para que el emisor de un mensaje y el receptor puedan ponerse de acuerdo sobre la(s) llave(s) que se va(n) a usar para encriptar / desencriptar los mensajes? Justifique. Se desea que los mensajes enviados puedan ser firmados y que se puedan verificar las firmas de los mensajes recibidos. Agregue al cliente de correo desarrollado en los puntos 1. Y 2. La posibilidad de firmar y verificar los mensajes enviados. Para poder desarrollar el punto anterior debe primero definir los siguientes aspectos: - Qu mecanismo usar para que el emisor de un mensaje y el respectivo receptor puedan ponerse de acuerdo sobre las llaves que se van a usar para firmar y verificar las firmas? Justifique. Para autenticar al emisor de un mensaje se van a usar el mecanismo HMAC1. El emisor de un mensaje debe entonces generar el HMAC correspondiente y el receptor debe entonces hacer la verificacin correspondiente para autenticar al emisor. Para poder desarrollar el punto anterior debe primero definir los siguientes aspectos: Qu mecanismo usar para que el emisor de un mensaje y el receptor puedan ponerse de acuerdo sobre la llave que se va a usar para generar / verificar el HMAC?

Hash-Based Message Authentication Code

D. Pruebas 1. Realice un plan de pruebas para verificar el funcionamiento de su aplicacin a nivel funcional y no funcional (para este fin es recomendable seguir el siguiente estndar, simplifquelo y adptelo para su solucin IEEE 829 Standard for Software Test Documentation, recuerde, este estndar es una gua) 2. En una sesin adicional su sistema asegurado ser entregada a otra pareja del curso con el fin de que este intente vulnerarla. Referencias:

    

Web security, a step by step reference guide, Ed. Addison Wesley, 1998, Caps 2, 3, 4. Cryptography and network security, W. Stallings, Ed. Prentice Hall, 2003. Computer Networks 4ta Edicin. Andrew S. Tanenbaum. Prentice Hall 2003, Caps 7, 8. Hardening Linux, James Turnbull, 2005, captulo 8. Professional Windows Desktop and Server Hardening (Programmer to Programmer), Roger A. Grimes 2006, captulo 11.

Você também pode gostar