Apuntes Seguridad
Apuntes Seguridad
Apuntes Seguridad
Información
UNED
Curso 2019-2020
1. DESCRIPCIÓN DEL PROBLEMA DE LA SEGURIDAD EN
LAS COMUNICACONES. TIPOS DE ATAQUES
1.1 INTRODUCCIÓN
Nuestro mundo está repleto de sistemas, compuestos por máquinas y por programas.
Muchos de estos sistemas forman parte de redes, privadas o corporativas, públicas, grandes o pequeñas,
interconectadas unas con otras y comunicándose entre sí mediante otro gran sistema hardware, gestionado,
a su vez, por un conjunto de aplicaciones con distintos objetivos, a los que se denominan protocolos.
Los sistemas son complejos y capaces de interactuar.
Otra propiedad curiosa y desagradable de los sistemas es que muchos de ellos hacen cosas no pensadas, ni
diseñadas por sus creadores y usuarios. Se puede decir que los sistemas tienen propiedades no buscadas.
Los sistemas, especialmente los ordenadores de todas las clases y con cualquier tipo de software, tienen
estas propiedades no buscadas (bugs).
Un bug es una clase de fallo del sistema muy típico de la informática; es simplemente, una propiedad no
deseada de un sistema, que no se debe confundir con que el sistema no funcione correctamente.
Ayudará bastante pensar, desde el principio que, todos sus componentes hardware, software, etc., la
seguridad es un sistema dentro de sistemas mayores, que más que un producto o conjunto de ellos, más
que una o varias tecnologías, la seguridad es un proceso, que hace intervenir todas las tecnologías, todos los
productos y especialmente, el sentido común de los seres humanos que la gestionan, ese mismo sentido
común que es el menos común de los sentidos.
Debe tener en cuenta la prevención, la detección y la respuesta al problema concreto.
Con todo esto en mente, se tratará de identificar cuáles son las preguntas que uno debe hacerse para definir
mejor el sistema que uno quiere asegurar, explorando alguna solución aparentemente perfecta y llegando a
una solución imperfecta pero realista, basada en lo que se llamará política de seguridad del sistema,
herramienta básica para la seguridad.
B. ¿Contra quién se quiere proteger? O ¿en quién se puede confiar y en quién no?, ¿Quiénes son los posibles
atacantes?
En otros libros, refiriéndose a esta idea, se desarrolla lo que se llama el modelo de confianza.
Con este análisis se debe decidir que empleados tienen acceso a que activos y por qué, que tipo de
acceso se va a dar a cada persona de cada organización que colabore con la empresa, que tipo de acceso
a ordenadores, redes y datos. Asimismo, se deberá pensar en qué tipo de acceso van a tener los posibles
clientes de la organización.
Además, se debe meditar lo más posible sobre quién y por qué querría atacar a la organización.
Los tipos de atacantes más habituales son:
C. ¿Cómo se quiere proteger? O ¿qué tecnologías, mecanismos, sistemas concretos, procesos se van a utilizar
para protegerlo?
Para contestar bien a esta pregunta se tiene que conocer dos temas complejos:
1. Los distintos tipos de ataques posibles:
Ataques para obtener información.
Ataques de acceso no autorizado.
Ataques con revelación de información.
Ataques de denegación de servicio.
2. Las distintas defensas posibles:
Esquemas de seguridad de sistemas operativos.
Sistemas de identificación o autenticación seguros.
Sistemas de cortafuegos (o firewalls).
Sistemas criptográficos.
Sistemas antivirus.
Sistemas de análisis de vulnerabilidades.
Sistemas de detección de intrusiones.
Finalmente, se debería tratar de condensar todo este conocimiento en un análisis de riesgo que tendría
4 puntos clave:
1. Valorar los activos.
2. Entender todas las posibles amenazas.
3. Monitorizar y conocer todas las debilidades y vulnerabilidades del sistema.
4. Tratar de poner en marcha todas las medidas posibles para disminuir la probabilidad de tener
pérdidas.
En este sentido es en el que se habla de una aproximación realista, en la cual se tienen en cuenta todos los
factores citados en el apartado anterior, pero también el de no gastarse todo el presupuesto de la
organización y sus recursos.
En el marco de esta aproximación se define lo que se denomina política de seguridad:
o Una serie de sentencias formales (normas) que deben cumplir todas las personas que tengan acceso
a cualquier información y/o tecnología de una organización.
Una buena política de seguridad debe cumplir una serie de normas generales, una vez más, de sentido
común:
1. Debe poderse implantar.
2. Debe entenderse.
3. Debe cumplirse.
4. Debe definir responsabilidades.
5. Debe permitir que se siga realizándose el trabajo normal.
6. Debe ser exhaustiva.
7. Debe incluir mecanismos de respuesta.
8. Debe tener mecanismos de actualización.
2.1 INTRODUCCIÓN
Todas las redes están compuestas por una serie de dispositivos físicos, máquinas, que tienen una mayor o
menor capacidad de control mediante programación software.
Es radicalmente importante considerar sus posibles inseguridades.
Estas máquinas además, se comunican entre sí utilizando uno o varios medios de transmisión,
habitualmente cables de una tecnología determinada, unos más susceptibles que otros a determinados
problemas de seguridad.
Además, cada vez son más las redes que, enteramente o en parte, se comunican mediante sistemas
inalámbricos, que exhiben sus problemas particulares desde el punto de vista de la seguridad.
Tanto los medios de transmisión como las distintas máquinas son susceptibles de ataques contra su
seguridad, desde dos puntos de vista:
o Ataques físicos:
Los ataques físicos son relativamente fáciles de evitar, disponiendo de una buena política de
seguridad física, que evite el acceso físico a tales sistemas por parte de personal no
autorizado.
o Ataques lógicos:
Los ataque lógicos, hay que entender cada una de las responsabilidades de los elementos
hardwares típicos de una red y cada una de sus posibles inseguridades, para considerarlas de
cara a la política de seguridad.
Así pues primero hay que identificar los elementos que se tienen que considerar:
o Canales de comunicación y cableados típicos.
o Repetidores.
o Hubs o concentradores.
o Conmutadores.
o Encaminadores.
o Máquinas de usuarios (especialmente servidores).
Los conmutadores :
o Comparados con los anteriores son muy inteligentes.
o Implementan hasta el nivel 2 de OSI aunque existen también los llamados conmutadores de nivel 3,
cuya funcionalidad coincide con la de los Encaminadores (routers).
o Esto quiere decir que en sus funciones básicas, son capaces de:
Aprender las direcciones MAC de cada nodo que exista por cada uno de sus puertos.
Crear una tabla de direcciones y gestionar el tráfico con respecto a ella. En concreto un
mensaje que vaya a una estación concreta, viajará por el cable que una el conmutador y la
citada estación, evitando así ataques con sniffers.
o Por último hay que tener en cuenta los ataques de denegación de servicios (DOS), es decir, se puede
hacer caer repetidamente, un conmutador y como consecuencia, dejarlo fuera de servicio, con todo
el potencial de caída de red correspondiente, desde una situación remota, sin más que conocer la
versión del conmutador, su dirección IP y un poco de suerte.
Al igual que antes, las solucione a estos problemas suelen ser claras, pero no fácilmente implementables.
3.1 INTRODUCCIÓN
Lo que se suele llamar seguridad del software incluye aspectos tan diversos como el control del acceso, la
gestión de cuentas y de privilegios de usuario, la protección de ficheros, la protección frente a virus, el
diseño seguro del software y la seguridad de las bases de datos.
Para poder hablar de control de acceso se basa en un sujeto (usuario, proceso informático, ...), que tiene
acceso a un objeto (fichero, proceso informático, registro de una base de datos, impresora, zona de
memoria del sistema...).
Se puede definir además, el control de acceso de 2 maneras distintas:
o ¿Qué puede hacer cada uno de los diferentes sujetos?
o ¿Qué puede hacerse sobre los diferentes objetos?
El acceso nunca es del tipo “todo o nada” (read, write, execute, ...).
Se ha de tener en cuenta la modularidad del software de muchas de las aplicaciones, que complica, más aún
la búsqueda de seguridad en ellas.
Por otro lado, se suele definir cualquier protocolo (incluido TCP/IP) como:
o Un conjunto de mensajes de comunicaciones entre dos entidades, que suelen ser proceso en
diferentes sistemas.
o Una serie de normas para el intercambio de esos mensajes.
Esto no es más que otro tipo de aplicaciones, eso si, con una responsabilidad especial en todas las redes,
pues son los que transmiten todos los mensajes entre equipos.
Finalmente, hay que conocer que criterios comunes, más o menos estándar, se pueden aplicar para tener
una mayor confianza o no de la seguridad de un sistema operativo, aplicación o producto software en
general.
Desde el punto de vista de la seguridad, cualquiera de estas partes del sistema operativo interactúa con una
cuarta entidad, que es el subsistema de seguridad, que determina cómo funciona el sistema con respecto a
los usuarios y a la administración del sistema.
Todos estos subsistemas utilizan una serie de conceptos:
o Monitor de referencia: La parte del software que controla todos los accesos a objetos, por parte de
sujetos.
o Trusted Computing Base: Todos los mecanismos de protección interna (hardware, firmware, partes
del SSOO, etc.) que son responsables de que se cumpla la política de seguridad.
o Kernel seguro: Toda parte del kernel que implemente el concepto de monitor de referencia.
La implementación de todo esto en un sistema real es difícil. No hay que olvidarse de que el sistema, además
de seguro, debe ser funcional.
Las certificaciones y la política de seguridad no pueden conseguir por sí solas, que se disponga de sistemas
fiables. Cualquier SSOO debe estar configurado, desde el punto de vista de la seguridad, con al menos, las
siguientes características:
o Una buena política de copias de seguridad de los datos.
o Una buena política de gestión de cuentas de usuario.
o Una buena política de gestión del sistema de ficheros, que permita el control de acceso lo más
granular posible.
o Integridad de los ficheros.
o Una buena gestión de los ficheros de log.
o Estar bien preparados contra las amenazas previsibles (backdoors, malware, ...)
o Tener una buena política de seguridad física.
Finalmente, no hay que olvidar el factor decisivo, el factor que puede hacer que todo lo que se pueda usar
como defensas no sirva para nada, el factor más complejo y sofisticado: el factor humano.
Desde el punto de vista de la estructura, los mensajes IP pueden ser de tres tipos:
o Mensajes generados por una aplicación que tenga transporte TCP:
Las sesiones TCP permiten medidas de defensa más sofisticadas, razón por la cual suele
decirse que TCP es más fiable que UDP.
Finalmente, unas palabras sobre el llamado código móvil, en el que se puede englobar distintas tecnologías
como JavaScript, Java, ActiveX y los Plug-In descargables.
Todas y cada una de estas opciones de código, así como las famosas cookies, han demostrado tener
problemas de seguridad, relacionados con un mal diseño desde el punto de vista de seguridad, malas
implementaciones, malos usos o todo a la vez.
Con respecto a este último punto, se desarrolló, en el marco de la versión 6 de IP (IPv6), una serie de
protocolos que se conocen con el nombre de IPSec.
Estos protocolos definidos en los RFC 1825 al RFC 1829 y redefinidos en los RFC 2401 al 2412, se
desarrollaron par IPv6, pero las necesidades del comercio electrónico y la creación de Redes Privadas
Virtuales seguras, provocaron que se portara IPSec a IPv4.
De esta manera, se dispone de un conjunto de protocolos de seguridad, potentes y flexibles, que funcionan
bien en IPv4 e IPv6.
Las condiciones de diseño de IPSec fueron que:
o Las funciones de seguridad no deben afectar a la red existente.
o Se pudiera cifrar todos los mensajes, excepto los de enrutamiento.
o Se proporcione autenticación de máquinas origen y destino.
o Se mantenga flexible el proceso técnico de asignación de claves, por razones de seguridad
criptográfica.
o Los algoritmos matemáticos utilizados fueran de la criptografía estándar, para asegurar la
interoperabilidad.
o No se cerrara la elección de tales algoritmos, para poder añadir, en el momento que se necesitara,
cualquier otro algoritmo criptográfico en el que se pusiera de acuerdo la comunidad.
4.1 INTRODUCCIÓN
La red Internet tiene varias características que hacen que los ataques sean peores (si los comparamos con
los ataques o amenazas del mundo real):
o El aspecto automático de los ataques. Si en algo son potentes los ordenadores, es en las tareas
repetitivas.
o El aspecto remoto de los ataques. La aún escasa legislación internacional al respecto ayuda en gran
manera a los atacantes.
o La velocidad de propagación de los ataques. Cualquier atacante puede conseguir, con mucha
facilidad, muchas de las herramientas de ataque que necesitará.
Suelen ser éstas las técnicas utilizadas para preparar un ataque mucho más peligroso, al disponer el atacante
de mucha información sobre el entorno informático y a veces también, humano y organizativo del objetivo a
atacar.
o Mala administración en los filtros de paquetes, lo que da lugar a posibles ataques de tipo
suplantación o spoofings:
Otro caso típico es el de las organizaciones que administran toda la información de
encaminamiento de su red mediante protocolos como OSPF (Open ShorttestPathFirst) o
EIGRP (Enhanced IGRP) que dispone de un mecanismo de autenticación, que hace que los
mensajes de actualización de rutas, enviados entre los distintos routers se hagan con tal
información de autenticación, que además suele ir cifrada. Esto es así si está configurada,
pues si no lo está, cualquier router creerá cualquier mensaje de actualización de cualquier
otro router del mismo protocolo, haciendo muy sencillo colocar un falso medio y obligar al
resto de routers a que la información pase a través de ellos.
El caso más conocido es el IP spoofing, en el cual una máquina suplanta la dirección IP de
otra. La intención resulta obvia, la máquina a la que se suplanta tiene disponible accesos que
están vetados por el atacante.
Estos ataques suelen tener 3 objetivos:
Obtener todo el mensaje de vuelta del equipo atacado, con la intención de hacerse
con la información.
Convencer al objetivo que cree una sesión TCP con nosotros.
Realizar un ataque de DoS.
En cualquier caso existen analizadores de vulnerabilidades que permiten descubrir muchos de ellos, pero
hay que tenerlos instalados, actualizados y vigilados.
o SMTP (Simple Mail Transfer Protocol).No necesita autenticación y permite enviar un mensaje de
email a cualquiera, poniendo como dirección de correo saliente la que se desee y como nombre de
maquina el que se quiera. Para hacer el ataque solo es necesario un cliente Telnet.
o DNS: no necesita autenticación, con lo que es típico enviar mensajes de respuesta de traducción
DNS, no solicitados, causando que una máquina crea y use una dirección IP distinta de la que
realmente es.
o RIP (Rouiting Internet Protocol) e IGRP (Internet Gateway RoutingProtocol) que son protocolos de
enrutamiento que no disponen de ningún método de autenticación y que resulta sencillo variar su
tabla de enrutamiento, mediante mensajes falsos de actualización de rutas, obligando a plantearse
en la política de seguridad de la de que lo mejor es no usar ninguno de ellos.
o ICMP (Internet Control Message Protocol). Enviando mensajes de tipo redirect incorrectos,
indicando que la ruta a usar es la que interese para recibir el tráfico deseado.
Debidos al diseño de aplicaciones: Estos ataque se aprovechan de que las características de uso de alguna
aplicaciones, es decir, el para qué están diseñadas, se convierte en vulnerabilidades:
o Macros de arranque, que permiten realizar modificaciones de ficheros y/o modificar la propia
aplicación para autoreplicarse.
o Postscript
o Applets de ActiveX
o Cookies. Pequeño trozo de datos que un servidor web le da a un navegador. Éste, a su vez, lo
almacena en el equipo del usuario y se lo devuelve al servidor, cuando el navegador vuelve a
conectarse con el servidor.
o Java
Tienen que ver con variables del programa, que no se han chequeado correctamente, ni su longitud
no su tipo de datos. El atacante coloca una secuencia de bytes mayor que el espacio de memoria
reservado para la variable, sobrescribiendo en las siguientes posiciones de memoria. En tales
posiciones, a menudo, están los valores de los punteros a la pila, que indican porque parte del
programa hay que continuar la ejecución. Adecuando cuidadosamente lo bytes de entrada, el
atacante puede redirigir al programa para que ejecute las instrucciones embebidas previamente, en
los datos de entrada (datos maliciosos).
o El software cada vez es más complejo, con una infinidad de dependencias entre módulos que hacen
que aun siendo suficientemente seguros cada uno de los módulos individuales, no se pueda asegurar
lo mismo del conjunto como unidad.
Siguiendo estimaciones de la Universidad de Carnegie Mellow, puede afirmarse que, en cada mil
líneas de código, hay entre 5 y 15 bugs.
o Distribuidos o DDoS:
Se trata de ataques DoS como los ya citados, pero que no tienen una única fuente del
ataque, sino cientos o miles.
Primero se infectan cientos de ordenadores inseguros, a los que, dependiendo del programa
que se utilice, se denominan zombies o agentes del ataque. Tal infección consiste en un
troyano, un programa de ataque, que se instala en los agentes. Suele haber, además, dos
tipos de colaboradores:
Los handlers desde los cuales se infecta a los agentes.
Los agentes desde los cuales se ataca.
Esta diferenciación hace aún más difícil la búsqueda hacia atrás de la dirección IP real, desde
la cual se ha preparado y lanzado el ataque.
Finalmente, el atacante coordina, cuando lo considera necesario, para lanzar, desde todos
ellos a la vez, el ataque sobre la víctima. Las defensas no suelen funcionar con tal cantidad
de mensajes de DoS y el ataque tiene éxito.
No hay un método completamente fiable de pararlos y a la vez, mantener funcional el
recurso atacado.
o Ataques realizados mediante aplicaciones nuevas, que hacen tunnelingde información de comandos,
dentro de protocolos benignos.
o Hay que decir que los ataques pueden implicar toda una creación de código nuevo, que utiliza
aplicaciones ya existentes, para colarse en nuestros sistemas, citando a los programas de tipo LOKI.
o En este tipo de ataques, es fundamental colocar un troyano en un equipo den la zona interna de la
red. Tal troyano es el daemonde LOKI, que recibirá, entenderá y ejecutará el código que le llegue.
o El interés, como ataque nuevo, está en cómo le llega el código al daemon como datos de un mensaje
ICMP:
De tipo 8, código 0 (echo-request).
De tipo 0, código 0 (echo-reply).
o Es decir, que para un router o un firewall, este tráfico, es implemente tráfico ICMP de tipo ping.
Realmente, lo que llega son comandos, scripts o cualquier cosa que la implementación de LOKI que
se esté utilizando permita.
o También se ha observado este comportamiento con protocolos de aplicación como DNS.
o Se puede obtener mucha más información en los servidores web de soporte de los sistemas más
típicos en los que esta soportado LOKI, concretamente para OpenBSD, FreeBSD y Solaris 2.5.
5.1 INTRODUCCIÓN
Una vez autenticado, el sistema de control de acceso impone qué puede y que no puede hacer el usuario.
Lo realmente importante es que, para identificar al usuario, se necesita alguna medida de control de acceso.
Tal sistema debe ser suficientemente bueno como para permitir el acceso al usuario correcto y a la vez, muy
difícil de duplicar para los demás. Debería, a ser posible, guardar también un buen registro de auditoría de
todas las entradas e intentos fallidos.
El intento de acceso se puede realizar :
o En local
o En remoto
Sea como sea, las medidas de identificación y autenticación se centran una de tres cosas distintas:
o Algo que se sabe, contraseñas (aproximación tradicional y más extendida):
Las medidas básicas de una buena gestión de contraseñas serían:
1. Si el acceso va a ser remoto, implementar el uso de SSH, eligiendo una versión que
no se le conozcan bugs.
2. No disponer de más de una cuenta privilegiada (de administración) en cada
máquina.
3. Hacer únicamente uso de la cuenta de administrador solo cuando sea necesario,
trabajando mientras en una cuenta personal de usuario.
4. Si el sistema lo permite, habilitar el bloqueo de cuentas tras un cierto número de
intentos fallidos.
5. Habilitar el cambio de contraseñas periódico y obligatorio. Un periodo medio
aceptable debería ser un mes.
6. No permitir repeticiones triviales de contraseñas.
7. No permitir contraseñas triviales, que sean palabras de un diccionario o listas de
caracteres.
8. Concienciar a los usuarios la política de seguridad de la empresa.
9. Es buena idea usar como contraseñas, acrónimos con caracteres numéricos y
alfanuméricos combinados.
10. No tener la misma contraseña en distintas máquinas.
Un sistema basado en tiempo. Similar al anterior, salvo que ahora los números en
pantalla cambian regularmente. El sistema remoto le pide al usuario que escriba los
números que ve en la pantalla. Si coinciden con lo esperado por el remoto, el
usuario es autenticado.
En el caso de acceso remoto a una red, ha de conocerse lo que se denomina sistemas AAA (Authentication
Authorization Accounting), fomados por:
o El servidor de acceso a la red NAS (Network Access Server) que es el punto de acceso a la red
remota, en la propia localización de tal red. Es el intermediario entre el sistema desde el cual se
pretende acceder y la red a la que se quiere acceder. Recibe la petición de acceso remoto y puede,
en algunos casos, conceder directamente la autenticación si así está configurado.
o El servidor de autenticación AAA, que es el sistema con el que se comunica el NAS, pasándole éste
al servidor AAA la información de autenticación recibida desde el equipo que pretende acceder. El
servidor AAA comprueba tal información y envía al servidor NAS su decisión de autenticación.
o Los protocolos de autenticación, que son los que comunican el NAS con un servidor AAA. Los más
extendidos con diferencia son:
RADIUS (Remote Access Dial In User), es un protocolo desarrollado por Livingston Enterprise
Inc. y está compuesto por:
Un protocolo, con formato de trama UDP/IP.
Un cliente (el NAS)
Un servidor (el servidor AAA)
Los servidores RADIUS pueden actuar como clientes proxies para otro tipo de servidores de
autenticación.
Las transacciones entre clientes y servidor RADIUS se autentican usando un secreto
compartido, que nunca se envía por la red. Además, cualquier contraseña de usuario se
envía cifrada.
Sus implementaciones más habituales en el mercado son las de Livingston, Ascend y Cisco .
En redes grandes, puede haber más de un NAS y más de un servidor AAA, lo que da lugar a una necesidad de
coordinación entre ellos, haciendo más compleja la administración, pero resultando la red más segura frente
a accesos remotos.
Estos sistemas AAA pueden, perfectamente, coordinarse con otros métodos de autenticación de equipos y
de usuarios remotos a través de redes privadas virtuales (VPN).
6.1 INTRODUCCIÓN
La política de seguridad es la forma razonable de contestar, ordenadamente, a los distintos problemas de
seguridad que pueden aparecer en las redes de las organizaciones.
La política de seguridad de una organización es algo así como las normas, reglas o leyes que rigen la vida de
la organización en cuanto a qué se puede hacer y que no se puede hacer.
La seguridad es un proceso, que se puede conseguir si se tiene claro que la política para lograrla debe estar
en constante actualización.
El propósito principal de una política de seguridad es informar a los usuarios, trabajadores y personal de
dirección, de los requisitos obligatorios para proteger los valores tecnológicos e información de la
organización.
La política debería especificar los mecanismos a través de los cuales estos requisitos puedan ser conocidos.
Otro propósito es proporcionar una base para adquirir, configurar y auditar los sistemas de ordenadores y
las redes. El uso adecuado de estas herramientas también debería ser parte de la política de seguridad.
Los objetivos que se buscan son:
o Debe poderse implantar.
o Debe entenderse.
o Debe hacerse cumplir.
o Debe definir responsabilidades.
o Debe permitir que siga realizándose el trabajo normal.
o Debe ser exhaustiva.
o Debe incluir mecanismos de respuesta.
o Debe tener mecanismos de actualización.
o Debe cumplir la legislación.
La periodicidad con la que cada una de las fases debe ponerse en marcha depende de la política que tendrá
en cuenta el tamaño de la red y otros múltiples factores.
Señalar la importancia de ver la política de seguridad de una organización como algo en constante
movimiento, que permite que el mantenimiento de la seguridad sea un proceso vivo y administrable de
forma estructurada y organizada.
Igualmente, debe haber unas normas claras sobre el control de acceso a los edificios donde estén situados
los ordenadores y redes de la organización, identificando:
o ¿Quién puede entrar al edificio?
o ¿Quién puede entrar a determinadas salas del edificio?
o ¿Cómo debe garantizarse tal tipo de acceso?
o ¿Quién puede acceder a determinados dispositivos específicos de salida, como impresoras?
o ¿Qué documentos no deben tener copias en papel, dónde y cómo destruirlas?
o ¿Qué niveles y/o cuentas de acceso se le debe dar a un colaborador externo?
o ¿Es necesario la presencia cámaras y guardias de seguridad?
Se debe tener en cuenta otra serie de ideas, entre las cuales se pueden resaltar:
o Las actividades críticas deben situarse lejos de las áreas de acceso público.
o Los edificios deben minimizar las indicaciones sobre su propósito.
o Los listines de los teléfonos y de las salas no deben identificar localizaciones informáticas.
o Los materiales peligrosos y/o combustibles deben almacenarse a una distancia de seguridad del
emplazamiento de los ordenadores.
o El equipamiento de copias de seguridad y las propias copias de seguridad deben ubicarse en sitios
diferentes.
o Se debe instalar equipamiento apropiado de seguridad (detectores de humos, extintores, ...).
o Los procedimientos de emergencia deben estar bien documentados y revisados regularmente.
o Política de contraseñas:
Debe contener las directrices de cómo gestionar las contraseñas de usuario y administrador.
Entre las que no serían normas básicas, pero, aun así, en una organización extensa serían importantes, se
tendrían:
Personal de mantenimiento:
Suele tener acceso al perímetro protegido.
Suelen ser personas no técnicas, ni relacionadas con los equipos y por tanto, es más
probable que cometan errores comprensibles en su iteración con ellos.
El que no se les exija conocimiento, no quiere decir que no los tengan. Por ello, si
deben acceder al sistema, es recomendable que lo hagan bajo supervisión de una
persona responsable.
Así mismo, hay una serie de procedimientos organizativos a tener en cuenta, que deben ser tomados por la
dirección de RRHH, que se pueden resumir en:
o Que las definiciones de puesto de trabajo contemplen todo lo necesario en cuanto a
responsabilidades de seguridad y sus sistemas.
o Que los empleados que vayan a hacer uso de información sensible, hayan sido correctamente
contratados, teniendo especial cuidado con el caso de los empleados temporales.
o Se deberán firmar contratos o acuerdo de confidencialidad antes de su conexión y acceso a los
recursos y sistemas de información de organización.
7.1 INTRODUCCIÓN
También esto procedimientos y herramientas proporcionan información que se utiliza para renovar la
política de seguridad y hacerla más fuerte, más completa.
Es importante remarcar la diferencia entre los dos niveles de trabajo con todas estas herramientas:
o Un nivel de conocimiento de cómo configurar las herramientas.
o Un nivel de conocimiento de la seguridad deseada. Este nivel es más relevante que el anterior.
8.1 INTRODUCCIÓN
Una red privada virtual (RPV) es simplemente una conexión segura creada a través de una red pública.
Tienen tres usos principales:
o La Intranet de la organización:
En este caso, una RPV sirve para conectar piezas disjuntas de la misma red.
Si una organización tiene varias oficinas en sitios distintos de un país o del mundo y cada
oficina tiene su propia red física, todas estas redes físicas pueden estar conectadas a través
de una RPV que se ha construido sobre Internet.
o La Extranet:
Simplemente, parte de las redes disjuntas no pertenecen a la misma organización, sino a
otras.
Si se piensa en empresas, esto permite la colaboración típica, en cuanto a compartición
rápida de información, entre diferentes empresas.
o Los usuarios móviles de una organización:
Los usuarios de una red que trabajan desde su casa, o que están en continuo cambio de
ubicación a causa de su trabajo pueden hoy conectarse a su red, mediante una llamada local
al proveedor de acceso a Internet local y mediante una RPV.
Si se analiza en más detalle la frase “red privada virtual” se podrá remarcar varias características
importantes:
o Es una red, un mecanismo de transmisión de datos.
o Es privada, lo que quiere decir que la comunicación se realiza de forma que solo se permite a los
participantes designados tomar parte en ella.
o Es virtual, no es realmente lo que parece ser, se ha construido de forma que replique lo más posible
otra cosa distinta.
Otro criterio que sirve para caracterizar una RPV es preguntarse dónde empieza y donde acaba la RPV. Los
extremos de una RPV, suelen venir determinados por donde tienen lugar las funciones antes comentadas
(privacidad, autenticación, etc.). Con respecto a esta pregunta, se puede hablar de tres tipos de RPV:
o RPV de extremo a extremo:
Las funciones típicas de una RPV se implementan en el ordenador emisor y en el receptor.
Antes de dejar el emisor, los datos has sido asegurados y viajan así hasta llegar al receptor.
o RPV intermedias:
Es el más habitual en implementación de Intranet y Extranet.
Los datos de la sesión dejan el emisor sin ningún tipo de formato especial, sin haber sido
pasados por ninguna de las funciones comentadas y así llegan a un dispositivo intermedio
(router, firewall, etc.) que es el que va a crear el tráfico RPV y lo va a transmitir por la red
insegura.
Este tráfico RPV llegará a otro dispositivo intermedio en donde será tratado de manera que
al aparecer en la red propia del receptor viajará, otra vez, en claro hasta llegar al receptor.
o RPV origen-intermedio:
Es el de las redes usadas por los usuarios móviles.
Las funciones se implementan en el equipo móvil y en el dispositivo intermedio de entrada
en su red.
Las RPV son una nueva solución para las comunicaciones de todo tipo de organizaciones dispersas
físicamente, al crear enlaces dinámicos sobre muchos tipos de medios de transmisión y ofrecer una forma
protegida única de conexión tanto para redes locales en sitios diferentes como para usuarios móviles.
Además de una mejor flexibilidad y escalabilidad, las RPV ofrecen reducción significativa de costes.
Las ubicaciones típicas para colocar dispositivos de extremo a extremo de una RPV varían,
puede ser el propio firewall o el router de la organización, o entre ambos, o entre el router y
el router del ISP.
o El ISP:
Si la pasarela RPV dispone de un puerto WAN, puede instalarse de dos maneras:
1. Se coloca entre la conexión al ISP u la Intranet propia de forma que la pasarela
procesa todo el tráfico que entra y sale de la red.
2. Disponer de una topología para el tráfico que deba ir cifrado y de otra entrada a la
red, por ejemplo a través de otro router, para el que no deba ir cifrado.
Si la pasarela RPV no dispone de un puerto WAN, sino simplemente de dos o más puertos
Ethernet, suele haber cuatro configuraciones posibles:
1. Colocar la pasarela antes del router y del resto de la red interna:
o El router no necesita ninguna configuración especial y puede filtrar tráfico
RPV y no RPV con las mismas reglas.
o Hay que configurar la pasarela para dejar pasar tráfico no RPV.
Otra cuestión importante de diseño es decidir cómo se implementa, si la RPV tiene necesidad por existir una
gran cantidad de dispositivos de extremo a extremo y/o móviles, la PKI que permite manejar los certificados
digitales de cada uno de los extremos de la RPV. Esto garantizará la autenticación de tales dispositivos. El
punto clave es decidir si la autoridad de certificación es interna a la organización o pública.
El último asunto importante en el diseño de toda RPV es el de la autenticación de usuarios. Suele
implementarse como una opción más en los extremos de la RPV que sirven de entrada a las redes internas.
La pasarela suele actuar como cliente de un servidor AAA, comunicándose con el mediante un de los dos
posibles protocolos AAA.
2. La “bondad” del proceso de cifrado de la RPV en los ordenadores y en las pasarelas RPV de
seguridad.
Dependiendo de la potencia de cálculo de los dispositivos RPV que se utilicen y el tráfico
que haya que procesar es normal tener que considerar la instalación de varias pasarelas en
las conexiones que tengan un mayor volumen de tráfico e, incluso, tratar de implementar
algún tipo de balanceo de carga entre ellas.
Respecto al mantenimiento, los principios típicos son, fundamentalmente, los de cualquier red.
o Gestión de fallos de funcionamiento en la red.
o Gestión de la configuración de los dispositivos.
o Gestión de la auditoria y de la contabilidad del uso de recursos.
o Gestión de la seguridad.
Al igual que en la gestión de red, las técnicas de seguridad también intentan conseguir el objetivo de tener
disponible los recursos de la organización el 100% del tiempo para los usuarios de la misma. Por esta razón,
parece cada vez más normal que se empiece a hablar de técnicas que unan ambos ámbitos, especialmente
para el caso de las RPV, creando herramientas híbridas entre los sistemas de gestión de red y los sistemas de
cifrado típicos empleados en las RPV. Este parece ser el futuro que nos depara la gestión y el mantenimiento
de las RPV.
9.1 INTRODUCCIÓN
Un firewall implementa una aproximación basada en red, más que basada en un sistema, a la consecución
de la seguridad de redes.
Desde un punto de vista ideal, un firewall debe tener las siguientes características:
o Todo el tráfico de dentro a fuera y de fuera a dentro, debe pasar a través del firewall.
o Solo aquél tráfico autorizado, basándose en la política de seguridad, puede seguir su camino.
o El firewall es completamente inatacable.
La política general de diseño del tráfico que se permite pasar suele ser restrictiva: no se deja pasar ningún
tipo de tráfico, salvo el que esté explícitamente permitido. Tal política resulta ser muy segura, aunque hay
que tener en cuenta que se deberá analizar cada una de las utilidades cuyo tráfico sea necesario según los
usuarios.
Aunque no hay una tipología oficial, normalmente se habla de 4 tipos de firewall:
o Los filtros de paquetes, que suelen ser encaminadores que filtran el tráfico basándose en
combinaciones de diferentes campos de las cabeceras IP, RCP y UDP de cada mensaje.
o Gateway de aplicaciones, también llamados servidores proxy, que suelen ser equipos intermedios,
que aceptan peticiones entrantes de servicios de red y realizan las llamadas adecuadas a favor de
cada cliente de servicio correspondiente.
o Firewall de tipo stateful inspection, o de filtrado dinámico de paquetes, que son capaces de
mantener el estado de cada sesión a través del firewall y cambiar las reglas de filtrado
dinámicamente conforme a lo definido en la política de seguridad.
o Firewall híbridos, que son resultado se la combinaciones de las propiedades citadas previamente.
Ningún firewall puede evitar problemas que se originan en la parte protegida de la red, cuyo objetivo de
ataque esté en la misma parte.
Estos filtros se pueden implementar en paquetes software (Draebridge) sobre SSOO, aunque lo más común
es verlos en routers.
No obstante, tienen una serie de puntos débiles que hay que tener en cuenta:
o Si la configuración llega a hacerse muy grande, puede hacerse difícil el mantenimiento de los filtros
concretos.
o Si se tiene que hacer una excepción ocasional, puede ser que haya que cambiar toda la
configuración, haciendo la situación bastante insegura.
o No permiten realizar ningún control a nivel de usuario ni a nivel de datos.
o No es fácil filtrar protocolos con más de una conexión activa simultáneamente, como FTP, ni
protocolos basados en RPC.
o No suelen guardar registro de los accesos de los usuarios.
Dependiendo del tipo de servidor proxy, puede ser necesario cambiar algo en el cliente, en servidor o en
ambos, que puede ser el software o determinada parte de la configuración.
Un servidor proxy suele, también, proporcionar NAT (Network Address Translation).
Los puntos fuertes los servidores proxy son:
o Permiten filtrar a nivel de aplicación, lo que quiere decir que se puede filtrar por operaciones
concretas de protocolo.
o Pueden tener un proceso separado por protocolo, no tienen que tratar de hacerlo todo a la vez.
o Hacen sencillo restringir el acceso a un servicio.
Esto es en sí una buena idea, pues se está implementando dos principios de seguridad ya citados:
o Hay un defensa en profundidad, los ataques deben ser capaces de atacar con éxito primero el router
y después el firewall.
o Si se elige un firewall que no sea también router, se pone en marcha el principio de diversidad de
defensa.
Una posible dificultad en este tipo de topologías muy a tener en cuenta es la dificultad de administración.
11.1 INTRODUCCIÓN
Una fase de monitorización correcta debe tener en cuenta medidas de prevención y tales medidas se
consiguen con herramientas denominadas sistemas de detección de intrusiones (IDS, Intrusión Detection
System).
Una intrusión se puede definir como un mensaje o serie de mensajes que cumplen varias condiciones:
1. Se aparta de un comportamiento normal.
2. Si es anormal, hay que decidir si esa anormalidad proviene de un uso incorrecto o si es una situación
peligrosa.
En los últimos años han ido apareciendo soluciones que realizan esta labor de manera automática. Los
primeros utilizaban lo que se conocía como detección de anomalías. No tuvieron mucho éxito pues
producían muchos falsos positivos.
Se dice que se ha obtenido un falso positivo cuando el IDS utilizado, indica que hay un ataque en marcha y
realmente no es tal.
Los sistemas IDS usados hoy en día son todos ellos basados en firmas.
Tales firmas de ataque son mensajes concretos o grupos de mensajes que indican, con cierta fiabilidad, que
hay un ataque en curso.
Una firma sería un conjunto de reglas típicas de una actividad que se asocia claramente con una intrusión en
la red.
Además, el conjunto de tales firmas de ataque, de cada sistema IDS, es la suma del conjunto de firmas que
ya viene en el sistema, que es el resultado de la investigación y operación de una serie de expertos y de los
conocimientos de distintas agencias de ayuda como el CERNT y de la capacidad de creación de otras firmas,
por parte de los administradores de estos sistemas.
Otro criterio de clasificación de los IDS es donde se colocan en la topología de la red de la organización:
1. Pueden colocarse en un segmento de red, en cuyo caso monitorizan el tráfico que circula por ese
tramo. En este caso, se habla de IDS basados en la red.
2. Pueden colocarse como salvaguarda de un solo sistema, para proteger dicho sistema y este caso se
habla de IDS basados en el sistema.
Una serie de aspectos a tener en cuenta a la hora de desplegar los IDS en la red:
o Donde colocarlo.
o Falsos negativos (ataques reales no detectados).
o Falsos positivos.
o Respuesta ante incidentes. Hay que decidir si se cierra el agujero o se investiga. Si se quiere conocer
uno por uno cada ataque o solo los exitosos. Todo esto hay que decidirlo, dentro de la política de
seguridad.
El sistema debe tener un nombre atractivo, debe tener varios niveles de log.
Otro nivel de log interesante es poner un sniffer en el segmento del señuelo.
Una vez el señuelo ha sido realmente comprometido, suele ser interesante pararlo y volver a colocarlo, con
la misma configuración y las vulnerabilidades usadas por el atacante arregladas, pero con nuevas
vulnerabilidades para aprender nuevas técnicas de ataque.
Desde hace pocos año, un grupo de profesionales de seguridad ha desarrollado el concepto analizado y ha
creado un proyecto denominado proyecto Honeynet (http://www.honeynet.org/), dedicado a aprender
tácticas, técnicas y herramientas, así como los motivos de los atacantes y , además, compartir tal
conocimiento.
Una honeynet es una red real, en la que todo el tráfico entrante y saliente se analiza y se cataloga. Dentro de
la red se establecen distintos sistemas de producción estándar, que proporcionan, realmente, servicios
reales. Esto hace que sean más difíciles de detectar.
Este proyecto tiene dos objetivos concretos:
o Adelantarse al uso real de amenazas y vulnerabilidades que se usan en Internet.
o Formar, e informar a la comunidad de profesionales de seguridad.
13.1 INTRODUCCIÓN
En los entornos de red actuales un factor que hay que tener en cuenta desde el punto de vista operativo,
es el de la alta disponibilidad de las redes y como consecuencia, de los servicios que éstas ofrecen.
En la industria hace ya tiempo que está establecida una cierta definición de “alta disponibilidad”.
Cuando se habla de alta disponibilidad se habla de los tres nueves (99,999 % del tiempo del año
funcionando correctamente), lo que quiere decir un tiempo de caída permitido de 5 minutos al año. Tan
importante es el número y poder medirlo, que existe una medida estándar del nivel de disponibilidad de
un dispositivo cualquiera, que se puede expresar como:
Siendo TMEF (Tiempo Medio Entre Fallos) y TMR (Tiempo Medio de Reparación).
Tal nivel de disponibilidad requiere tratar de evitar una serie de posibles problemas:
o Lógicos:
Los puntos únicos de fallo en las redes.
Las paradas necesarias para las actualizaciones.
Los altos tiempos de rearranque o conmutación activo/pasivo.
Los sistemas no suficientemente probados.
o Físicos:
Las condiciones medioambientales poco apropiadas.
Los desastres naturales.
Los accidentes, como incendios, derrumbamientos, etc.
o Organizativos:
Los tiempos excesivos de reparación de hardware y de software.
Los problemas operacionales y de procedimientos.
Una vez se ha completado el ciclo, se identifica otra tecnología nueva y se vuelve a empezar. Si se quiere
seguir siendo competitivo, el ciclo no puede parar y la red debe estar disponible permanentemente.
Cuando se piensa en que una transacción de una organización se complete, hay muchas tecnologías
subyacentes que deben estar completamente operativas:
o Para el personal no técnico, la ejecución con éxito de la transacción es la parte que le preocupa, es la
parte del proceso de negocio.
o Para el personal técnico, las áreas importantes son el buen funcionamiento de los servidores, de las
aplicaciones y de la conectividad de red.
Desde el punto de vista de la alta disponibilidad, para enlazar tales criterios aparentemente dispares, se
suele introducir el concepto de Administración de Niveles de Servicio.
Para crear una red de alta disponibilidad, el administrador de red suele tener que utilizar herramientas de
prácticamente todos los niveles del modelo OSI.
Otra característica importante que hay que tener en cuenta es que ningún componente dentro de una
<<caja>>, que deba realizar una función concreta, debe depender de otros componentes dentro de la misma
<<caja>>. Esto se denomina inteligencia distribuida, cada elemento, de dentro de un sistema, es
independiente de los ostros elementos del sistema.
Cuando se plantea un escenario de alta disponibilidad en una organización media o grande, se establece un
diseño diferente para lo que se denomina el núcleo de la red y los extremos de la red.
En el diseño del núcleo, el centro de datos y los dispositivos de red se implementan mediante el uso de
sistemas redundantes. Además de la redundancia interna de los dispositivos se puede añadir aún más
redundancia mediante métodos como el dual-homing (sistemas con dos tarjetas de red) y los caminos
alternativos.
Desde el punto de vista de los métodos de redundancia del hardware se pueden añadir también los
siguientes:
o Redundancia de dispositivos físicos.
o Agregación de enlaces.
Una red STP converge basándose en una serie de temporizadores que son ajustables pero que, en todo caso,
pueden resultar demasiado grandes en muchos casos.
El IEEE ha puesto en marcha el grupo de desarrollo del 802.1w, denominado con propiedad el protocolo de
re-convergencia rápida, que tiene como objetivo que las redes puedan re-converger en aproximadamente
un segundo.
Otra manera de ayudar a reducir el problema es implementando el protocolo IEEE 802.1s, conocido como el
de STP múltiples.
Pero, ¿qué sucede cuando falla un encaminador? Lo que sucede depende de su ubicación en la red y de qué
otros dispositivos lo estén usando.
Para tratar de arreglar y eliminar situaciones catastróficas en topologías con un punto único de fallo, se ha
desarrollado el VRRP (Virtual Router Redundancy Protocol) basado en el [RFC 2338].
Este protocolo utiliza dos encaminadores físicos, uno en funciones de master y el otro de backup,
configurados como un único encaminador virtual, con una única dirección IP <<virtual>> para los dos:
De entre todos ellos, la arquitectura SAN permite la creación de configuración de alta disponibilidad a nivel
de tosa la organización, que son escalables, capaces de crecer conforme lo haga la organización.
Hay tres aspectos claves identificables como críticos para diseñar una solución de alta disponibilidad para el
subsistema de almacenamiento:
o Protección de datos:
Memorias secundarias (caches) redundantes.
Discos RAID:
Existen distintos tipos de combinaciones (o niveles) referidos por un número:
o RAID 1. Copia de los mismos datos en dos o más discos.
o RAID 5. Los datos se distribuyen por un conjunto de 3 o más discos, junto
con información de paridad para la recuperación de datos.
Replicación de datos:
o Conectividad de subsistemas:
Interfaces redundantes.
Así pues es cada vez más normal plantearse topologías, como la de la siguiente figura:
Habitualmente ambos cortafuegos deben ser del mismo modelo, tener la misma memoria e instalada
idéntica versión de sistema operativo. Además estas situaciones son especiales de los cortafuegos
denominados stateful inspection.
Al fallar el firewall primario (activo), el secundario (pasivo) pasa a convertirse en el activo y el primario se
queda como reserva.
Desde el punto de vista de la ubicación física de los dispositivos, se suele hablar de dos tipos de procesos de
redundancia:
o El proceso estándar. Basado en que ambos firewall están conectados entre sí mediante un cable
especial, de longitud corta, propietario, llamado cable de recuperación.
Además se habla de dos tipos de proceso de recuperación con respecto a la capacidad de recuperación:
o Proceso de recuperación normal. Las conexiones que hubiera se pierden, debiendo las aplicaciones
volver a conectarse, para restablecer las comunicaciones a través del cortafuegos.
o Proceso de recuperación completa.
Práctica 2
Curso 2019-2020
Seguridad
Versión 1.0
Tabla de contenido
1 Objetivos de la Práctica ......................................................................................................... 2
2 Evaluación ............................................................................................................................. 2
3 Desarrollo de la práctica ....................................................................................................... 2
3.1 Contexto de la práctica ................................................................................................. 3
3.2 Problemas con el controlador de la planta ................................................................... 5
3.3 Nos llama el administrador ........................................................................................... 5
3.4 Los departamentos externos ........................................................................................ 6
3.5 Diseño de una política concreta .................................................................................... 7
3.6 Apartado Extra: IDS Snort.............................................................................................. 8
4 Anexo I: funcionamiento de UFW ......................................................................................... 9
5 Anexo II: tcpflow ................................................................................................................. 14
6 Bibliografía .......................................................................................................................... 15
CURSO 2019-2020 1
Seguridad
1 Objetivos de la Práctica
Los objetivos de esta práctica son los siguientes:
• Gestionar incidentes.
• Diseñar una política de acceso para un firewall dado un supuesto práctico.
• Implementar la política de acceso diseñada.
• Comprobar que la implementación de la política diseñada cumple con los requisitos
del supuesto práctico.
2 Evaluación
El equipo docente evaluará:
3 Desarrollo de la práctica
Los firewalls son los primeros controles de seguridad que desplegamos en cualquier entorno.
Un componente crítico en la planificación e implementación de un firewall es especificar una
política de acceso adecuada. En pocas palabras, la política de acceso a la red especifica qué
tipos de tráfico pueden pasar a través del firewall. Los tipos de tráfico suelen estar definidos
por los rangos de direcciones, es decir, cuáles son sus máquinas, los protocolos, las
aplicaciones y los contenidos.
Antes que nada, lea atentamente el documento “PEC2_Puesta en marcha del entorno de
prácticas.pdf” que explica los pasos para poner en marcha el entorno de prácticas.
CURSO 2019-2020 2
Seguridad
3.1 Contexto de la práctica
Acabamos de ser contratados por Panoramix Pharma como técnico de seguridad de su planta
de producción de pociones mágicas. Últimamente ha habido muchos problemas de producción
y esperar solventarlos con nuestra contratación. La planta de producción se compone de tres
elementos:
El desarrollo de esta arquitectura ha sido algo paulatino, mediante parches que han ido
modificando la planta según las necesidades del momento. Por ello es fundamental
monitorizar correctamente el funcionamiento de la planta.
Podemos ver el estado de la planta usando los servicios de estado de cada planta. Para ello
vemos la dirección IP de nuestra máquina virtual en el panel de configuración de EC2,
seleccionándola y viendo el parámetro IPv4 Public IP. Por ejemplo en esta captura es:
52.91.199.207.
CURSO 2019-2020 3
Seguridad
• http://52.91.199.207:5000/status/
• http://52.91.199.207:5001/status/
• http://52.91.199.207:5002/status/
Tanto la planta como el administrador están conectados a la red interna (inner) de la fábrica.
Sin embargo, es necesario que la planta se conecte a otra red, la red externa (outer) ya que
hay varios departamentos de la sede central que deben consultar la producción para su
funcionamiento.
Corduba
Lucus Augusta
Cartago Nova
CURSO 2019-2020 4
Seguridad
Inicia el entorno de prácticas. Una vez iniciado y tras comprobar que todos sus componentes,
abre los enlaces para comprobar el estado de cada unidad:
• http://<IP_instancia>:5000/status/
• http://<IP_instancia>:5001/status/
• http://<IP_instancia>:5002/status/
La planta está parada así que todos los atributos deben ser 0.
Comprueba la actividad durante unos minutos para determinar si es cierto lo que nos han
comunicado actualizando los estados cada poco.
Llamas al administrador Asterix y le comunicas tus hallazgos. Te dice que no permitas ninguna
petición a la planta, que lo cortes todo inmediatamente.
Vuelves a conectarte a la planta (contenedor Panoramix) y estableces una política que impida
cualquier petición a la planta mediante el firewall UFW (mira el Anexo I).
Pregunta B: ¿Qué comandos has utilizado? Adjunta una captura de pantalla (imagen) de las
reglas del firewall al terminar.
Nos conectamos al equipo del administrador (contenedor asterix). Usaremos herramienta curl
que nos ayudará a lanzar peticiones HTTP al equipo de la planta. El uso del comando curl es
sencillo: curl <URL>, donde URL es la dirección del servicio que queremos comprobar.
Desde el administrador Asterix ten en cuenta que te encuentras en la red interna así que
puedes usar el nombre panoramix para comprobar los servicios.
Pregunta D ¿Cuál sería la consulta (comando) del estado de la entrada de la planta? ¿Cuál es
la causa de qué falle?
CURSO 2019-2020 5
Seguridad
Cerramos la sesión en el equipo del administrador y volvemos a conectarnos al equipo de la
planta.
Los equipos conectados a la red exterior deben realizar peticiones sólo del estado de los
componentes (GET /status/).
Tras modificar la política, controla los servicios de la planta. Parece que no vuelven los
comportamientos extraños… Es posible que no podamos ver esos comportamientos extraños
porque la dirección IP de nuestro equipo esté bloqueada.
Si sigues sin ver estos comportamientos, conéctate al equipo del administrador y usa curl
varias veces para comprobar el estado de los componentes con las siguientes URLS:
http://panoramix:5000/status/
http://panoramix:5001/status/
http://panoramix:5002/status/
En este caso si veremos que hay una configuración errónea. Tenemos que determinar cuál es
el origen de estos problemas. Intenta visualizar los logs de la planta.
Pregunta G. ¿Te ofrecen alguna información sobre las peticiones a los distintos
componentes?¿Crees que esto tiene un impacto en la seguridad?
Vamos a utilizar otra aproximación. Conéctate al contenedor de la planta. Instala tcpflow (ver
anexo II para más información) y úsalo para determinar qué equipos están lanzando ordenes
en lugar de solo consultar el estado de la planta. Prueba los tres puertos que usa la planta y
ten en cuenta que puede tardar unos minutos en comenzar a funcionar.
Pregunta H. ¿Cuáles son las IPs de los equipos que están lanzando ordenes en lugar de sólo
consultas al estado? Justifica tu respuesta.
CURSO 2019-2020 6
Seguridad
Comprueba usando los servicios de estado de la planta que dejan de aparecen parámetros
extraños.
Comprueba además que los equipos no clasificados como maliciosos pueden realizar
peticiones a la planta (puedes usar el comando curl).
Pregunta I. ¿Cuál es la política actual de la planta? Adjunta una captura de pantalla del
listado de reglas del firewall.
Llamamos a los administradores de las sedes que han presentado comportamiento malicioso.
Les informamos del incidente y que mientras no resuelvan el problema se va a bloquear el
acceso a sus terminales.
Pregunta J. Según tu opinión qué es más efectivo desde el punto de vista de gestionar un
firewall y garantizar la seguridad: ¿bloquear por defecto la red e ir habilitando uno a uno los
equipos permitidos, o bien permitir todos los equipos de la red y bloquear aquellos no
autorizados?
Así mismo cualquier cambio en la misma deberá ser aprobado por el gestor de infraestructuras
antes de realizarse, evitando que los cambios que afecten a terceros.
Para ello:
Pregunta K: Rellena el siguiente cuadro que refleja una política de acceso basada en los
requisitos anteriores utilizando un firewall para la planta. Inclúyelo en tu memoria.
Deberíamos rellenar la siguiente tabla añadiendo tantas filas como sea necesario e indicando
la acción a realizar para cada caso, (ya se ha incluido las dos filas de la política por defecto):
Pregunta L. Si falta alguna regla que no hayas incluido en el firewall UFW tras el diseño de
política de acceso anterior, impleméntala en el entorno de prácticas y adjunta una captura
de listado de reglas del firewall.
CURSO 2019-2020 7
Seguridad
Pregunta M: ¿Podríamos filtrar las peticiones HTTP (/status/, /actívate/1,…) desde la red
externa en base a la función pedida y no en base a direcciones IPs y puertos? En caso
afirmativo incluye las reglas que lo permitirían, en caso negativo indica con que herramienta
de seguridad lo lograríamos.
Para ello conéctate a Panoramix e instalar el IDS Snort. Puedes hacerlo mediante los
comandos:
apt update
apt install snort
Durante la instalación se te pedirá que especifiques la red que Snort llama HOME_NET. Esta
red es la que se considera la red interna donde está el equipo. Define cuál crees que es la red
interna y termina de instalar Snort. Incluye tu respuesta en la memoria.
En este caso queremos filtrar las peticiones provenientes de la red externa que no sean
consultas de estado. Para ello, debes crear un documento de reglas que en caso de que se
detecten peticiones distintas a las del estado provenientes de la red externa se bloqueen.
Incluye el listado de estas reglas en la memoria.
Pon en marcha Snort con las opciones adecuadas y adjunta una captura de pantalla a tu
memoria.
Modifica las reglas de UFW para permitir que la/las sede/s que has detectado como atacantes
puedan lanzar peticiones y comprueba el efecto del IDS.
CURSO 2019-2020 8
Seguridad
Una vez dentro de la consola del equipo que queremos; o primero debemos comprobar que se
encuentra instalado o instalarlo en su defecto con la orden apt-get install ufw:
De forma similar podemos detenerlo en cualquier momento con la orden ufw disable.
Una vez arrancado podemos consultar el estado de configuración del firewall con la orden ufw
status verbose:
En este caso nos indica que está activo, nos indica que el registro está activado, aunque a bajo
nivel y nos indica las políticas por defecto:
A priori parece que bloquear todas las peticiones entrantes a nuestra máquina es algo muy
restrictivo. Sin embargo, ya por defecto existen excepciones que se omiten en este resumen y
que podemos ver mediante la orden ufw show raw. En este caso nos devuelve las reglas de
IPTables aplicadas.
Por último, para obtener un listado de las reglas aplicadas basta con hacer ufw status:
CURSO 2019-2020 9
Seguridad
Podemos marcar las políticas por defecto mediante la orden ufw default [allow|deny]
[incoming|outgoing] donde acción es la acción a aplicar:
• Deny para bloquear todos los paquetes por defecto si no existe una regla individual
que modifique este comportamiento.
• Allow para permitir todos los paquetes por defecto si no existe una regla individual
que modifique este comportamiento.
• Incoming para todos los paquetes cuya dirección IP destino sea la máquina sobre la
que configuramos el firewall.
• Outgoing para todos los paquetes cuya dirección IP origen sea la máquina sobre la
que configuramos el firewall.
Por ejemplo:
Podemos permitir o denegar servicios directamente mediante el nombre del servicio. Y luego
aplicar la regla de permitir (allow) o bloquear (deny) mediante ufw [allow|deny]
<nombre de servicio>.
Por ejemplo, si queremos bloquear las conexiones mediante telnet usaremos la regla: ufw
deny telnet. Si queremos permitir conexiones mediante ssh usaremos la regla: ufw allow
ssh.
CURSO 2019-2020 10
Seguridad
Otro caso es que queramos bloquear o permitir rangos de puertos concretos con protocolos,
en ese caso usaríamos la sintaxis: sudo ufw [allow|deny]
<port>[:<port>]/<optional: protocol>.
Por ejemplo, si queremos bloquear los puertos desde 1000 al 2000 en TCP usaremos la regla:
ufw deny 1000:2000/tcp. Si queremos permitir la conexión en el puerto 53 tanto con TCP
como UDP usaríamos las reglas ufw allow 53/tcp y ufw allow 53/udp.
Por último, también podemos bloquear direcciones IP concretas mediante la sintaxis sudo
ufw from <IP origen>[/<red>] [ to <IP destino>|any] [port <puerto>]
[proto <protocolo>]
Por ejemplo, para permitir conectarnos con otros equipos en nuestra red local usaríamos la
regla ufw allow 192.168.1.0/24. Si, además, existe un equipo 192.168.2.4 que es de
administración y tenemos que permitirle conectarse a los equipos por el puerto 5500
añadimos la regla: ufw allow from 192.168.2.4 to any port 5500.
CURSO 2019-2020 11
Seguridad
Podemos ver las reglas numeradas mediante la orden ufw status numbered:
Recordar que el orden de las reglas es importante, ya que marca el orden en que se van a
aplicar a los paquetes. Por eso es fundamental que las reglas más específicas se coloquen al
principio y las más generales al final.
Podemos forzar que una regla se inserte en un punto determinado de la lista usando la opción
insert <número> en su definición. Por ejemplo: ufw insert 1 allow http.
CURSO 2019-2020 12
Seguridad
Por otra parte, podemos borrar las reglas de la lista, mediante la orden ufw delete
<número>, donde número es el número de regla en el listado. Por ejemplo, podemos borrar la
regla 1 de la lista anterior: ufw delete 1.
CURSO 2019-2020 13
Seguridad
La librería tcpflow está pensada para analizar conversaciones TCP, especialmente aquellas
orientados a protocolos como HTTP. Permite realizar la captura automática de estas
conversaciones y almacenarlas en ficheros individuales o bien ver mediante la consola e
tcpflow [-chpsv] [-b max_bytes] [-d debug_level] [-f max_fds] [-i iface] [-r file] [expresión]
CURSO 2019-2020 14
Seguridad
• i: interfaz de red sobre la que escuchar (usar la orden"ifconfig" para obtener una lista
de las interfaces)
• p: no utilizar el modo promiscuo
• r: leer los paquetes de archivo de salida de tcpdump
• s: quitar caracteres no imprimibles (cambiar a '.')
• v: operación detallada equivalente a -d 10
Por ejemplo, supongamos que queremos ver el tráfico existente en la interfaz de la red interna
en el puerto 5000, la orden sería la siguiente tcpflow -cp -i eth0 tcp port 5000:
Como vemos en la salida, tcpflow nos devuelve todos los paquetes organizados en mensajes
HTTP. Aquí podemos ver como el equipo con IP 192.168.12.42 envía una petición GET /status/
desde la web (Referer: http://localhost/dashboard.html) a la planta. Y vemos como la planta le
contesta con una estructura JSON, indicando el valor de los campos de ingredientes y el estado
de la entrada (1, luego activo).
6 Bibliografía
• UFW: https://help.ubuntu.com/community/UFW
• Curl: https://curl.haxx.se/
• Ip: http://manpages.ubuntu.com/manpages/trusty/man8/ip.8.html
• Tcpflow: https://linux.die.net/man/1/tcpflow
CURSO 2019-2020 15
Seguridad en las Comunicaciones y en la
Información
EXAMENES 2014-2019