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).
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 |