kubenow
Se connecterCommencer gratuitement

R.59 · La sécurité

Sécurité de la couche 2 : port security, DHCP snooping, DAI

Leçon théorique · questionnaire de validation · gratuit, dans le navigateur

La plupart des attaques sur un réseau local se font depuis une prise murale : un poste compromis, un visiteur, un appareil branché en douce. Elles exploitent la confiance aveugle des protocoles de couche 2 : un switch apprend n'importe quelle adresse MAC, un client accepte n'importe quel serveur DHCP, ARP croit n'importe quelle réponse. Trois protections, présentes sur tous les switchs d'entreprise, ferment ces portes : port security, DHCP snooping et Dynamic ARP Inspection.

Ce que vous saurez à la fin : décrire les attaques de couche 2 les plus courantes, expliquer le fonctionnement de port security, DHCP snooping et DAI, et savoir où les activer.

1. Les attaques

Attaque Principe Effet
Saturation de la table MAC Inonder le switch de trames aux adresses MAC source aléatoires (des milliers par seconde) Table pleine : le switch inonde tout le trafic sur tous ses ports, l'attaquant voit tout
Serveur DHCP pirate Répondre aux demandes DHCP plus vite que le vrai serveur Les victimes reçoivent une fausse passerelle ou un faux DNS : tout leur trafic passe par l'attaquant
Épuisement DHCP (starvation) Demander toutes les adresses du serveur avec de fausses MAC Plus d'adresse pour les vrais postes ; prépare souvent le serveur pirate
Empoisonnement ARP Annoncer « 192.168.1.1, c'est moi » à toutes les machines Le trafic vers la passerelle passe par l'attaquant (homme du milieu)
VLAN hopping Négociation de trunk (DTP) ou double étiquetage Accès à un VLAN interdit (parcours « la commutation »)

2. Port security : limiter les adresses par port

Port security fixe combien d'adresses MAC un port accepte, et lesquelles.

SW1(config)# interface GigabitEthernet0/5
SW1(config-if)# switchport mode access
SW1(config-if)# switchport port-security
SW1(config-if)# switchport port-security maximum 2
SW1(config-if)# switchport port-security mac-address sticky
SW1(config-if)# switchport port-security violation restrict
SW1# show port-security interface GigabitEthernet0/5
  • maximum 2 : un poste et un téléphone IP, pas plus ;
  • sticky : les premières adresses vues sont mémorisées dans la configuration ;
  • en cas de violation, trois réactions :
Mode Effet
shutdown (défaut) Le port est désactivé (err-disabled) jusqu'à intervention
restrict Les trames en trop sont jetées, l'événement est journalisé
protect Les trames en trop sont jetées en silence

Port security bloque la saturation de la table MAC et le branchement d'un switch non autorisé derrière une prise.

3. DHCP snooping : seuls les ports de confiance servent des adresses

Le switch classe ses ports en de confiance (trusted : vers les vrais serveurs DHCP, les liens montants) et non fiables (untrusted : tous les ports de postes). Sur un port non fiable, il jette toute réponse de serveur DHCP (OFFER, ACK).

trusteduntrusteduntrusted : offres jetéesServeur DHCPSW1DHCP snoopingPosteServeur pirate
DHCP snooping : les offres DHCP ne sont acceptées que sur le port de confiance, vers le vrai serveur

Au passage, le switch construit une table de liaisons (binding table) : quel poste (adresse MAC) a reçu quelle adresse IP, sur quel port et dans quel VLAN. Cette table sert ensuite à DAI.

SW1(config)# ip dhcp snooping
SW1(config)# ip dhcp snooping vlan 10,20
SW1(config)# interface GigabitEthernet0/1
SW1(config-if)# ip dhcp snooping trust
SW1(config)# interface range GigabitEthernet0/2 - 24
SW1(config-if-range)# ip dhcp snooping limit rate 10
SW1# show ip dhcp snooping binding

La limite de débit (limit rate 10 : 10 messages DHCP par seconde) freine l'épuisement.

4. Dynamic ARP Inspection : vérifier chaque réponse ARP

DAI compare chaque message ARP reçu sur un port non fiable à la table de liaisons du DHCP snooping. Si un poste prétend être 192.168.1.1 alors que la table dit que 192.168.1.1 n'a jamais été attribuée à son adresse MAC, sur ce port : la réponse est jetée. L'empoisonnement ARP devient impossible.

SW1(config)# ip arp inspection vlan 10,20
SW1(config)# interface GigabitEthernet0/1
SW1(config-if)# ip arp inspection trust
SW1# show ip arp inspection

Les machines à adresse fixe (serveurs, imprimantes) n'apparaissent pas dans la table DHCP : on les déclare avec une ACL ARP, ou on place leur port en confiance.

5. Les autres bonnes pratiques

  • Désactiver la négociation de trunk (switchport mode access, switchport nonegotiate) sur tous les ports de postes ;
  • Éteindre les ports inutilisés et les ranger dans un VLAN poubelle ;
  • BPDU guard sur les ports de postes (parcours « Spanning Tree ») ;
  • 802.1X : authentifier l'appareil avant d'ouvrir le port (avec un serveur RADIUS) ; la protection la plus forte, mais la plus lourde à déployer.

6. Retenir

Protection Contre Principe
Port security Saturation de la table MAC, appareils non autorisés Nombre (et liste) d'adresses MAC par port
DHCP snooping Serveur DHCP pirate, épuisement Réponses DHCP seulement sur les ports de confiance ; table de liaisons
DAI Empoisonnement ARP Chaque message ARP vérifié contre la table de liaisons
BPDU guard Switch branché sur un port de poste Port coupé au premier BPDU
802.1X Tout appareil inconnu Authentification avant l'accès

Contenu aligné sur les programmes publiés par la CNCF (KCNA, CKAD, CKA, CKS), par le Linux Professional Institute (LPIC-1) et par Cisco (CCNA 200-301). KubeNow n'est ni affilié ni approuvé par la CNCF, la Linux Foundation, le LPI ou Cisco ; CKA, CKAD, CKS et KCNA sont des marques de la Linux Foundation, LPIC-1 est une marque du Linux Professional Institute, Cisco et CCNA sont des marques de Cisco Systems.