Seguridad en Redes
description
Transcript of Seguridad en Redes
Seguridad en Sistemas: Spoofing - Redirect
2
Introducción (1)Introducción (1)• Una computadora conectada a una red
Ethernet tiene dos direcciones– Dirección de NIC (dirección MAC)
• Globalmente única y no modificable que se almacena en la NIC.
• El header Ethernet contiene la dirección MAC de las máquinas fuente y destino.
– Dirección IP• Cada computadora en una red debe tener una
dirección IP única.• Virtual y asignada por software.
Seguridad en Sistemas: Spoofing - Redirect
3
1. Paquetes Ethernet1. Tienen un header Ethernet (delivery)2. Los paquetes se fraccionan en frames3. Se envían por el cable hacia un switch (por ej.)4. El switch decide por cuál port debe mandar el
frame. Para ello busca la dirección destino del frame en una tabla interna que mapea números de ports y direcciones MAC.
Introducción (2)Introducción (2)
Seguridad en Sistemas: Spoofing - Redirect
4
• En el momento en que el frame Ethernet es construido a partir de un paquete IP no se tiene idea de la MAC de la máquina destino.
• La única información disponible es la dirección IP destino.
• Debe existir una forma para que el protocolo Ethernet obtenga la MAC de la máquina destino dado el IP destino.
• Aquí es donde el protocolo ARP (Address Resolution Protocol) aparece en escena.
Introducción (3)Introducción (3)
Seguridad en Sistemas: Spoofing - Redirect
5
Adress Resolution & Reverse Adress ResolutionAdress Resolution & Reverse Adress Resolution
Seguridad en Sistemas: Spoofing - Redirect
6
Seguridad en Sistemas: Spoofing - Redirect
7
Seguridad en Sistemas: Spoofing - Redirect
8
Encapsulamiento de ARPEncapsulamiento de ARP
Seguridad en Sistemas: Spoofing - Redirect
9
1. Obtener la dirección IP del destino.2. Crear un mensaje ARP de pedido (request).
– Insertar la dirección física del emisor (sender).– Insertar la dirección IP del emisor.– Insertar la dirección IP del destino.– La dirección física del destino se llena con 0.
3. El mensaje se pasa a la capa link donde es encapsulado en un frame.– Dirección fuente: dirección física del emisor.– Dirección destino: dirección broadcast.
Funcionamiento del ARP (1)Funcionamiento del ARP (1)
Seguridad en Sistemas: Spoofing - Redirect
10
4. Cada host o router en la red recibe el frame.– Todos los equipos lo pasan al ARP.– Todas las máquinas, excepto la destino, descartan
el paquete.
5. La máquina destino responde con un mensaje ARP que contiene su dirección física.– Mensaje unicast.
6. El emisor recibe el mensaje de respuesta y obtiene la dirección física de la máquina destino.
Funcionamiento del ARP (2)Funcionamiento del ARP (2)
Seguridad en Sistemas: Spoofing - Redirect
11
Seguridad en Sistemas: Spoofing - Redirect
12
Seguridad en Sistemas: Spoofing - Redirect
13
Proxy ARPProxy ARP
Seguridad en Sistemas: Spoofing - Redirect
14
Seguridad en Sistemas: Spoofing - Redirect
15
Seguridad en Sistemas: Spoofing - Redirect
16
Encapsulamiento RARPEncapsulamiento RARP
Seguridad en Sistemas: Spoofing - Redirect
17
– Para evitar el envío de un paquete ARP request cada vez que se necesite un host puede mantener una cache con la dirección IP y su correspondiente dirección física en su tabla ARP (ARP cache).
– Cada entrada en la tabla ARP suele ser “envejecida” para que luego de cierto tiempo de inactividad sea eliminada.
– Cuando una computadora recibe un ARP reply se actualiza su entrada en la tabla ARP.
– El protocolo ARP es stateless, por lo tanto la mayoría de los sistemas operativos actualizarán su cache si reciben una respuesta (reply), sin importar si enviaron o no un pedido (request).
Seguridad en Sistemas: Spoofing - Redirect
18
• Construir respuestas ARP falsas.• Una máquina target puede ser “convencida” de
enviar frames a la computadora B, frames que originalmente estaban destinados a A.
• La computadora A no tendrá idea de esta redirección.
• Este proceso de actualizar la cache ARP de la máquina target se conoce como
“ARP poisoning”.
ARP SpoofingARP Spoofing
Seguridad en Sistemas: Spoofing - Redirect
19
AIP:10.0.0.1
MAC:aa:aa:aa:aa
BIP:10.0.0.2
MAC:bb:bb:bb:bb
HackerIP:10.0.0.3
MAC:cc:cc:cc:cc
switch
IP MAC
10.0.0.2 bb:bb:bb:bb
ARP cache
IP MAC
10.0.0.1 aa:aa:aa:aa
ARP cache
ARP reply falsoIP:10.0.0.2
MAC:cc:cc:cc:ccA
RP
repl
y fa
lso
IP:1
0.0.
0.2
MA
C:c
c:cc
:cc:
cc
ARP reply falsoIP:10.0.0.2
MAC:cc:cc:cc:cc
Seguridad en Sistemas: Spoofing - Redirect
20
AIP:10.0.0.1
MAC:aa:aa:aa:aa
BIP:10.0.0.2
MAC:bb:bb:bb:bb
HackerIP:10.0.0.3
MAC:cc:cc:cc:cc
switch
IP MAC
10.0.0.2 cc:cc:cc:cc
ARP cache
IP MAC
10.0.0.1 aa:aa:aa:aa
ARP cache
La cache de A fue “envenenada”.
Seguridad en Sistemas: Spoofing - Redirect
21
• Desde ahora todos los paquetes que A pretende enviar a B van a la máquina del hacker.
• La entrada en la cache tiende a expirar por lo tanto deberá enviar nuevamente el ARP reply.– ¿Qué tan seguido?– Depende del sistema particular.– Generalmente cada 40 segundos es suficiente.
• Adicionalmente el hacker querrá que su driver Ethernet no “hable” demasiado:– Por ejemplo puede efectuar un ifconfig -arp
ARP SpoofingARP Spoofing
Seguridad en Sistemas: Spoofing - Redirect
22
• Complicación (1)– Algunos sistemas pueden tratar de actualizar su
cache enviando un pedido ARP (unicast).• Como cuando mi mujer me llama sólo para saber si
estoy aquí. – Un pedido de este tipo puede estropear las
cosas porque puede cambiar la entrada ARP de la víctima eliminando la entrada que el hacker falsificó.
• Una computadora también puede guardar en su cache la dirección MAC que apareció en el pedido ARP.
Seguridad en Sistemas: Spoofing - Redirect
23
– Complicación (2)– Más vale prevenir que curar
• Se logra alimentando el sistema “mujer” con respuestas y de esta forma nunca necesitará preguntar.
• Un paquete (real) desde B hacia A será enviado por la máquina de hacker.
• ¿Qué tan seguido?– Una vez más: 40 segundos es suficiente.
Seguridad en Sistemas: Spoofing - Redirect
24
AtaqueAtaque Man-in-the-Middle (1)Man-in-the-Middle (1)
• Un hacker inserta su computadora en el camino (comunicaciones) entre dos máquinas target.
• El hacker hará el forward de los frames entre estas dos computadoras y así las comunicaciones no se interrumpirán.
• Por ejemplo Hunt, Ettercap, etc.– Se consiguen facilmente en la web.
Seguridad en Sistemas: Spoofing - Redirect
25
• El ataque se efectúa de la siguiente forma:– Sea X la máquina del hacker.– Sean T1 y T2 las máquinas target.– X envenena las caches ARP de T1 y de T2.1. T1 asocia el IP de T2 con la MAC de X.2. T2 asocia el IP de T1 con la MAC de X.3. Todo el tráfico entre T1 y T2 pasa primero
por X.
AtaqueAtaque Man-in-the-Middle (2)Man-in-the-Middle (2)
Seguridad en Sistemas: Spoofing - Redirect
26
T1IP:10.0.0.1
MAC:aa:aa:aa:aa
T2IP:10.0.0.2
MAC:bb:bb:bb:bb
HackerIP:10.0.0.3
MAC:cc:cc:cc:cc
switch
IP MAC
10.0.0.2 bb:bb:bb:bb
ARP cache
IP MAC
10.0.0.1 aa:aa:aa:aa
ARP cache
ARP reply falsoIP:10.0.0.2
MAC:cc:cc:cc:cc
AR
P re
ply
fals
oIP
:10.
0.0.
2M
AC
:cc:
cc:c
c:cc
ARP reply falsoIP:10.0.0.2
MAC:cc:cc:cc:cc
Seguridad en Sistemas: Spoofing - Redirect
27
T1IP:10.0.0.1
MAC:aa:aa:aa:aa
T2IP:10.0.0.2
MAC:bb:bb:bb:bb
HackerIP:10.0.0.3
MAC:cc:cc:cc:cc
switch
IP MAC
10.0.0.2 cc:cc:cc:cc
ARP cache
IP MAC
10.0.0.1 aa:aa:aa:aa
ARP cache
La cache de T1 fue envenenada.
Seguridad en Sistemas: Spoofing - Redirect
28
T1IP:10.0.0.1
MAC:aa:aa:aa:aa
T2IP:10.0.0.2
MAC:bb:bb:bb:bb
HackerIP:10.0.0.3
MAC:cc:cc:cc:cc
switch
IP MAC
10.0.0.2 cc:cc:cc:cc
ARP cache
IP MAC
10.0.0.1 aa:aa:aa:aa
ARP cache
ARP replies falsasIP:10.0.0.1
MAC:cc:cc:cc:cc
AR
P re
plie
s fal
sas
IP:1
0.0.
0.1
MA
C:c
c:cc
:cc:
cc
Seguridad en Sistemas: Spoofing - Redirect
29
T1IP:10.0.0.1
MAC:aa:aa:aa:aa
T2IP:10.0.0.2
MAC:bb:bb:bb:bb
HackerIP:10.0.0.3
MAC:cc:cc:cc:cc
switch
IP MAC
10.0.0.2 cc:cc:cc:cc
ARP cache
IP MAC
10.0.0.1 cc:cc:cc:cc
ARP cache
La cache de T2 fue envenenada.
Seguridad en Sistemas: Spoofing - Redirect
30
Mensaje que debería haber ido a T2
switch
El Hackerhará el fw delmensaje
T1IP:10.0.0.1
MAC:aa:aa:aa:aa
T2IP:10.0.0.2
MAC:bb:bb:bb:bb
HackerIP:10.0.0.3
MAC:cc:cc:cc:cc
ARP cache ARP cache
IP MAC IP MAC
10.0.0.2 cc:cc:cc:cc 10.0.0.1 cc:cc:cc:cc
Seguridad en Sistemas: Spoofing - Redirect
31
El hacker hará el fw del mensaje
switch
Mensaje quedebería ir aT1
T1IP:10.0.0.1
MAC:aa:aa:aa:aa
T2IP:10.0.0.2
MAC:bb:bb:bb:bb
HackerIP:10.0.0.3
MAC:cc:cc:cc:cc
ARP cache ARP cache
IP MAC IP MAC
10.0.0.2 cc:cc:cc:cc 10.0.0.1 cc:cc:cc:cc
Seguridad en Sistemas: Spoofing - Redirect
32
– Sniffing• Al utilizar ARP spoofing todo el tráfico puede
dirigirse hacia el hacker.• Ahora es posible hacer sniffing en una red
switcheada.– DoS (Denial of Service)
• Actualizar una cache ARP con MACs no existentes puede provocar que se descarten frames.
• Estas MACs inexistentes pueden envierse a todos los clientes en la red con el objetivo de causar un DoS.
Tipos posibles de Ataque (1)Tipos posibles de Ataque (1)
Seguridad en Sistemas: Spoofing - Redirect
33
• Esto también puede llevar a un ataque post-MiM: las computadoras target seguirán enviando frames a la MAC del atacante aún despues de haber sido removidas del camino de comunicación.
• El hacker debe restaurar las entradas ARP para lograr un ataque MiM “limpio”.
– Hijacking• Utilizando el ataque MiM todo el tráfico de una
conexión TCP pasará primero por el hacker.• Comparado con los exploits TCP ahora es mucho
más sencillo hacer el hijack (apropiación) de una sesión TCP.
Tipos posibles de Ataque (2)Tipos posibles de Ataque (2)
Seguridad en Sistemas: Spoofing - Redirect
34
– Broadcasting• Se pueden mandar frames por broadcast (a toda la
red) simplemente seteando la dirección destino a FF:FF:FF:FF:FF:FF (broadcast MAC).
• Si se inunda la red con respuestas ARP falsificadas capaces de setear la MAC del gateway a la dirección de broadcast, toda la información que debería enviarse a redes externas es ahora enviada por broadcast a la red local, habilitando el sniffing.
• Si un hacker escucha los pedidos ARP y genera respuestas con la dirección broadcast se enviarán grandes volúmenes de información a las redes.
Tipos posibles de Ataque (3)Tipos posibles de Ataque (3)
Seguridad en Sistemas: Spoofing - Redirect
35
– Cloning• Supuestamente una dirección MAC es única.• Es posible cambiar la MAC de una placa de red
(quemada en su ROM)• En algunos sistemas operativos es posible cambiar
(a nivel del S.O.) la MAC.– ifconfig
• Un atacante puede causar un DoS en una máquina target, luego asignarse a sí mismo el IP y la MAC de la máquina target y así recibir todos los frames destinados hacia la máquina que acaba de “reemplazar”.
Tipos posibles de Ataque (4)Tipos posibles de Ataque (4)
Seguridad en Sistemas: Spoofing - Redirect
36
DefensasDefensas contracontra elel ARPARP Spoofing (1)Spoofing (1)
• No hay defensa universal.• Utilizar entradas ARP estáticas
– No pueden actualizarse.– Las respuestas ARP son ignoradas. – La tabla ARP necesita una entrada estática por
cada máquina presente en la red.– Gran overhead
• Para diseminar estas tablas.• Mantener las tablas actualizadas.
Seguridad en Sistemas: Spoofing - Redirect
37
– Windows todavía acepta respuestas ARP falsificadas y es capaz de actualizar una entrada estática con la MAC falsa.
• Port Security– También conocido como port binding o MAC
Binding.– Es una característica presente en los switches de alta
calidad.– Previene cambios en las tablas MAC de un switch.
• A menos que un administrador lo haga manualmente.– No aplicable ni a redes grandes ni a redes que
utilizan DHCP.
DefensasDefensas contracontra elel ARPARP Spoofing (2)Spoofing (2)
Seguridad en Sistemas: Spoofing - Redirect
38
• Arpwatch– Programa UNIX gratis que “escucha”
respuestas ARP en una red.– Construye una tabla donde se asocian IPs y
MACs y se almacena en un archivo.– Cuando cambia un par MAC/IP (flip-flop)
envía un e-mail al administrador.– En redes donde se producen frecuentes flip-
flops, por ejemplo si está habilitado el servicio de DHCP, es difícil detectar flip-flops provocados por atacantes.
DefensasDefensas contracontra elel ARPARP Spoofing (3)Spoofing (3)
Seguridad en Sistemas: Spoofing - Redirect
39
• RARP (Reverse ARP)– Se pide un IP a partir de una MAC conocida. – Detecta el problema de MAC cloning.– Se detecta el cloning cuando se reciben
múltiples respuestas para un único RARP.
DefensasDefensas contracontra elel ARPARP Spoofing (4)Spoofing (4)
Seguridad en Sistemas: Spoofing - Redirect
40
• Diferentes S.Os. pueden comportarse distinto– Solaris acepta actualizaciones ARP solamente
después de un período de timeout.– Para “envenenar” la cache de una máquina Solaris
un atacante tendría que lograr un DoS sobre la segunda máquina target.
– Este DoS puede detectarse empleando algunas herramientas.
Notas (1)Notas (1)
Seguridad en Sistemas: Spoofing - Redirect
41
• ARP gratuito– El IP fuente y destino en el pedido ARP es el
mismo.– En forma de broadcast.– Algunas implementaciones lo reconocen como
un caso especial, donde un sistema envía información actualizada acerca de él mismo a todo el mundo.
– Un solo paquete puede estropear toda la red.
Notas (2)Notas (2)
Seguridad en Sistemas: Spoofing - Redirect
43
• El mensaje ICMP route redirect es general-mente enviado por el default router al sistema para indicar que existe una ruta más corta para un destino particular.
• Un hacker puede falsificar un mensaje ICMP redirect para lograr un efecto similar al provocado por el problema de ARP cache poisoning.
IntroducciónIntroducción
Seguridad en Sistemas: Spoofing - Redirect
44
InternetInternet ControlControl MessageMessage ProtocolProtocol (ICMP)(ICMP)
• El ICMP fue diseñado para hacer frente a las deficiencias del protocolo IP– el protocolo IP no tiene mecanismos de reporte y
corrección de errores.• Por ejemplo descartar un datagrama debido a que no
se encuentra el router o el campo time-to-live tiene un valor 0.
– Al protocolo IP también le falta un mecanismo de manejo de queries.
• Por ejemplo se necesita información de otro host o de un router.
Seguridad en Sistemas: Spoofing - Redirect
45
Posición del ICMP en capa NetworkPosición del ICMP en capa Network
Seguridad en Sistemas: Spoofing - Redirect
46
El ICMP forma un protocolo de capa de red por sí mismo. Sin embargo sus mensajes no se pasan directamente a la capa link, primero son encapsulados en datagramas IP.
Mensaje ICMPMensaje ICMP
Seguridad en Sistemas: Spoofing - Redirect
47
Formato general de un mensaje ICMPFormato general de un mensaje ICMP
Seguridad en Sistemas: Spoofing - Redirect
48
3: Destination unreachable 4: Source quench11: time exceeded12: Parameter Problem 5: Redirection
8,0: Echo request or reply13,14: Timestamp request and reply17,18: Address mask request and reply10,9: Route solicitation and advertisement
Mensajes ICMPMensajes ICMP
Seguridad en Sistemas: Spoofing - Redirect
49
• Cuando un router o un host necesita enviar un paquete destinado a otra red, debe conocer la dirección IP apropiada del router próximo.
• Cada router y cada host debe tener una tabla de ruteo.
• Por cuestiones de eficiencia usualmente los hosts no toman parte en el proceso de actua-lización del ruteo.– Ruteo estático.
Redirección (1)Redirección (1)
Seguridad en Sistemas: Spoofing - Redirect
50
• Habitualmente la tabla de ruteo de un host tiene un número limitado de entradas.– Conoce el IP de un único router, el default router.
• El host puede enviar un datagrama (a otra red) a un router equivocado.
• El router que recibe estos datagramas hará– un forward del datagrama hacia el router correcto.– una actualización de la tabla de ruteo del host
enviándole un mensaje de redirección.
Redirección (2)Redirección (2)
Seguridad en Sistemas: Spoofing - Redirect
51
Redirección (3)Redirección (3)
Seguridad en Sistemas: Spoofing - Redirect
52
Code 0: Redirección para ruteo específico de red.Code 1: Redirección para ruteo específico de host.Code 2: Redirección para ruteo específico de red basado
en el tipo de servicio especificado. Code 3: Redirección para ruteo específico de host basado
en el tipo de servicio especificado.
Redirección (4)Redirección (4)
Seguridad en Sistemas: Spoofing - Redirect
53
Redirección (5)Redirección (5)
Seguridad en Sistemas: Spoofing - Redirect
54
• Algunos hosts realizan algunos chequeos antes de modificar su tabla de ruteo al recibir un mensaje ICMP redirect.
• Estos chequeos tratan de prevenir problemas a partir de un router/host que se encuentra funcionando mal o un usuario malicioso, que esta modificando una tabla de ruteo de un sistema.
• Sin embargo no es difícil crear un mensaje ICMP falso, el cual puede pasar exitosamente todos estos tests.
Redirección (6)Redirección (6)
Seguridad en Sistemas: Spoofing - Redirect
55
• Items que pueden ser verificados.• El nuevo router debe encontrarse conectado
en forma directa a la red. 1. El mensaje de redirección debe ser enviado
por el router actual para ese destino.2. El mensaje de redirección no puede decirle al
host que utilice al emisor del mensaje de redirección como router.
3. La ruta que está siendo modificada debe ser una ruta indirecta.
Redirección (7)Redirección (7)
Seguridad en Sistemas: Spoofing - Redirect
56
• Un hacker puede falsificar un mensaje ICMP redirect para lograr un efecto similar al producido por ARP cache poisoning.
• Suponga que el hacker (137.189.89.179) trata de convencer al target (137.189.89.176) que el camino más corto a 123.123.123.123 es a través de 137.189.89.179. Suponga que el router original es 137.189.91.254.
• Se enviará el siguiente paquete falso.
ICMP SpoofingICMP Spoofing
Seguridad en Sistemas: Spoofing - Redirect
57
VER HLEN Service Type PACKET_LEN
Identification Flag Fragmentation offset
Time to live Protocol (ICMP) Header Checksum
Source IP address (137.189.91.254)
Destination IP address (137.189.89.176)
Option
Type (5) Code (1) Checksum
IP address of the target router (137.189.89.179)
VER HLEN Service Type PACKET_LEN
Identification Flag Fragmentation offset
Time to live Protocol (IPPROTO_IP) Header Checksum
Source IP address (137.189.89.176)
Destination IP address (123.123.123.123)
Option
8 bytes of data
No necesita llenarse en el mensaje falso
IP header
ICM
PEm
bedded header
Seguridad en Sistemas: Spoofing - Redirect
58
• Algunas propiedades del ICMP redirect– A diferencia de las entradas de la cache ARP
las entradas de ruteo no expiran con el tiempo.• en algunos sistemas si expiran (ej. redhat 7.2)
– El ataque puede lanzarse desde cualquier lugar.– Se puede conseguir evitar que el target se
comunique con cualquier dirección fuera de su subnet (DoS).
PropiedadesPropiedades
Seguridad en Sistemas: Spoofing - Redirect
59
• Sniffing• Man-in-the-middle• Session hijack• DoS
– Nameserver – Router
Tipos posibles de AtaqueTipos posibles de Ataque
Seguridad en Sistemas: Spoofing - Redirect
60
• Firewall– Bloquea todos los mensajes ICMP redirect
provenientes del exterior de la LAN.– No es bueno confiar ciegamente y unicamente
en el firewall.– No puede bloquear hackers que tienen acceso a
nuestra red local.• Simplemente descartar todos los ICMP
redirect en su host.
Prevención (1)Prevención (1)
Seguridad en Sistemas: Spoofing - Redirect
61
• Para redhat 6.1
• Para redhat 6.2 o superior
• Debe resetear su red para que los cambios tengan efecto
for f in /proc/sys/net/ipv4/adone
Agregar las siguientes líneas al archivo /etc/sysctl.conf: # Disable ICMP Redirect Acceptance net.ipv4.conf.all.accept_redirects = 0
/etc/rc.d/init.d/network restart
Prevención (2)Prevención (2)