Yersinia : comment rendre malade son administrateur réseau
Yersinia est le nom de la bactérie de la peste. L’outil porte bien son nom: il attaque les protocoles de couche 2 (STP, CDP, DTP, DHCP, VTP, HSRP) et rend votre switch malade. Le titre de cet article n’est pas une métaphore: c’est ce qui arrive réellement à un administrateur réseau qui découvre qu’une station avec Yersinia et un simple câble peut prendre le contrôle de sa topologie de switch.
Les attaques, une par protocole
STP (Spanning Tree Protocol). Yersinia envoie des BPDU en se prétendant root bridge avec une priorité inférieure. Le switch recalcule l’arbre et le traffic passe par la station de l’attaquant. Votre switch a été re-rooté et tout le trafic L2 transite par le laptop du stagiaire.
CDP (Cisco Discovery Protocol). Yersinia injecte des paquets CDP faux pour faire croire à des équipements qui n’existent pas. Le NMS de l’admin commence à cartographier des switches fantômes.
DTP (Dynamic Trunking Protocol). Yersinia négocie un trunk avec le switch. Si le port est en mode dynamic auto (le défaut Cisco historique), le switch accepte et l’attaquant voit TOUS les VLANs qui traversent le port. C’est l’attaque la plus simple et la plus dévastatrice.
DHCP. Yersinia peut saturer le serveur DHCP (découverte de tous les IP disponibles) ou se faire passer pour un serveur DHCP et empoisonner les clients.
VTP. Injection de VTP avec un numéro de révision supérieur et la base de VLANs de l’admin est écrasée. Le domaine VTP entier reconfiguré par un laptop.
Votre switch ne vous sauvera pas
Le fond du problème: la couche 2 n’authentifie RIEN par défaut. Le switch croit ce que le port lui dit. Yersinia exploite cette confiance naturelle de l’équipement réseau.
Les contre-mesures, chacune en une ligne de config Cisco:
spanning-tree portfast bpduguard default
switchport port-security
switchport mode access (jamais dynamic auto)
no cdp enable (sur les ports d'accès)
Chacune ferme une porte de Yersinia. Les quatre ensemble ferment le batiment.
Ce que ça vaut
Yersinia ne sert pas à attaquer le réseau du voisin (les switches ont des contre-mesures, il suffit de les activer). Il sert à tester le VÔTRE. Si vous administrez un réseau Cisco et que vous n’avez jamais lancé Yersinia contre votre propre infrastructure, vous ne savez pas si vos contre-mesures sont actives.
Et l’exercice est révélateur: lancez Yersinia, regardez votre switch et constatez que le mode par défaut est le mode vulnérable. Chaque contre-mesure ci-dessus doit être activée EXPLICITEMENT. La sécurité n’est pas le défaut, elle est la configuration.