Seguridad en redes: TCP/IP, filtrado de tráfico y firewalls Alberto Castro Rojas EL64E Redes de Computadores [email protected] 1 Agenda ♦ Las redes locales y su conexión a distancias ♦ Dirección MAC y dirección IP ♦ Equipos de interconexión ♦ Los protocolos TCP/IP ♦ Filtrado del tráfico TCP/IP ♦ Firewalls 2 Redes de Computadores [email protected] Conjunto de protocolos TCP/IP ♦ Son desarrollados como parte del proyecto DARPA a mediados de la década del 70 ♦ Su objetivo fue la interconexión de redes con redes, de aquí nació el concepto “internetting” que más tarde fue INTERNET. ♦ Se crearon dos grupos de protocolos: – Control de Transmisión – Internet 3 Redes de Computadores [email protected] Conjunto de protocolos TCP/IP ♦ Su relación con el modelo ISO/OSI, es sólo a nivel de cuatro de las siete capas. Aplicación Presentación TELNET FTP SNMP SMTP DNS HTTP Sesión Transporte TCP UDP ICMP Red IP Enlace 802.3 802.5 Físico Ethernet FDDI Token Ring 4 Redes de Computadores [email protected] Encapsulando los datos Nivel de aplicación .................................................................. (SMTP, Telnet, FTP y otros) Nivel de transporte (TCP,UDP, ICMP) ............................................. Nivel de Internet (IP) ........................... Información EncabezadoInformación EncabezadoEncabezado Información Nivel de acceso a la red .......... EncabezadoEncabezado Encabezado Información (Ethernet, FDDI, ATM, etc) Enviar Recibir 5 Redes de Computadores [email protected] Capas del modelo Nivel de aplicación Aquí residen las apliaciones. Interactúa con uno o más protocolos de transporte para enviar o recibir datos Nivel de Transporte Posibilita la comunicación punto a punto desde dos programas. Regula el flujo de datos. El transporte puede ser confiable, es decir con respuesta del receptor, o no Coordina que los datos enviados desde un programa a otro, le llegue sólo al que se especificó. Para esto coloca identificadores a cada una de las aplicaciónes. Además realiza un checksum de los datos Nivel de Internet o red Controla la comunicación entre dos equipos, definiendo que rutas deben seguir los paquetes para alcanzar su destino. Encapsula y desencapsula los paquetes que van hacia el nivel inferior y el superior Nivel de enlace de red Envia al medio físico flujos de bits y recibe los que de esste nivel provienen. 6 Redes de Computadores [email protected] Características de TCP/IP ♦ Los datagramas contienen la información necesaria y suficiente para ser ruteados por Internet ♦ La conexión siempre es un fin en sí misma ♦ La inteligencia está en las puntas. Será labor de la aplicación el “pegar” los paquetes que conforman un archivo 7 Redes de Computadores [email protected] Enrutamiento de los datagramas Computador A1 Aplicación Transporte Internet Acceso a la Red Red A Computador B1 Compuerta de acceso R1 Compuesta de acceso R2 Internet Acceso a la Red Internet Acceso a la Red Internet Aplicación Transporte Internet Acceso a la Red Red B 8 Redes de Computadores [email protected] Equipos de interconexión de redes ♦ Switch. Se trata de un dispositivo de propósito especial, diseñado para resolver problemas de escasez de ancho de banda en la red ♦ Opera en la segunda capa del modelo OSI y reenvía los paquetes en base a la dirección MAC ♦ Segmenta la red en pequeños dominios de colisión 9 Redes de Computadores [email protected] Equipos de interconexión de redes ♦ Router: Es un dispositivo de propósito general, diseñado para segmentar la red, limitar el brodcast, proporcionar seguridad y control de redundancia entre dominios individuales ♦ Opera en la tercera capa del modelo OSI ♦ Tiene más facilidades de software, por lo que puede ser configurado como firewall 10 Redes de Computadores [email protected] ¿Cuándo se usan ? ♦ Si la idea es segmentar el dominio de colisiones en la red, se usa un switch ♦ Si además se desea segmentar la red en dominios individuales de brodcast, suministrar envío de paquetes entre redes y soportar rutas redundantes en la red, se usa un router 11 Redes de Computadores [email protected] ¿Cuándo se usan? Dominio Dominiode de Colisión Colisión Dominio Dominiode de Colisión Colisión Dominio Dominiode de Colisión Colisión Switch Switch Dominio Dominiode de Colisión Colisión Dominio Dominiode de Colisión Colisión Switch Switch Dominio Dominiode de Colisión Colisión Dominio Dominiode de Colisión Colisión Router Router Dominio Dominiode de Colisión Colisión 12 Redes de Computadores [email protected] Ruteo Básico ♦ Es el proceso a través del cual, dos computadores se comunican, privilegiando la mejor trayectoria de una red TCP/IP ♦ En el ruteo asumiremos que el problema de enviar el paquete dentro de la misma red, está resuelto. Lo que ahora se quiere es que el paquete viaje entre redes hasta llegar a la red de destino 13 Redes de Computadores [email protected] Principios de enrutamiento ♦ El computador inicial necesita saber cómo y cuando comunicarse con un Router ♦ El Router necesita saber cómo determinar la mejor trayectoria para llegar a una red remota ♦ El Router de la red destino, necesita saber como comunicarse con el computador final 14 Redes de Computadores [email protected] Tablas de rutas ♦ Cada router y cada host mantienen una tabla de rutas ♦ Un router está conectado directamente a una o más redes ♦ El algoritmo de ruteo que toda implementación IP debe realizar, se basa en una tabla de rutas 15 Redes de Computadores [email protected] Ejemplo de una tabla de ruta Red 146.83.4.0 Router 1 146.83.4.3 Red Default INTERNET 146.83.4.1 Router 2 146.83.4.2 Red 146.83.5.0 Tabla para router 1 Net 146.83.4.0 146.83.5.0 Default Gateway 146.83.4.3 146.83.4.2 146.83.4.1 Type DIR GW GW 16 Redes de Computadores [email protected] Algoritmo de ruteo básico RouteIP(dgram, table) { IPnet = getnet(dgram.destIP); Route = search(IPnet, table); if( Route.type == DIR ) sendphys(dgram, dgram.destIP); else if (Route != NOT_FOUND) sendphys(dgram, Route.gateway); else { Route = search(default, table); if( Route != NOT_FOUND ) sendphys(dgram, Route.gateway); else error(dgram, ´´Net Unreachable´´); } } Redes de Computadores 17 [email protected] ¿TCP/IP es seguro? ♦ Hemos visto que el paquete TCP/IP tiene una estructura definida que es conocida por cualquiera que así lo requiera ♦ En general un equipo que procese paquetes, podrá saber quién lo envía, hacia dónde va, con qué aplicación se comunica etc., y podría eventualmente, alterar el contenido del paquete, sin que se note 18 Redes de Computadores [email protected] Principales técnicas de ataque ♦ Engaño IP (Spoofing). Una máquina suplanta la identidad de otra ♦ Se usa para persuadir a un sistema de que acepte datos como si vinieran de la fuente original o bien para recibir datos que debería ir a la máquina suplantada ♦ Esta debilidad se debe a que los Routers sólo miran la dirección de destino del paquete 19 Redes de Computadores [email protected] Spoofing ♦ Cuando el paquete llega a destino, el receptor revisa la IP de origen. Si el atacante cambió su IP por una dirección legítima, ya esta lista la primera parte del engaño ♦ La segunda parte, consiste en incluir ordenes en la parte TCP del paquete. Estas ordenes pueden ser desde cambios simples, obtención de información, etc. 20 Redes de Computadores [email protected] Husmeando en la red (Sniffing) ♦ Una máquina intermedia entre receptor y transmisor, escucha los paquetes ♦ En redes de medio compartido como Ethernet, las tarjetas de red tienen un segmento de hardware encargado de acceder a todos los datos que viajan por el medio ♦ ¿Qué pasa si por la red viajan las password sin encriptación ? 21 Redes de Computadores [email protected] Segurizando la red ♦ Se pueden usar equipos que denieguen o permitan el acceso externo a la red corporativa ♦ Los filtros de paquetes y los firewall son los elementos más usados ♦ Se pueden usar por separado o combinados 22 Redes de Computadores [email protected] Routers de selección ♦ Se trata de routers que pueden filtrar los paquetes en base a criterios de selección ♦ Básicamente estos criterios son: – El tipo de protocolo – Dirección IP de origen – Servicio al cual se desea acceder ♦ Este tipo de routers, controla qué servicios están permitidos en un segmento de red 23 Redes de Computadores [email protected] Zonas de riesgo Internet > 2.500.000 hosts >30.000 redes ¿Cuántos hackers? Router de selección Red de la empresa 24 Redes de Computadores [email protected] Zonas de riesgo ♦ La zona de riesgo, incluye todas las redes o sus segmentos, dentro de la empresa que tienen acceso a una red externa y que son compatibles con TCP/IP ♦ Los routers de selección por sí solos, aunque bien configurados, no hacen cero el riesgo de ser vulnerados. ♦ La idea es definir y disminuir la zona de riesgo 25 Redes de Computadores [email protected] Ejemplo de filtración de paquetes Segmento de red N Segmento de red 4 (interno) Segmento de red 1 (externo) Segmento de red 2 (externo) Segmento de red 3 (externo) ♦ Mientras más conexiones al router existen, más compleja es su configuración como filtro de paquetes, por cuanto: – Son más difíciles de mantener. – Es fácil cometer errores en su configuración. – Produce retardos en la recepción y envío de los paquetes. Redes de Computadores 26 [email protected] Operación del filtro ♦ Las reglas del filtro de paquetes, se almacenan por cada puerto especificado ♦ Cuando el paquete llega al puerto, se analiza su encabezado, que casi siempre es el IP y en algunos casos el TCP o el UDP ♦ Las reglas del filtro, se almacenan en un orden específico y se aplican a cada paquete en forma secuencial 27 Redes de Computadores [email protected] Operación del filtro ♦ Si una regla bloquea la transmisión o recepción del paquete, éste no se acepta ♦ Si una regla acepta el paquete, pasa a la siguiente regla de filtro ♦ Aquello que no esté expresamente permitido, se prohibe 28 Redes de Computadores [email protected] Diagrama de flujo Almacenar reglas del filtro de paquetes Analizar campos IP, UDP, TCP de encabezados de paquetes Aplicar la regla del siguiente paquete No ¿Bloquea la transmisión la regla de paquetes? Si ¿Es ésta la última regla del paquete? Si Bloquear paquete Se acepta 29 Redes de Computadores [email protected] Diseño de filtros de paquetes Red 192.83.7.0 Red Externa Internet Router de selección Supongamos que se desea aceptar todo el correo electrónico que provenga desde la red externa menos el proveniente del host trauco.dcc.uchile.cl (192.83.7.11), tal vez porque desde este host se envían mensajes muy largos 30 Redes de Computadores [email protected] Diseño de filtros de paquetes ♦ Para lograr lo anterior, hay que definir las siguientes reglas: – No se confía en las conexiones del host 192.83.7.11 – Se desea que desde otros lugares, puedan llegar correos 31 Redes de Computadores [email protected] Arquitectura y teoría de los firewalls ♦ Los filtros de paquetes, son una forma eficaz de control del tráfico que entra y sale de la red ♦ La gran ventaja aquí es que al trabajar sobre las capas IP y TCP, no se deben hacer cambios a nivel de la aplicación ♦ ... Es también la gran desventaja, el número de reglas puede ser muy limitado, así que se requieren reglas adicionales 32 Redes de Computadores [email protected] Firewalls ♦ Surge el firewall como el instrumento principal para ejecutar la política de seguridad de la organización ♦ Trabaja en todas las capas del modelo ♦ Son complementarios a los filtros de paquetes 33 Redes de Computadores [email protected] Firewall e Internet ♦ Se instala entre la conexión de la red interna y su enlace a Internet ♦ Todo el tráfico que viene o sale a Internet, pasa por el firewall ♦ Su configuración, debe estar en concordancia con la política de seguridad definida ♦ Hoy en día, una red conectada a Internet sin un firewall es altamente riesgosa 34 Redes de Computadores [email protected] Qué puede hacer un firewall ♦ Ser una fuente de decisiones de seguridad. Permite concentrar las medidas de seguridad en un solo punto de la red ♦ Refuerza las políticas de seguridad. La mayoría de los servicios que los usuarios demandan de Internet, son inseguros. Por ejemplo, el usa de NFS desde fuera de la organización 35 Redes de Computadores [email protected] Qué puede hacer un firewall ♦ Almacenar su relación con Internet. Por ser cuello de botella, es factible registrar lo que ocurre entre la red protegida y la externa ♦ Limitar la exposición. Se puede usar un firewall interno, es decir, dentro de la misma organización 36 Redes de Computadores [email protected] Qué no puede hacer un firewall ♦ Proteger contra personas maliciosas internas a la red ♦ Proteger las conexiones que no pasan por él ♦ Proteger contra amenazas desconocidas. Pero es factible reconfigurarlo, ante la nueva situación ♦ Proteger contra virus? No olvidar la integración 37 Redes de Computadores [email protected] Tipos de Firewall: Host de Base Dual ♦ El término host de base múltiple, describe a un equipo que cuenta con más de una tarjeta de interfaz de red ♦ Por lo general, cada tarjeta se conecta a una red distinta ♦ Históricamente se usaron este tipo de host como gateway 38 Redes de Computadores [email protected] Host de Base Múltiple Función de enrutamiento opcional Tarjeta de red Tarjeta de red Red 1 Tarjeta de red Red 3 Red 2 39 Redes de Computadores [email protected] Host de base dual ♦ Este tipo de firewall, usa un host de base dual, es decir con sólo dos tarjetas ♦ Una de las tarjetas conecta el equipo con la red interna y la otra con la externa Firewall Internet Tarjeta Tarjeta Externa Interna 40 Redes de Computadores [email protected] Aislando la red ♦ Los servicios de Internet, como las news, e- mail y web, son esencialmente de almacenamiento y envío ♦ Si los servicios trabajan sobre un host de base dual, pueden configurarse para ser accesados desde otras redes ♦ El esquema utilizado es correr en el firewall un “agente emisor de aplicación” 41 Redes de Computadores [email protected] Aislando la red ♦ El software emisor recibe las peticiones externas y se las comunica al servidor de la aplicación interna ♦ Por ejemplo, si la petición externa es “ver una noticia”, el emisor encargado tomará la petición, la analizará y se la hará al servidor de news interno de la organización 42 Redes de Computadores [email protected] Firewall de base dual con emisor de noticias Emisor de NNTP Interfaz Interfaz de dered red Interfaz Interfaz de dered red Servidor de News INTERNET Servidor de News 43 Redes de Computadores [email protected] Cómo comprometer la seguridad de un firewall de base dual ♦ La mayor amenaza, es que un intruso obtenga acceso directo al firewall ♦ En este caso, el telnet directo al firewall no se permite y toda configuración, se hace directamente desde la consola ♦ Si es necesaria la configuración remota, hay que hacerla con protocolos que soporten layers de segurización 44 Redes de Computadores [email protected] Consideraciones de seguridad ♦ Eliminar las herramientas de programación, tales como: compiladores, likeadores, etc. ♦ Eliminar programas con permisos SUID y SGID ♦ Definición de cuotas por partición ♦ Eliminar las cuentas especiales y las innecesarias ♦ Eliminar los servicios de red innecesarios 45 Redes de Computadores [email protected] Firewall : Host de Bastión ♦ El concepto se mantiene. Se trata de un computador, pero esta vez con una sola tarjeta de red ♦ Un Router de selección o filtro de paquetes, se interpone entre la red externa y el bastión ♦ De esta forma se introduce un nivel adicional de seguridad al momento de tratar de penetrar la red 46 Redes de Computadores [email protected] Host de bastión: conexión INTERNET Firewall host de bastión Router de selección 47 Redes de Computadores [email protected] Consideraciones ♦ El router de selección, es la primera línea de defensa ♦ Debe estar configurado para enviarle los paquetes ya filtrados al firewall ♦ Todo tráfico que no pase las reglas impuestas en el router, se rechaza ♦ El firewall de bastión, utiliza funciones de nivel de aplicación para permitir o rechazar las solicitudes que vienen de la red externa 48 Redes de Computadores [email protected] A nivel de las capas Controles de acceso específico de aplicación Reglas de filtración de paquetes Aplicación Presentación Sesión Transporte Red Enlace Físico Red Enlace Físico Red Externa Router de Selección Red Interna Firewall de Bastión Red Interna 49 Redes de Computadores [email protected] Tipos de Firewall : Host de bastión con ambas interfaces de red configuradas ♦ Se usa un router de selección ♦ El firewall posee dos interfaces de red. Una de ellas se comunica con el router y la otra con la red interna ♦ El router de selección, aplica sus reglas de filtrado antes de enviar los paquetes al firewall ♦ Si un intruso desea llegar a la red interna, deberá enfrentar al router y luego el firewall 50 Redes de Computadores [email protected] Host de bastión con dos interfaces DMZ (Demilitarized Zone) Firewall host de bastión con dos interfaces de red INTERNET Router de selección 51 Redes de Computadores [email protected] Host de bastión con dos interfaces ♦ Se define una “Zona Desmilitarizada” (DMZ Demilitarized Zone), es decir, un pedazo de la red interna en la cual no hay computadores ♦ La DMZ es por lo general una token ring o una ethernet. Esto puede ser un problema, pues alguien puede “pinchar” la red y colocar un dispositivo que escuche los paquetes que viajan 52 Redes de Computadores [email protected] Tipos de Firewall : Dos hosts de bastión y dos DMZ ♦ Se definen tres zonas dentro la red interna: red exterior, red privada y red interior ♦ El router de selección y el host de bastión exterior son las dos interfaces en la red exterior ♦ La red privada proporciona un nuevo nivel de seguridad 53 Redes de Computadores [email protected] Dos hosts de bastión y dos DMZ INTERNET Red Externa DMZ Exterior Red Exterior Red Interior DMZ Interior Red Privada Red Interna 54 Redes de Computadores [email protected] Dos hosts de bastión y dos DMZ ♦ Este tipo de configuración, permite conectar computadores en dos zonas, con distintos grados de protección ♦ En la red privada, pueden estar los hosts menos delicados ♦ La configuración se puede usar para impedir ataques internos ♦ Se pueden colocar algunos hosts en la red exterior, si se desea dar algunos servicios 55 Redes de Computadores [email protected] Firewalls comerciales y gratis ♦ Lo importante son siempre los conceptos ♦ Se podría pensar que un firewall gratis es riesgoso, pero no es cierto! ♦ Los firewalls comerciales, implementan una gama mayor de mecanismos de seguridad ♦ Un firewall muy barato, se puede implementar bajo plataforma Linux 56 Redes de Computadores [email protected]