Professional Documents
Culture Documents
en capa 2 que hemos visto en entradas anteriores, en este post nos centraremos
en STP (Spanning Tree Protocol), protocolo usado en la red para evitar bucles a
nivel 2 en nuestra topologa.
Es habitual ver trfico similar a este cuando capturas tu propia interfaz (no entro a
valorar si dispones de permisos de administrador o si el equipo es un servidor o un
equipo de usuario):
13:44:16.651348 STP 802.1d, Config, Flags [none], bridge-id
8001.00:24:f7:31:65:00.8016, length 43
message-age 0.00s, max-age 20.00s, hello-time 2.00s, forwarding-delay
15.00s
root-id 8001.00:24:f7:31:65:00, root-pathcost 0
13:44:18.660589 STP 802.1d, Config, Flags [none], bridge-id
8001.00:24:f7:31:65:00.8016, length 43
message-age 0.00s, max-age 20.00s, hello-time 2.00s, forwarding-delay
15.00s
root-id 8001.00:24:f7:31:65:00, root-pathcost 0
13:44:20.661034 STP 802.1d, Config, Flags [none], bridge-id
8001.00:24:f7:31:65:00.8016, length 43
message-age 0.00s, max-age 20.00s, hello-time 2.00s, forwarding-delay
15.00s
root-id 8001.00:24:f7:31:65:00, root-pathcost 0
13:44:22.666010 STP 802.1d, Config, Flags [none], bridge-id
8001.00:24:f7:31:65:00.8016, length 43
message-age 0.00s, max-age 20.00s, hello-time 2.00s, forwarding-delay
15.00s
root-id 8001.00:24:f7:31:65:00, root-pathcost 0
13:44:24.670848 STP 802.1d, Config, Flags [none], bridge-id
8001.00:24:f7:31:65:00.8016, length 43
message-age 0.00s, max-age 20.00s, hello-time 2.00s, forwarding-delay
15.00s
root-id 8001.00:24:f7:31:65:00, root-pathcost 0
Como se puede ver en la captura, el trfico se corresponde con tramas BPDU
(Bridge Protocol Data Units) del protocolo STP.
Sin entrar en detalles en el funcionamiento del protocolo, recibir este tipo de trfico
implica que en los switches de capa de acceso no existen medidas de seguridad
para gestionar dicho trfico hacia los equipos finales, lo cual podra permitir a un
atacante enviar a la red tramas BPDU falsas, de forma que los dispositivos tengan
que recalcular sus rutas, consumiendo recursos y creando una inestabilidad en la
red, la cual, en ltima instancia, podra provocar una denegacin de servicio, o por
el contrario, podramos intentar cambiar la topologa de la red para que parte del
Status
Vlan
err-disabled 1
Por lo tanto, el puerto queda sin servicio. No obstante, el problema de este modo
de funcionamiento es que nosotros mismos estamos facilitando la denegacin de
servicio ya que el atacante puede ir conectndose a distintas interfaces, de forma
que tras lanzar el ataque se van deshabilitando y el siguiente usuario (legtimo) no
802.1w o (Rapid STP) RSTP es una revisin del 802.1d la cual aplica algunos cambios en
el algoritmo para agilizarlo, as la recuperacin tras un fallo es ms rpida. En general
mejora su rendimiento mientras se es compatible con los dispositivos que solo soportan el
STP original.
802.1s o Mltiple STP (MSTP), mejora el 802.1q permitiendo a los bridges a gestionar
mltiples spanning tres cada uno por grupo de VLAN, incrementado la escalabilidad.
Funcionamiento de STP
El objetivo es evitar bucles y recuperacin ante fallos. Para cumplirlo el algoritmo crea un
rbol de switches, la raz es aquel switch con un ID ms bajo, para identificarlo, todos los
switches mandan a multicast las Bridge Protocol Data Units (BPDU), es un frame de nivel
2 en el cual va incluido el ID del switch (prioridad + MAC del dispositivo), cuando un
switch recibe un BPDU con un ID menos que el suyo deja de enviar su BPDU, as solo el
switch con el ID ms bajo se mantendr generando BPDUs y se convierte en el switch raz.
STP utiliza un sistema de costes para evitar los bucles, cada puerto es configurado con un
coste, la mayora de los switches configuran sus el coste de sus puertos en relacin con la
velocidad de los mismos.
Cada vez que un puerto recibe una BPDU el coste de ese puerto se incrementa con el coste
que contiene la BPDU, el switch raz enva BPDUs de coste cero. Evidentemente si se
reciben ms de una BPDU, las BPDUs de mayor coste se ponen en modo bloqueado.
Cada cierto tiempo, el switch raz manda un BPDU. Cuando un switch recibe un BPDU con
un ID mayor que el suyo propio, intenta convertirse en raz mandando su BPDU. Cuando
un bridge recibe una BPDU en el que el coste hasta la raz es mayor que el coste que l
mismo puede ofrecer por uno de sus puertos, intenta convertirse en puente designado para
ese camino. Si el coste es el mismo, se compararan identificadores.
Existen tambin los denominados TCN BPDUs, son BPDUs que anuncian cambios en la
topologa, cuando son recibidos (despus de un proceso de confirmaciones) los switches
reducen el tiempo para actualizar sus tablas de forwarding.
Por cierto, y ya que no lo he dicho antes, este protocolo no implementa ningn sistema de
autenticacin ni proteccin, es adems en claro
Ataques al STP
Convertirse en bridge raz
Este ataque es tan fcil como inyectar tramas BPDUs donde nos ponemos un ID ms bajo
que el del switch raz, sea la misma prioridad (por defecto el del raz es 32768) y una
MAC ms baja, o directamente ID=0 As nos convertiramos en bridge raz.
Hace falta que os diga ms?, desde aqu podemos convertir nuestro sistema en un switch si
tiene dos tarjetas de red (Yersinia te facilita la tarea), y desde esta posicin podramos
realizar ataques MiTM sobre el trfico que pasara por nuestro sistema.
DOS por inundacin de configuration BPDUs y TCN BPDUs
Mandar mltiples (miles) configuration BPDUs por segundo hace que algunos dispositivos
fallen al procesarlas e incrementen el uso de su CPU hasta un 99%. Adems, cada vez que
se manda un TCN BPDU, el bridge raz debe contestar con un TC-ACK , y cada vez que
esta confirmacin es recibida, los switches deben reducir el tiempo para actualizar sus
tablas de forwarding.
Soluciones
Root Guard
Cuando configuramos root guard, configuramos en que puertos puede estar el switch raz y
en cuales no, as si se recibe una BPDU con ID ms bajo en uno de los puertos con root
guard el mismo se pone en modo STP inestable y deja de transmitir paquetes.
BPDU-Guard
Este sistema permite a los administradores forzar la topologa de arboles y mantenerla
predecible, aquellos dispositivos que estn fuera de la topologa configurada con BPDUguard no podrn influir en la topologa STP. La recepcin de BPDUs fuera de este mbito
hace que BPDU guard deshabilite el puerto.
Hasta el prximo capitulo