Seguridad en Redes

Find the right structure and content for your course and set up a syllabus

Começar. É Gratuito
ou inscrever-se com seu endereço de e-mail
Rocket clouds
Seguridad en Redes por Mind Map: Seguridad en Redes

1. Definiciones

1.1. El protocolo ICMP es el encargado de realizar el control de flujo de los datagramas IP que circulan por una red TCP/IP. Este protocolo consta de varias funcionalidades que permiten realizar desde la comunicación de situaciones con anomalías (por ejemplo, para indicar que no se ha podido realizar el entrega de un datagrama IP) hasta la comprobación del estado de una maquina en la red.

1.2. El comando ping puede informar, mediante paquetes ICMP de tipos echo-request y echo-reply, sobre si una determinada dirección IP está o no activa.

1.3. Mediante la exploración de puertos UDP es posible determinar si un sistema está o no disponible, así como encontrar los servicios asociados a los puertos UDP que encontramos abiertos.

1.4. Nmap, junto con Nessus, son dos de las herramientas mas frecuentemente utilizadas tanto por administradores de redes como por los posibles atacantes, puesto que ofrecen la mayor parte de los datos necesarios para estudiar el comportamiento de un sistema o red que se quiere atacar.

1.5. Un sniffer no es más que un sencillo programa que intercepta toda la información que pase por la interfaz de red a la que este asociado. Una vez capturado, se podrá almacenar para su análisis posterior.

1.6. Una solución para evitar esta técnica consiste en la segmentación de la red y de los equipos mediante el uso de conmutadores (switches). Al segmentar la red y los equipos, el único trafico que tendrían que ver las maquinas seria el que les pertenece, puesto que el conmutador se encarga de encaminar hacia el equipo únicamente aquellos paquetes destinados a su dirección MAC.

1.7. El objetivo de un ataque de suplantación de ARP es poder capturar tráfico ajeno sin necesidad de poner en modo promiscuo la interfaz de red. Envenenando, la tabla de ARP de los equipos involucrados en la comunicación que se quiere capturar se puede conseguir que el conmutador les haga llegar los paquetes.

1.8. El objetivo final de los ataques que explotan deficiencias de programación es la posibilidad de ejecutar un código arbitrario en el sistema operativo sobre el que se está ejecutando la aplicación vulnerable.

1.9. La aplicación sendmail es uno de los servidores de correo electrónico (protocolo SMTP) más conocidos y ha representado una auténtica pesadilla de seguridad desde que aparecieron los primeros problemas de seguridad en 1988.

1.10. Un exploit es un programa, generalmente escrito en C o ensamblador, que fuerza las condiciones necesarias para aprovecharse de un error de seguridad subyacente.

2. Evolución de la generaciones

2.1. Primera generación:

2.1.1. Ataques físicos. Encontramos aquí ataques que se centran en componentes electrónicos, como podrían ser los propios ordenadores, los cables o los dispositivos de red.

2.2. Segunda generación:

2.2.1. Ataques sintácticos. Se trata contra la lógica operativa de los ordenadores y las redes, que quieren explotar vulnerabilidades existentes en el software, algoritmos de cifrado y en protocolos.

2.3. Tercera generación:

2.3.1. Ataques semánticos. Finalmente podemos hablar de aquellos ataques que se aprovechan de la confianza de los usuarios en la información. Este tipo de ataques puede ir desde la colocación de información falsa en boletines informativos y correos electrónicos hasta la modificación del contenido de los datos en servicios de confianza.

3. Capas de la familia de protocolos TCP/IP

3.1. Capa de red:

3.1.1. Normalmente está formada por una red LAN o WAN (de conexión punto a punto) homogénea. Todos los equipos conectados a internet implementan esta capa. Todo lo que se encuentra por debajo de la IP es la capa de red física.

3.2. Capa de internet:

3.2.1. Da unidad a todos los miembros de la red y por lo tanto, es la capa que permite que todos se puedan interconectar, independientemente de si se conectan mediante línea telefónica o mediante una red local Ethernet.

3.3. Capa de transporte:

3.3.1. Da finalidad a la red. El control de flujo y de errores se lleva a cabo principalmente dentro esta capa, que solo es implementada por equipos usuarios de internet o por terminales de internet.

3.4. Capa de aplicación

3.4.1. Engloba todo lo que hay por encima de la capa de transporte. Es la capa en la que encontramos las aplicaciones que utilizan internet: clientes y servidores de web, correo electrónico, FTP, etc.

4. Vulnerabilidades más comunes de las distintas capas:

4.1. Vulnerabilidad de la capa de red.

4.1.1. Están estrechamente ligadas al medio sobre el que se realiza la conexión. Esta capa presenta problemas de control de acceso y de confidencialidad.

4.2. Vulnerabilidades de las capa internet.

4.2.1. En esta capa se puede realizar cualquier ataque que afecte un datagrama IP. Se incluyen como ataques contra esta capa las técnicas de sniffing, la suplantación de mensajes, la modificación de datos, los retrasos de mensajes y la denegación de mensajes.

4.3. Vulnerabilidades de la capa de transporte.

4.3.1. Transmite información TCP o UDP sobre datagramas IP. En esta capa podemos encontrar problemas de autenticación, de seguridad y de confidencialidad. Algunos de los ataques más conocidos en esta capa son las denegaciones de servicio debidas a protocolos de transporte.

4.4. Vulnerabilidades de la capa de aplicación.

4.4.1. La capa de aplicación presenta varias deficiencias de seguridad asociadas a sus protocolos. Debido al gran número de protocolos definidos en esta capa, la cantidad de deficiencias presentes también será superior al resto de capas.

5. Evitar la extracción de información

5.1. Una posible solución para proteger los sistemas de nuestra red contra esta extracción de información mediante herramientas de administración es la utilización de sistemas cortafuegos.

6. Exploración de puertos

6.1. Es una técnica ampliamente utilizada para identificar los servicios que ofrecen los sistemas de destino. Puede permitir el reconocimiento de los servicios ofrecidos por cada uno de los equipos encontrados en la red escogida. Con esta información, el atacante podría realizar posteriormente una búsqueda de exploits que le permitiera un ataque de intrusión en el sistema analizado.

7. Acciones de exploración mediante Nmap:

7.1. Descubrimiento de direcciones IP activas mediante una exploración de la red:

7.1.1. nmap –sP IP_ADDRESS/NETMASK

7.2. Exploración de puertos TCP activos:

7.2.1. nmap –sT IP_ADDRESS/NETMASK

7.3. Exploración de puertos UDP activos:

7.3.1. nmap –sU IP_ADDRESS/NETMASK

7.4. Exploración del tipo de sistema operativo de un equipo en red:

7.4.1. nmap –O IP_ADDRESS/NETMASK

8. Técnicas para realizar exploración de puertos TCP:

8.1. TCP connect scan.

8.1.1. Mediante el establecimiento de una conexión TCP completa, la exploración puede ir analizando todos los puertos posibles.

8.2. TCP SYN scan.

8.2.1. Enviando únicamente paquetes de inicio de conexión (SYN) por cada uno de los puertos que se quieren analizar se puede determinar si estos están abiertos o no.

8.3. TCP FIN scan.

8.3.1. Al enviar un paquete FIN a un puerto, deberíamos recibir un paquete de reset (RST) si dicho puerto está cerrado.

8.4. TCP Xmas Tree scan.

8.4.1. Esta técnica es muy similar a la anterior y también se obtiene cmo resultado un paquete de reset si el puerto está cerrado. En este caso se envían paquetes FIN, URG, y PUSH.

8.5. TCP Null scan.

8.5.1. En el caso de poner a cero todos los indicadores de la cabecera TCP, la exploración debería recibir como resultado un paquete de reset en los puertos no activos.

9. Fragmentación IP

9.1. La fragmentación divide los datagramas IP en fragmentos de menor longitud y se realiza en el nivel inferior de la arquitectura para que sea posible recomponer los datagramas IP de forma transparente en el resto de niveles.

10. Fragmentación para enmascaramiento de datagramas IP

10.1. En este caso, un atacante tratara de provocar intencionalmente una fragmentación en los datagramas que envía a nuestra red con el objetivo de que pasen desapercibidos por diferentes dispositivos de prevención y de detección de ataques que no tienen implementado el proceso de fragmentación y reensamblado de datagramas IP.

11. Ataques de denegación de servicio

11.1. Es un incidente en el cual un usuario o una organización es privada de los servicios de un recurso que esperaba obtener. Definimos denegación de servicio como la imposibilidad de acceder a un recurso o servicio por parte de un usuario legítimo. Es decir, la apropiación exclusiva de un recurso o servicio con la intención de evitar cualquier acceso a terceras partes.

11.1.1. IP Flooding

11.1.1.1. El ataque de IP Flooding se basa en una inundación masiva de la red mediante datagramas IP. Este ataque se realiza habitualmente en redes locales o en conexiones con un gran ancho de banda. Consiste en la generación de tráfico de basura con el objetivo de conseguir la degradación del servicio.

11.1.2. Smurf

11.1.2.1. Este tipo de ataque de denegación de servicios es una variante del ataque IP Flooding, pero realizando una suplantación de las direcciones de origen y destino de una petición ICMP del tipo echo-request.

11.1.3. TCP/SYN flooding

11.1.3.1. Este ataque se aprovecha del número de conexiones que están esperando para establecer un servicio en particular para conseguir la denegación del servicio.

11.1.4. Teardrop

11.1.4.1. Este ataque intentara realizar una utilización fraudulenta de la fragmentación IP para poder confundir al sistema operativo en la reconstrucción del datagrama original y colapsar así el sistema.

11.1.5. Snork

11.1.5.1. Este ataque se basa en una utilización malintencionada de dos servicios típicos en sistemas Unix: el servicio CHARGEN (CHARacter GENerator, generador de caracteres) y el servicio ECHO. Este ataque consiste en el cruce de los servicios ECHO y CHARGEN, mediante el envio de una petición falsa al servicio CHARGEN, habiendo colocado previamente como dirección de origen la dirección IP de la máquina que hay que atacar.

11.1.6. Ping of death

11.1.6.1. El ataque ping de la muerte, es uno de los ataques más conocidos y que más artículos de prensa ha generado. Al igual que otros ataques de negación existentes, utiliza una definición de longitud máxima de datagrama IP fraudulenta. Se basa en la posibilidad de construir, mediante el comando ping, un datagrama IP superior a los 65535 bytes, fragmentados en N trozos, con el objetivo de provocar incoherencias en el proceso de reesamblado.

11.1.7. Ataques distribuidos

11.1.7.1. Es aquel en el que una multitud de sistemas (que previamente han sido comprometidos) cooperan entre ellos para atacar a un equipo objetivo, causándole una denegación de servicio. Aquí existen múltiples equipos sincronizados de forma distribuida que se unen para atacar un mismo objetivo.

11.1.7.1.1. Ataques de denegación de servicio distribuidos

12. El tráfico generado por IP Flooding puede ser:

12.1. Aleatorio.

12.1.1. Cuando la dirección de origen o destino del paquete IP es ficticia o falsa.

12.2. Definido o dirigido.

12.2.1. Cuando la dirección de origen, destino, o incluso ambas, en la de la maquina que se recibe el ataque.

13. Los datagramas IP utilizados podrían corresponder a:

13.1. UDP.

13.1.1. Con el objetivo de generar peticiones sin conexión a ninguno de los puertos disponibles.

13.2. ICMP.

13.2.1. Generando mensajes de error o de control de flujo.

13.3. TCP.

13.3.1. Para generar peticiones de conexión con el objetivo de saturar los recursos de red de la maquina atacada.

14. Deficiencias de programación

14.1. Desbordamiento de buffer

14.1.1. Se basa en la posibilidad de escribir información más allá de los límites de una tupla almacenada en la pila de ejecución. El éxito de este ataque será posible en aquellos programas que utilizan funciones de manipulación de buffers que no comprueban los límites de las estructuras de los datos.

14.2. Cadenas de formato

14.2.1. Los ataques que explotan deficiencias de programación mediante cadenas de formato se producen en el momento de imprimir o copiar una cadena de caracteres desde un buffer sin las comprobaciones necesarias.

15. Tareas que ayudaran a implementar las siguientes necesidades:

15.1. Prevención y protección.

15.1.1. Mediante la instalación de sistemas cortafuegos y de mecanismos criptográficos para garantizar la privacidad y la integridad de la información en las comunicaciones, será posible llegar a conseguir un primer nivel de prevención y de protección contra la mayor parte de los ataques que hemos visto.

15.2. Autenticación.

15.2.1. Es posiblemente una de las necesidades más importante, dado que el hecho de conseguir privacidad e integridad no tendría ningún sentido si no se garantizara la identificación del destinatario.

15.3. Detección y respuesta.

15.3.1. Así como los elementos anteriores los hemos identificado como básicos e imprescindibles para poder ofrecer un nivel de seguridad mínimo, es necesaria la utilización de mecanismos complementarios para detectar los ataques que no se hayan podido evitar y tomar las acciones adecuadas para neutralizarlos.

16. Glosario

16.1. Address Resolution Protocol (ARP):

16.1.1. Protocolo de familia TCP/IP que asocia direcciones IP a direcciones MAC.

16.2. Denegación de servicio (DoS):

16.2.1. Ataque que hace una apropiación exclusiva de un recurso o servicio con la intención de evitar cualquier acceso a terceras partes.

16.3. Desbordamiento de buffer:

16.3.1. Posibilidad de corromper la pila de ejecución para modificar el valor de retorno de una llamada a función y provocar la ejecución de código abierto.

16.4. Escáner de vulnerabilidades:

16.4.1. Aplicación que permite comprobar si un sistema es vulnerable a un conjunto de deficiencias de seguridad.

16.5. Exploit:

16.5.1. Aplicación que fuerza las condiciones necesarias para aprovecharse de un error de programación que permite vulnerar su seguridad.

16.6. Exploración de puertos:

16.6.1. Técnica utilizada para identificar los servicios que ofrece un sistema.

16.7. Rootkit:

16.7.1. Recopilacion de herramientas utilizadas en un ataque de intrusión para garantizar la ocultación de huellas, garantizar futuras conexiones, realizar otros ataques al sistema.

16.8. Shellcode:

16.8.1. Código ensamblador inyectado en memoria que un exploit tratara de ejecutar.

16.9. Sniffer:

16.9.1. Aplicación que intercepta toda la información que pase por la interfaz de red a la que este asociado.

16.10. Cortafuegos:

16.10.1. Elemento de prevención que realizara un control de acceso para proteger una red de los equipos del exterior.