Le protocole spanning-tree - doc. protocole spanning-tree.pdf  Le protocole spanning-tree (ou STP

  • View
    215

  • Download
    0

Embed Size (px)

Text of Le protocole spanning-tree - doc. protocole spanning-tree.pdf  Le protocole spanning-tree (ou...

28 www.hakin9.org hakin9 Hors Srie 1/2008

Heureusement, les protocoles couram-ment usits sur les LAN possdent la plupart du temps des fonctionnalits permettant de les scuriser plus fortement quen implmentant la simple configuration par dfaut.

Un rseau scuris sera donc compos de priphriques totalement ddis la scurit comme les firewalls ou les IPS (systme de prvention dintrusion), mais aura aussi t pens pour mettre en place tous les lments de scurit des diffrents protocoles implmen-ts. Cest cette seule exigence que des con-ditions de scurit optimales seront runies.

La cration dune entreprise et de son rseau partir du nant est de plus en plus rare. La plupart du temps, les administrateurs rseaux doivent grer un existant plus ou moins obsolte ou encore la runion de dif-frentes infrastructures nes au gr de la vie de lentreprise. Cest dans ce genre de situa-tion que la notion daudit devient intressante pour rpondre cette angoissante question : lensemble de mon infrastructure rseau est-il bien scuris ?

Notez bien que cet article ne vous permet-tra pas de raliser un audit rseau complet. Sa

Le protocole spanning-treeCdric Baillet

Les rseaux LAN sont aujourdhui considrs comme des environnements relativement stables, connus et bien scuriss. Cependant c'est une allgation bien lgre et trs dangereuse, la corruption dun rseau permet de remonter dans les couches applicatives et daccder de nombreuses donnes.

vocation est seulement de mettre en vidence la ncessit dutiliser toutes les fonctions des-tines scuriser les protocoles rseau au travers dun exemple : le spanning-tree. Il sera ncessaire de dmultiplier cette dmarche sur lensemble des protocoles utiliss au sein dun rseau pour commencer avoir une procdure daudit techniquement exhaustive.

Les rseaux LAN ont aujourd'hui montr leur valeur et sont couramment utiliss touchant la

Cet article explique... Les grandes lignes du fonctionnement du proto-

cole spanning-tree. Les faiblesses potentiellement exploitables par

un attaquant. Les contre-mesures pouvant tre mises en

place.

Ce qu'il faut savoir...Idalement, le lecteur connatra les diffrents types de priphriques rseaux, les bases des protocoles qu'ils utilisent ainsi que les grands concepts de l'IP.

Exploiter les failles

29www.hakin9.orghakin9 Hors Srie 1/2008

fois les particuliers et les entreprises. Face une utilisation de plus en plus rpandue, il est donc ncessaire de se demander s'ils sont suffisamment scuriss pour ne pas reprsenter un risque pour l'ensemble des donnes transitant sur leurs infrastructures. Question pineuse laquelle les audits LAN sont censs rpondre.

Cet article tentera donc d'ap-porter des lments de rponse au travers de l'analyse de l'un des pro-tocoles les plus couramment utiliss dans ce type d'environnement : le spanning-tree.

Le protocolespanning-treeUn commutateur est un pont multi-port (un pont est un dispositif mat-riel permettant de relier des rseaux travaillant avec le mme protocole. Ainsi, contrairement au rpteur, qui travaille au niveau physique, le pont travaille galement au niveau logique), c'est--dire qu'il s'agit d'un lment actif agissant au niveau 2 du modle OSI.

Le commutateur analyse les trames arrivant sur ses ports d'en-tre et filtre les donnes afin de les aiguiller uniquement sur les ports adquats (on parle de commutation ou de rseaux commuts le prin-cipe est illustr sur la Figure 2). Le commutateur allie donc les propri-ts du pont en matire de filtrage et

du concentrateur (hub) en matire de connectivit.

Connaissant le port du destina-taire, le commutateur ne transmettra le message que sur le port adquat, les autres ports restants ds lors libres pour d'autres transmissions susceptibles de se produire simul-tanment. Il en rsulte que chaque change peut s'effectuer dbit no-minal (plus de partage de la bande passante), sans collision, avec pour consquence une augmentation trs sensible de la bande passante du r-seau ( vitesse nominale gale).

Le protocole spanning-tree (ou STP pour spanning-tree protocol) a t cr pour prvenir la formation

de boucles sur les rseaux de niveau 2 lors des interconnectxions multi-ples mises en place entre commuta-teurs pour assurer la redondance du rseau (Figure 3).

Ceci est ralis en rendant les commutateurs conscients de lexis-tence de leurs voisins et de ltat de la bande passante sur les liens com-muns. Chaque commutateur slec-tionne alors un seul parcours, sans boucle et avec une bande passante disponible maximale par rapport unpoint de rfrence commun l'en-semble des membres du domaine de niveau 2 (sera appel domaine de niveau 2 l'ensemble des commuta-teurs travaillant sur un mme subnet

Figure 1. Introduction

Figure 2. Apprentissage du commutateur

30 www.hakin9.org hakin9 Hors Srie 1/2008

IP que ce soit au niveau physique ou logique).

Si le phnomne de boucle ntait pas matris au travers de ce protocole, le rseau pourrait tre vic-time du phnomne appel tempte de broadcast (Figure 4). Celui-ci se produit lorsque des trames de type broadcast ( destination de lensem-ble des lments actifs du rseau) sont mises. Les commutateurs les renvoient alors sur lensemble des ports, les trames continuant ainsi circuler en boucle et se multiplier jusqu expiration du TTL (Time To Live temps de vie maximum auto-ris pour une trame sur le rseau).

Le point de rfrence permettant la mise en place d'itinraires uniques

et sans boucle sur le rseau se nomme le root bridge.

Ce dernier est choisi parmi les diffrents commutateurs au travers dun processus dlection qui per-met darriver un rsultat unique. U ne fois le root bridge dsign, chaque commutateur dfinit un port root reprsentant le chemin emprunter pour accder ce dernier. Lensemble des parcours possibles pour atteindre chaque point du rseau est dfini et peut tre reprsent comme un arbre de possibilits ayant le root bridge pour origine.

La fin de ce processus, le STP est construit et le domaine de ni-veau 2 dans lequel se trouve notre

commutateur ne doit possder aucune boucle.

Les ports des commutateurs (ceux reliant les diffrents commu-tateurs entre eux) ne participant pas au processus STP sont bloqus. Un port dans cet tat particulier nmet ni ne reoit de donnes. La seule action autorise est lcoute des BPDU (STP Bridge Protocol Data Unit trame permettant de grer les processus STP sur le rseau). Cest la prsence de cette fonction particulire qui permet dlimer les boucles sur le domaine de niveau 2. Lors dun recalcul de larbre du STP, il est possible que les ports bloqus changent dtat pour pren-dre en compte une modification de larchitecture du rseau. Les ports passeront alors dans les tats lis-tening, learning, pour enfin atteindre ltat forwarding permettant au trafic de donnes de stablir. Ce proces-sus prend de 30 50 secondes par dfaut (une norme plus rcente appele RSTP, pour Rapid Span-ning-Tree Protocol, permet une convergence plus rapide pour les rseaux qui la supportent).

Maintenant que nous compre-nons les grands processus utiliss par le protocole spanning-tree, il sera plus simple de dfinir les dif-frents axes dattaques possibles. Tous mettent en jeu les BPDU vo-ques prcdemment pour usurper une fonction (au hasard le root brid-ge) ou provoquer un dni de service (calcul rcurrent de larbre du STP par exemple).

Rcuprationdu rle root bridgepar un attaquantIci nous traiterons de la thorie, de la pratique ainsi que les contre-mesu-res possibles.

Rcupration du rlede root bridge : la thorieLe root bridge est slectionn en comparant lidentifiant du commu-tateur contenu dans un champ des trames BPDU. La valeur par dfaut de cet identifiant pour les commu-tateurs Cisco Catalyst est de 32768 Figure 4. Tempte de broadcast

SEGMENT 2

SW 1

PC 1 PC2

SEGMENT 1

SW2

Port 0/1 Port 0/1

Port 0/2 Port 0/2

BROADCAST

Figure 3. Laction du spanning-tree sur un rseau Ethernet

Exploiter les failles

31www.hakin9.orghakin9 Hors Srie 1/2008

et est donc utilise comme telle lors de llection du root bridge si ladmi-nistrateur rseau ne la modifie pas. Lorsque deux commutateurs ont un identifiant avec la mme valeur, leurs adresses MAC sont alors utilises pour les dpartager, ladresse la plus faible remportant llection.

Pour rcuprer le rle du root bridge, un attaquant devra donc en-voyer des BPDU forges avec une priorit plus faible que celle du root bridge actuel (Figure 5). Si le root bridge lgitime a une priorit zro, il sera alors ncessaire de modifier laxe dattaque en travaillant en plus avec les adresses MAC (pour rappel,

le but sera de forger une adresse MAC plus basse que celle du root lgitime).

Rcupration du rlede root bridge : la pratiqueComme voqus en dbut darticle, nous allons utiliser le logiciel Yersinia pour mettre en uvre cette attaque. Vous verrez que ce dernier est dune simplicit extrme et permet de met-tre en pratique toute la thorie en trois clics.

Yersinia possde dsormais une interface graphique (Figure 6), enco-re instable, cest vrai, mais simplifiant normment les choses.

La partie gauche permet de voir les paquets reus et envoys par protocole, la partie droite nous donne le dtail et permet de modifier certains paramtres pour lancer des attaques. Il est possible de modifier les principaux champs du protocole spanning-tree pour mettre en uvre lattaque dcrite prcdemment dans la partie infrieure droite. Le rseau utilis pour la dmonstration ayant t configur avec les paramtres span-ning-tree par dfaut, nous naurons pas besoin de modifier les valeurs des diffrents champs. Il suffira de laisser Yersinia agir.

Pour lancer notre attaque, il suffit de cliquer sur le bouton launch attack dans la