Universidad de Buenos Aires Facultad de Ciencias Exactas y Naturales Departamento de Computación Teoría de las Comunicaciones Práctica 6 Aplicaciones. Seguridad. Última revisión: 15 de Noviembre de 2011 DNS Ejercicio 1 Consultas DNS. Explicar brevemente qué se consulta y qué significa la respuesta: $ nslookup -q=cname www.anta.gov.ar Server: o200.prime.com.ar Address: 200.44.0.108 Non-authoritative answer: www.anta.gov.ar canonical name = heidi.anta.gov.ar Authoritative answers can be found from: anta.gov.ar nameserver = deisy.anta.gov.ar anta.gov.ar nameserver = samantha.anta.gov.ar deisy.anta.gov.ar internet address = 200.10.166.34 samantha.anta.gov.ar internet address = 200.10.166.31 $ nslookup -q=ptr 200.10.166.30 Server: o200.prime.com.ar Address: 200.44.0.108 30.166.10.200.in-addr.arpa name = heidi.anta.gov.ar 30.166.10.200.in-addr.arpa name = anta.gov.ar 166.10.200.in-addr.arpa nameserver = deisy.anta.gov.ar 166.10.200.in-addr.arpa nameserver = samantha.anta.gov.ar deisy.anta.gov.ar internet address = 200.10.166.34 samantha.anta.gov.ar internet address = 200.10.166.31 Ejercicio 2 Describir la búsqueda de la dirección IP de algún servidor de correo electrónico para el dominio dc.uba.ar. Ejercicio 3 La red de un banco está compuesta de un backbone que conecta a 15 sucursales distribuidas en distintas ciudades del país, donde la salida a Internet es sólo a través del backbone ubicado en Buenos Aires. Se quiere instalar el servicio de DNS para ser tolerantes a fallos y poder distribuir la carga de clientes de las peticiones de los clientes. ¿Cómo se puede lograr esto? Ejercicio 4 Se dice que DNS puede ser tolerante a fallos. ¿Cómo se implementa esto para una zona en particular? ¿Qué diferencia hay entre un servidor DNS “primario” y uno “secundario”? Ejercicio 5 Se tiene un servidor DNS que es primario para la zona dc.uba.ar y secundario para las zonas uba.ar y .ar ¿Se puede en ese servidor configurar todo lo necesario para las tres zonas, incluyendo la delegación? ¿Puede este servidor responder por información de otras zonas? Ejercicio 6 Se tienen dos servidores DNS para una zona en particular ubicados en distintos continentes. Uno es primario y el otro es secundario. El primario tuvo problemas con su disco duro y salió de servicio definitivamente. El secundario luego de transcurrido cierto tiempo dejó de responder requerimientos de DNS pero el servidor funciona bien (SO, hardware, configuración de DNS). ¿A qué se puede deber esto? Ejercicio 7 Indicar si las siguientes afirmaciones son verdaderas o falsas: 1. Mediante una consulta DNS se puede averiguar cuál es la dirección IPv4 del host zorzal.dc.uba.ar. 2. Mediante una consulta DNS se puede averiguar cuál es el nombre del host con dirección IPv4 200.10.166.35. 3. Mediante una consulta DNS se puede averiguar qué versión del protocolo IP está corriendo en el host zorzal.dc.uba.ar. 4. Mediante una consulta DNS se puede averiguar cuál es la dirección IPv4 del host cuya dirección MAC es la 00:07:E9:85:06:98. 5. Mediante una consulta DNS se puede averiguar cuál es el servidor de correo POP3 para el dominio inta.gov.ar. Ejercicio 8 Describir por qué DNS puede considerarse un sistema distribuido. Ejercicio 9 ¿Un servidor secundario de DNS siempre responde con la información de la zona del cual es autoritativo? Ejercicio 10 Un servidor DNS acepta consultas de parte de los clientes de un ISP. Estas consultas son recursivas. Para satisfacerlas, el servidor realiza consultas iterativas tratando de obtener la información de los usuarios. Una vez obtenida una respuesta de un servidor, la cachea por el tiempo indicado, de acuerdo con el estándar. Se realizan las siguientes consultas, todas de tipo A, en orden: www.microsoft.com www.ibm.com www.dc.uba.ar alice.ibm.com www.dm.uba.ar ¿A los servidores de qué zonas se les preguntará cuando se hagan los pedidos? ¿Qué tipos de respuestas darán? Indicar sólo si es un registro NS, A o ambos y el dato del último campo del mismo. Suponer que todas las respuestas existen, pasan al caché y no llegan a expirar, y que hay una zona por cada nivel separado por punto, excepto por el de más a la izquierda que es un host perteneciente a la zona inmediatamente superior. Suponer además que el caché empieza vacío en la primera consulta, excepto por los datos del dominio root. Ejercicio 11 Se tiene un servidor DNS que maneja esta zona exclusivamente: ernest.homedns.org 1w IN SOA ernest.homedns.org root.ernest.homedns.org ( 2005091900 ; serial 3h ; refresh 1h ; retry 1w ; expire 1h ) ; neg cache ernest.homedns.org IN NS leonov.ernest.homedns.org. gagarin IN A 192.168.0.1 leonov IN A 192.168.0.2 armstrong IN A 192.168.0.5 time IN CNAME leonov.ernest.homedns.org imap IN CNAME mail.google.com 1. ¿Cuáles son los servidores DNS de esta zona? Incluya nombre y dirección IP. 2. ¿Qué va a responder el servidor DNS que maneje esta zona si se le pregunta por el registro A = armstrong.ernest.homedns.org? 3. ¿Qué va a responder si se le pregunta por el registro A = time.ernest.homedns.org? ¿Cuál es la dirección IP del host? HTTP Ejercicio 12 Mencionar ventajas y desventajas de usar HTTP 1.0 versus HTTP 1.1. Ejercicio 13 Una empresa decide instalar un servidor Web. Se espera que se conecten hasta 5 clientes simultáneamente. 1. ¿Cuántas direcciones IP diferentes necesita el servidor? 2. ¿Cuántos puertos diferentes debe estar escuchando el servidor WEB? Ejercicio 14 Si un navegador de Internet usa HTTP/1.1 (persistente) para establecer conexiones y el usuario decide conectarse con un servidor HTTP que sólo usa HTTP/1.0 (no-persistente), ¿qué sucede? Ejercicio 15 Al visualizar el contenido de una página web se bajan archivos de los siguientes servidores: ● Server1: 3 archivos JPG y un HTML ● Server2: 2 archivos GIF ● Server3: 1 archivo WAV ¿Cuántas conexiones TCP se realizan si se utiliza HTTP 1.0 y HTTP 1.1? Ejercicio 16 Dos servidores Web atienden requerimientos de sus clientes, pero uno de ellos después de los pedidos del cliente cierra la conexión TCP con RST y el otro en forma normal, con FIN. ¿Qué ventaja trae cada método? ¿Cuál cree que es mejor? Ejercicio 17 HTTP tiene dos comandos denominados GET y HEAD: GET trae el objeto, los datos del objeto y el resultado de la operación; HEAD solamente trae los datos del objeto y el resultado de la operación. ¿Para qué cree que puede ser útil HEAD? Ejercicio 18 Explicar las diferencias entre estas dos secuencias de comandos realizadas desde un equipo con acceso a Internet: telnet www.inta.gov.ar 80 GET / HTTP/1.1 Host: www.inta.gov.ar telnet www.inta.gov.ar 80 GET / HTTP/1.1 Host: www.mercosurt.org.ar Ejercicio 19 Un servidor Web cuya dirección IP es 168.83.72.5 levanta el servicio en el port TCP/80. En una PC cuya dirección es 157.92.27.33 alguien abre dos ventanas de un navegador y en cada una de ellas abre simultáneamente una página distinta del mismo servidor. ¿Es esto posible? ¿Cómo se distinguen los paquetes que son para una ventana de los que son para la otra? Ejercicio 20 1. ¿Enumere algunos factores que afectan el tiempo de respuesta de HTTP? 2. ¿Es posible tener dos servidores HTTP en una misma máquina? 3. Suponga la siguiente página escrita en HTML que reside en el servidor www.fcen.uba.ar: <html><head><title>Facultad de Ciencias Exactas y Naturales</title></head> <body bgcolor="#90c8ff" vlink="#0000aa"> <center><font face="arial" size="4">Facultad de Ciencias Exactas<br> y Naturales - FCEyN</font><br> <font face="arial" size="2">Universidad de Buenos Aires <br> Republica Argentina</font><br> <img alt="FCEyN - Pabellon II" src="archivos/e2-400.jpg" height="129" width="400"></center> <br> Facultad de Ciencias Exactas y Naturales <br><br> </body></html> ¿Cuántas conexiones TCP utiliza el browser en total para transferir la totalidad de la información? 4. ¿Cómo indica el servidor que un objeto se transmitió completamente? Ejercicio 21 Se tiene el siguiente pedido HTTP al servidor del DC: HEAD / HTTP/1.1 Host: www.dc.uba.ar Connection: Close ... ¿Qué se espera que vuelva en el cuerpo de la respuesta? SMTP, POP, IMAP Ejercicio 22 Interpretar detalladamente la siguiente secuencia de comandos realizadas desde un equipo con acceso a Internet: $ telnet pop3.inta.gov 110 Trying 200.11.141.35... Connected to pop3.inta.gov Escape character is '^]'. +OK POP3 pop3.inta.gov v2001.78 server ready user prueba +OK User name accepted, password please pass xxxxxxx +OK Mailbox open, 7 messages list +OK Mailbox scan listing follows 1 14391 2 3884 3 1079 4 1257 5 1085 6 1086 7 6634 . quit +OK Sayonara Connection closed by foreign host. Ejercicio 23 Explicar al menos dos diferencias entre POP e IMAP para acceder al correo electrónico. Ejercicio 24 En los sistemas de correo electrónico todas las transferencias de correo se realizan usando SMTP, con la excepción de la entrega al usuario final. ¿Por qué piensa que esto es así? ¿Cuáles son las falencias de SMTP que hacen que no pueda cumplir esta función? Ejercicio 25 La incorporación al correo electrónico del formato HTML hizo posible enviar texto con formato e imágenes embebidas, algo imposible con anterioridad. Explicar cómo se puede lograr el envío y procesamiento de un nuevo formato de archivo (como la transición de texto a HTML) sin que esto implique un cambio en todos los servidores de correo electrónico. Ejercicio 26 En una cuenta de e-mail accesible por POP3 se entregaron varios mensajes, entre ellos uno de 200 MB. El dueño de esta casilla desea recibir su correo y no puede, porque este mensaje de 200 MB tarda demasiado tiempo en bajar. Para normalizar la situación, el usuario va a intentar borrar este mensaje sin tener que bajarlo, conectándose directamente al puerto de POP3. Indicar la secuencia de comandos completa a ingresar para localizar y borrar el mensaje. Explicar brevemente qué es lo que se espera que devuelvan o realicen los comandos ingresados. FTP Ejercicio 27 Se tiene una conexión FTP establecida entre el host A (cliente) y el host B (servidor). A quiere transferir un archivo a B pero no puede. Indicar dos posibles problemas. Ejercicio 28 En una conexión FTP desde la PC A al servidor B se listan dos directorios (para confirmar la ubicación de los archivos) y se bajan tres archivos. ¿Cuántas conexiones TCP se realizan por esta conexión FTP? Seguridad Ejercicio 29 Una compañía desea publicar en Internet un sistema de comercio electrónico. El sistema consta de un servidor Web que publica un portal, un servidor de transacciones seguras (HTTPS), un servidor de mail (SMTP) y un servidor de base de datos, en el cual se validarán y registrarán las transacciones. Se desea proteger el sistema mediante un firewall del tipo “Stateful Inspection” (Cisco ASA, CheckPoint FireWall-1, Juniper NetScreen, etc.). Se pide diseñar una propuesta de organización de red utilizando el concepto de DeMilitarized Zone (DMZ), indicando la ubicación de cada servidor y las políticas y reglas básicas de configuración del firewall. Ejercicio 30 Acerca de certificados digitales: 1. ¿Qué técnicas de cifrado se utilizan para firmar un certificado digital? 2. ¿Qué protocolos y algoritmos existen para las técnicas mencionadas en el ítem anterior? Ejercicio 31 El establecimiento de una conexión TCP se realiza mediante un intercambio de 3 segmentos, denominado 3-way handshake. Un ataque de seguridad muy conocido del tipo Denial of Service (denegación de servicio) consiste en abrir múltiples conexiones TCP a un servidor pero sin terminar de establecerlas. Es decir, el atacante envía un mensaje para establecer la conexión (flag S), luego la víctima responde con un mensaje con flags S y A haciendo ACK del primer mensaje, pero el atacante nunca le envía el tercer mensaje. Indique cómo el host víctima se puede defender solo, sin ayuda de ningún otro dispositivo en la red. Explique el mecanismo de defensa. Ejercicio 32 HTTP es un protocolo “orientado a texto”, con lo cual archivos binarios, gráficos y sonidos, primero deben “convertirse” a texto (ASCII o algo parecido) antes de pasarlo por la red (uuencode, base64, etc.). Usando un capturador de paquetes de red, viendo paquetes que llevan HTTPS, los datos no se ven como caracteres de texto sino más bien binario. ¿Esto significa que HTTPS no hace “conversión” a texto? Ejercicio 33 En una red, todos los hosts envían sus paquetes IP con TTL=255 por razones de seguridad. Suponiendo que uno de los hosts de esa red recibe un paquete con dirección origen en esa misma red, pero con TTL<255, ¿Qué puede deducirse desde el punto de vista de la seguridad? Ejercicio 34 Se tienen: C=clave pública, D=clave privada. Describir mediante fórmulas matemáticas los pasos que componen el proceso de autenticación usando las claves mencionadas. Ejercicio 35 Los mecanismos de hash (SHA, MD5) permiten generar un digesto de un dato y, por construcción, no son inversibles. Indicar dos usos de una función de hash en términos de seguridad en redes. Ejercicio 36 Haciendo un análisis de comportamiento de un servidor web, se encontró este tipo de paquete capturado muchas veces: IP: origen 78.45.3.1, destino 129.4.6.7 TCP: port origen 1049, port destino 80, Seq=10445098, ACK=34345690, flags: ACK, Advertised Window: 0 HTTP: GET /imagen.gif donde el archivo citado (imagen.gif) pesa aproximadamente 2MB. Por cómo trabaja este servidor, se empezó a llenar la memoria RAM con múltiples partes de este archivo en buffers asignados a los threads del servidor web. ¿Sin modificar el accionar del servidor web, cómo cree que se puede solucionar este problema? Ejercicio 37 La agencia de recontraespionaje CONTROL desea implementar un sistema criptográfico que impida a los agentes de KAOS interceptar las comunicaciones que establecen los agentes entre ellos. Explicar una posible implementación usando los conceptos de clave pública y message digest de manera que se garantice confidencialidad y no repudio. Ejercicio 38 La siguiente secuencia de eventos ilustra el funcionamiento de la firma digital: ● Roberto encripta un mensaje con su clave privada y se lo envía a Alicia. ● Alicia recibe un mensaje de Roberto y obtiene la clave pública de Roberto de un repositorio seguro. ● Alicia desencripta el mensaje de Roberto con la clave pública de Roberto. ● Alicia está segura que Roberto mandó el mensaje. Ahora, introduzcamos dos condiciones: ● El repositorio de claves no verifica si el nombre asociado a una clave pública es correcto. ● Gertrudis puede leer, borrar, insertar y modificar mensajes en la red. Pero, si un mensaje está encriptado, Gertrudis no lo entiende al interceptarlo. Y si está firmado, una modificación será detectada por Alicia. Basándose en estas suposiciones, pruebe que Gertrudis puede mandar un mensaje falso a Alicia haciéndole creer que es Roberto. Ejercicio 39 Una PC se quiere conectar a un servidor web en Internet. Para proteger al servidor web, este se ubica detrás de un firewall stateless del acceso a Internet. Escriba un juego de reglas para permitir conexiones de Internet al port tcp/80 del servidor, impidiendo que el servidor pueda establecer conexiones (pero que pueda responder a las que se establecen contra él). Ejercicio 40 Una PC se conecta a Internet protegida por un filtro stateless que impide que el primer paquete de una conexión TCP pase, lo que bloquea conexiones hacia ella desde afuera. La PC usa syncookies y por error se usa la función identidad en lugar de una función segura para la generación del número de secuencia propio. Muestre cómo haría para pasar el firewall y conectarse a un servicio que tiene un puerto abierto en la PC. Explique por qué funciona la técnica usada.