TCP, UDP y DNS Angélica Flórez Abril, MSc. Universidad Pontificia Bolivariana Bucaramanga, Colombia Octubre, 2010 Angélica FA- All rights reserved Modelo OSI Y TCP/IP Capa 7 Aplicación Capa 6 Presentación Capa 5 Sesión Capa 5 Aplicación Capa 4 Transporte Capa 4 Transporte Capa 3 Red Capa 3 Internet Capa 2 Enlace de datos Capa 2 Acceso a la Red Capa 1 Física Capa 1 Física FUNCIONES: Aplicación Transporte Internet Internet Acceso a la Red Física Aplicación WAN Transporte Internet Acceso a la Red Física Internet Internet Comunicación lógica: comunicación entre procesos en los hosts. Encapsulamiento: segmentos Funciones de la capa de Transporte Se encarga de que los datos se envíen de forma fiable. También se denomina capa extremo-a-extremo. Direccionamiento en punto de servicio Puerto con el cual se encuentra asociado el mensaje que se envía. Una conexión lógica conecta un par de puertos. Capa 5 Aplicación Capa 4 Transporte Capa 3 Internet Capa 2 Acceso a la Red Capa 1 Física Segmentación y reensamblado Un mensaje se divide en segmentos. Cada segmento tiene un número de secuencia. Control de conexión Conexión: asociación lógica de carácter temporal entre dos entidades. TCP: Conexión fiable. UDP: No garantiza la entrega, el orden, ni la protección ante duplicados. Encapsulamiento TCP/IP Creación de los datos a transmitir Aplicación Transporte Internet Acceso a la red Física Datos Encapsulamiento TCP/IP Aplicación Transporte Internet Acceso a la red Física Datos TCP Datos Empaqueta los datos, creando un Segmento encabezado TCP para formar el segmento. Encapsulamiento TCP/IP Aplicación Datos Transporte Internet Acceso a la red Física IP TCP Datos TCP Datos Segmento Adiciona la dirección de la Paquete capa de red destino, formando el paquete . Encapsulamiento TCP/IP Aplicación Datos Transporte Internet Acceso a la red Física H TCP Datos Segmento IP TCP Datos Paquete IP TCP Datos T Trama Adiciona la dirección MAC destino, forma la trama (frame). Encapsulamiento TCP/IP Aplicación Datos Transporte Internet Acceso a la red Física H TCP Datos Segmento IP TCP Datos Paquete IP TCP Datos Envío de bits T Trama Transmisión de la trama por el medio Procesos Cliente y Servidor Red Servidor Web Red del usuario INTERNET Proceso Proceso API – Application Programming Interface Socket TCP/UDP Socket Sistema Operativo TCP/UDP Adaptado de: Kurose. Computer Networking. A top-down approach. 2008. p.87 TCP – Transmission Control Protocol • Conexión fiable para transferir los datos entre dos hosts. – Números de Secuencia – ACK • Conexión Asociación lógica de carácter temporal entre dos entidades. • Cabecera Segmento TCP contiene el puerto origen y destino. • Conexión lógica dos puertos. – – – – – Open Close Send Receive Status TCP Segment Imagen tomada de: http://www.juniper.net/techpubs/ UDP – User Datagram Protocol • Orientado a transacciones • No garantiza: – La entrega – La conservación del orden secuencial – Protección frente a duplicados. • Ej: DNS – Domain Name System Imagen tomada de: http://learn-networking.com/featured/how-the-transport-layer-works UDP Format UDP pseudo header UDP header Imagen tomada de: http://learn-networking.com/featured/how-the-transport-layer-works Protocolos TCP/IP SMTP TELNET FTP DNS SNMP TCP IP NFS RPC UDP ICMP OSPF ARP ARPANET LAN WAN RARP … TFTP Modelo de Referencia OSI Capa 7 Protocolo Aplicación Aplicación Capa 7 Presentación Capa 6 Interfaz Capa 6 Presentación Capa 5 Sesión Sesión Capa 5 Capa 4 Transporte Transporte Capa 4 Capa 3 Red Red Capa 3 Capa 2 Enlace de datos Enlace de datos Capa 2 Capa 1 Física Física Capa 1 DNS – Domain Name System RFC: 1034 y 1035 DNS UDP Port: 53 BD distribuida Jerarquía de servidores DNS Protocolo para la consulta en la BD distribuida Empleado por otras aplicaciones para traducir direcciones de host a direcciones IP. DNS – Domain Name System PROPIEDADES Administración Distribuida Rendimiento Consultas resueltas en un tiempo adecuado Confiabilidad Al ser una pieza clave en la red, debe ser muy confiable. Uso Utilización de diversas formas de consulta. Ejemplo: Nombres de host (URL), inverso (desde una IP), alias, entre otros. Funcionamiento del DNS (1) URL: www.upb.edu.co/bucaramanga Hosts File INTERNET 200.15.30.21 Red del usuario Red Servidor Web Caché Servidor DNS Zonas Autorit. Zonas Autorit. Funcionamiento del DNS (2) Dirección host: www.upb.edu.co Hosts File DNS Query INTERNET 200.15.30.21 Red del usuario Red Servidor Web Caché Servidor DNS Zonas Autorit. Zonas Autorit. Funcionamiento del DNS (3) Hosts File INTERNET 200.15.30.21 DNS Reply Red del usuario Caché Servidor DNS Red Servidor Web Zonas Autorit. Zonas Autorit. Consulta la BD Acceso al Servidor Web (1) URL: www.upb.edu.co/bucaramanga IP: 200.15.30.21 Hosts File HTTP Request INTERNET 200.15.30.21 Red del usuario Red Servidor Web Caché Servidor DNS Zonas Autorit. Zonas Autorit. Acceso al Servidor Web (2) Responde la solicitud Hosts File HTTP Response INTERNET 200.15.30.21 Red del usuario Red Servidor Web Caché Servidor DNS Zonas Autorit. Zonas Autorit. DNS – Domain Name System BD JERÁRQUICA DNS – Domain Name System CONCEPTOS Zonas Cada dominio tiene una zona de DNS. Autoridad A cada zona le corresponde una región de autoridad. Se define la administración de la zona. Respuestas autoritativas. DNS – Domain Name System CONCEPTOS DNS Primario Servidor Autoritativo de cada zona DNS Secundario Se considera como contingencia o redundancia También actúa como servidor autoritativo Transferencia de Zonas Posibilidad de tener la misma información en varios servidores DNS Usa el protocolo de transferencia de zonas (AXFR) DNS – Domain Name System REGISTROS RR (Resource Records): Name, Value, Type, TTL Type A: Asocia un nombre a una dirección IP Ej: mail.upb.edu.co,200.15.30.10,A NS: Identifica el nombre del DNS autoritativo Ej: dns.upb.edu.co,NS CNAME: Alias que se le asigna a una máquina Ej: mariposa, mail.upb.edu.co, CNAME MX: Define el alias para el Mail Server Ej: mail.upb.edu.co,MX PTR: Resolución inversa Ej: 10.30.15.200.in-addr.arpa,mail.upb.edu.co TTL: Time to Live. Define cuando un recurso puede ser eliminado del caché. DNS Recursivo Imagen tomada de: http://technet.microsoft.com/en-us/library/cc723704.aspx DNS Message Imagen tomada de: http://arantxa.ii.uam.es/~rc2lab/pr2008/prac4/index.html Type and Query Type Name Value Description Type Query Type A 1 IP Address X X NS 2 Name Server X X CNAME 5 Cannonical Name X X HINFO 13 Host Info X X MX 15 Mail exchange record X X AXFR 252 Request for zone transfer X * Or any 255 Request for all records X Tomado de: TCP/IP Illustrated. DNS – Domain Name System ATAQUES Y VULNERABILIDADES o Posibles vectores de ataques Ataques con amplificación Aseguramiento de las transferencias de zona Certificación de autoridad Caché poisoning o Vulnerabilidades de la aplicación que implementa el servicio Ej: BIND9 DNS – Domain Name System VULNERABILIDADES Archivos de zona corruptos Servidor DNS Primario Archivos de zona Master Man in the middle Caching Forwarding Spoofing de las actualizaciones Actualizaciones dinámicas Resolver Cliente Slaves Caché Poisoning Servidor DNS Secundario DNS Amplification Spoofing durante los AXFR Cambios en datos secundarios Referenciado de: AGESIC. Seguridad en DNS y DNSSEC. DNS – Domain Name System DNS AMPLIFICATION Servidor DNS Con recursión Src: IP Víctima Dst: IP DNS Src: IP DNS Dst: IP Víctima Caching Forwarding Víctima DNS Amplification Atacante El atacante envía varias peticiones con una dirección IP falsa El DNS permite recursión El DNS envía la respuesta a la víctima El DNS refleja el ataque Producen DoS de la víctima Solución: Restringir la recursión a una lista de máquinas confiables. OJO: La recursión no puede ser eliminada, puede ser controlada. DNS – Domain Name System CACHÉ POISONING Servidor DNS con recursión Caché erróneo 2 Caching Forwarding 1 4 Víctima DNS Spoofing 5 Web Server suplantado Web Server 3 Objetivos: DoS o enmascarar una entidad de confianza envenenando los cachés del DNS. Cuando el DNS no tiene la respuesta consulte en el caché. El servidor DNS puede pasar la consulta a otro servidor DNS. Sí el servidor consultado tiene información incorrecta, se almacena ésta en el DNS que realiza la consulta. Comúnmente conocido como DNS Spoofing. Ejemplo: En julio de 1997, Eugene Kashpureff dirigió el tráfico hacia InterNIC a AlterNIC (página suplantada). Solución: Validaciones fuertes. OJO: Las aplicaciones de DNS actualizadas hacen el ataque más difícil, pero no imposible. DNS – Domain Name System SEGURIDAD EN DNS o DNSSEC: Domain Name System Security Extensions Protege el DNS de inyección de datos falsificados. Utilización de firmas digitales Valida quién origina la respuesta (autenticidad) Integridad y autenticidad de los datos que se transfieren en el servicio DNS. OJO: La información no es cifrada por DNSSEC, luego no provee confidencialidad o alta disponibilidad. Posible utilización de IPSEC (tiene infraestructura de distribución de claves públicas) DNS – Domain Name System DNSSEC en una Zona Firma los RRSets utilizando la clave privada de cada zona Publicar las firmas para cada RRSets en el archivo de la zona Cadena de Confianza Publicar la clave pública de la zona en el archivo de zona DNS – Domain Name System DNSSEC en el Cliente Verificar la firma que contiene las respuestas DNS Cadena de Confianza DNS – Domain Name System SEGURIDAD EN DNS o RRSets: Nombre Prop. TTL www.mired.com. 7200 www.mired.com. 7200 www.mired.com. 7200 Clase IN IN IN Tipo RDATA A 172.16.2.3 A 172.17.1.4 A 172.18.3.5 DNS – Domain Name System SEGURIDAD EN DNS o Nuevos RR: DNSKEY: clave pública con la que se firman las zonas RRSIG: Hash cifrado del RRSet (con la clave pública de la zona) NSEC: Respuesta cuando el nombre requerido o el RR no existan en un archivo de zona. DS: Hash de la clave pública de la zona hija, firmada por la clave privada del padre. (Redes o cadenas de confianza). DNS – Domain Name System SEGURIDAD EN DNS Bit clave de zona: 7 Activado Protocolo: 3 (siempre) o Ejemplo DNSKEY: mired.com. 86400 IN DNSKEY 256 3 5 ( AQPSKmynfzW4kyBv015MUG2DeIQ3Cbl+ BBZH4b/0PY1kxkmvHjcZc8nokfzj31GajIQK Y+5CptLr3buXA10hWqTkF7H6RfoRqXQeog mMHfpftfMv1LyBUgia7za6ZEzOJBOztyvhjL7 42iU/TpPSEDhm2SNKLijfUppn1UaNvv4w== ) Clave pública Algoritmo: RSA/SHA1 Referencias 1. Kurose, James. Computer and Networking. 5th Ed. Pearson Education. 2009. 2. Stallings, William. Comunicaciones y Redes de Computadores. 7ª. Edición. Editorial Prentice Hall. 2004. 3. Tanenbaum, Andrew S. Redes de Computadoras. 4ª. Edición. Editorial Prentice Hall. 2004. 4. Forouzan, Behrouz A. Transmisión de datos y redes de comunicaciones. 2ª. Edicición. Editorial MacGrawHill. 2002. 5. López, D. DNS Secutiry Extensions. Consultado de http://www.slidefinder.net/d/dns_security_extensions_dnssec_aplicaciones/7826518. • R. Arends, R. Austein, M. Larson, D. Massey, S. Rose, “DNS Security Introduction and Requirements”, draft-ietf-dnsext-dnssec-intro-08. • R. Arends, R. Austein, M. Larson, D. Massey, S. Rose, “Resource Records for the DNS Security Extensions”, draft-ietf-dnsext-dnssec-records-06. • R. Arends, R. Austein, M. Larson, D. Massey, S. Rose, “Protocol Modifications for the DNS Security Extensions”, draft-ietf-dnsext-dnssec-protocol-04. • Agesic: Agencia de Gobierno Electrónico y Sociedad de la Información. Seguridad DNS y DNSSEC. Ciclo de charlas 2010. TCP, UPD Y DNS Angélica Flórez Abril, MSc. Universidad Pontificia Bolivariana Bucaramanga, Colombia Octubre, 2010 MUCHAS GRACIAS!!!! Angélica FA- All rights reserved