11. Considérations de Sécurité (Security Considerations)
Neighbor Discovery est sujet à des attaques qui peuvent perturber les opérations réseau ou rediriger le trafic. Cette section analyse les menaces pour Neighbor Discovery et décrit les mécanismes pour les atténuer.
11.1. Analyse des Menaces (Threat Analysis)
11.1.1. Menaces Sur le Lien (On-Link Threats)
La principale préoccupation de sécurité pour Neighbor Discovery est que les nœuds sur le même lien peuvent envoyer des messages usurpés pour attaquer d'autres nœuds. Les attaques possibles incluent :
Attaques par Redirection (Redirect Attacks) :
- Un attaquant envoie un message Redirect à une victime, faisant en sorte que la victime envoie le trafic via l'attaquant au lieu du routeur de premier saut légitime.
- L'attaquant peut alors intercepter, modifier ou abandonner le trafic redirigé.
Attaques Router Solicitation/Advertisement :
- Un attaquant usurpe l'identité d'un routeur en envoyant des Router Advertisements avec :
- Des informations de préfixe invalides, obligeant les hôtes à configurer des adresses incorrectes
- Des valeurs de Router Lifetime courtes, faisant croire aux hôtes qu'aucun routeur n'est disponible
- Hop limit, MTU ou paramètres de joignabilité modifiés
Attaques Neighbor Solicitation/Advertisement :
- Un attaquant envoie des Neighbor Advertisements usurpés pour empoisonner le Neighbor Cache des nœuds victimes.
- Cela peut rediriger le trafic destiné à un autre nœud vers l'attaquant.
- Un attaquant peut prétendre posséder une adresse IP qui appartient en réalité à un autre nœud.
Attaques de Détection d'Adresse Dupliquée (DAD) :
- Un attaquant répond à toutes les Neighbor Solicitations DAD, empêchant tout nœud de configurer une adresse.
- Cela constitue une attaque par déni de service sur la configuration d'adresse.
11.1.2. Attaques par Déni de Service (Denial-of-Service Attacks)
Plusieurs aspects de Neighbor Discovery peuvent être exploités pour le déni de service :
Épuisement du Cache (Cache Exhaustion) :
- Un attaquant inonde un nœud avec des paquets provenant de nombreuses adresses usurpées, forçant le nœud à créer des entrées Neighbor Cache et à envoyer des Neighbor Solicitations.
- Cela consomme de la mémoire et de la bande passante réseau.
Inondation de Messages Neighbor Discovery :
- Un attaquant inonde le lien avec des messages Neighbor Discovery, consommant de la bande passante et des ressources de traitement.
Inondation Router Solicitation :
- Plusieurs attaquants ou un seul attaquant avec de nombreuses adresses usurpées inondent les routeurs avec des Router Solicitations.
- Cela peut submerger les routeurs avec la charge de réponse.
11.1.3. Menaces Hors Lien (Off-Link Threats)
Bien que les messages Neighbor Discovery soient link-local et ne devraient pas être transférés par les routeurs, les attaquants ayant accès au support physique (par exemple, via une infrastructure compromise) peuvent lancer des attaques même s'ils ne sont pas directement connectés au lien cible.
11.2. Sécurisation des Messages Neighbor Discovery (Securing Neighbor Discovery Messages)
11.2.1. SEcure Neighbor Discovery (SEND)
SEcure Neighbor Discovery (SEND) [RFC3971] fournit une sécurité cryptographique pour Neighbor Discovery. SEND utilise :
- Adresses Générées Cryptographiquement (Cryptographically Generated Addresses, CGA) : Adresses qui lient cryptographiquement une clé publique à une adresse IPv6, permettant de vérifier que l'expéditeur possède l'adresse.
- Signatures RSA : Tous les messages Neighbor Discovery critiques sont signés avec la clé privée de l'expéditeur.
- Options Timestamp : Empêchent les attaques par rejeu.
- Options Nonce : Fournissent la fraîcheur pour les échanges sollicitation/annonce.
- Délégation d'Autorisation : Permet aux routeurs de prouver qu'ils sont autorisés à agir en tant que routeurs pour un préfixe.
SEND fournit une forte protection contre la plupart des attaques Neighbor Discovery, incluant :
- Attaques par redirection
- Usurpation de Neighbor/Router Advertisement
- Manipulation d'informations de préfixe
Limitations de SEND :
- SEND nécessite une infrastructure à clé publique et est intensif en calcul.
- Il ne protège pas contre toutes les attaques par déni de service (par exemple, inondation de messages).
- Le déploiement a été limité en raison de la complexité.
11.2.2. Sécurité de la Couche Liaison (Link-Layer Security)
Les mécanismes de sécurité de la couche liaison peuvent fournir une protection pour Neighbor Discovery :
Authentification Basée sur Port IEEE 802.1X :
- Authentifie les dispositifs avant d'autoriser l'accès réseau.
- Empêche les dispositifs non autorisés d'envoyer des messages Neighbor Discovery.
MACsec (IEEE 802.1AE) :
- Fournit chiffrement et authentification de la couche liaison.
- Protège tout le trafic, y compris Neighbor Discovery, contre l'espionnage et la falsification.
Sécurité Sans Fil (WPA2/WPA3) :
- Chiffre et authentifie le trafic sans fil.
- Empêche les attaquants d'injecter des messages Neighbor Discovery usurpés sur les liens sans fil.
Avantages de la Sécurité de la Couche Liaison :
- Transparent pour les protocoles de couche supérieure.
- Peut être plus efficace que SEND.
- Protège contre une gamme plus large d'attaques.
Limitations :
- Pas toujours disponible (par exemple, sur les segments Ethernet partagés).
- Ne protège pas contre les attaques provenant de dispositifs compromis ayant un accès légitime au lien.
11.2.3. Router Advertisement Guard (RA Guard)
RA Guard [RFC6105] est un mécanisme basé sur commutateur/routeur qui filtre les messages Router Advertisement :
- Les commutateurs sont configurés pour identifier quels ports sont connectés à des routeurs légitimes.
- Les Router Advertisements provenant d'autres ports sont abandonnés.
- Protège contre les attaques de routeur malveillant.
Limitations :
- Protège uniquement contre les Router Advertisements malveillants.
- Peut être contourné en utilisant des en-têtes d'extension IPv6 (atténué par RFC 7113).
- Nécessite une configuration appropriée de l'infrastructure réseau.
11.2.4. Validation d'Adresse Source (Source Address Validation)
La mise en œuvre de la validation d'adresse source peut atténuer certaines attaques :
Filtrage d'Entrée (Ingress Filtering) :
- Les routeurs devraient mettre en œuvre le filtrage d'entrée (BCP 38 / RFC 2827) pour empêcher les paquets avec des adresses source usurpées d'entrer dans le réseau.
Vérifications de Reverse Path Forwarding (RPF) :
- Peuvent aider à détecter et prévenir certaines formes d'usurpation d'adresse.
Limitations :
- Protège principalement contre les attaques hors lien.
- Moins efficace contre l'usurpation sur lien.
11.3. Considérations d'Implémentation (Implementation Considerations)
11.3.1. Limitation de Débit (Rate Limiting)
Les implémentations DEVRAIENT (SHOULD) mettre en œuvre une limitation de débit pour :
- Le traitement des messages Neighbor Discovery
- La création de nouvelles entrées Neighbor Cache
- L'envoi de Neighbor Solicitations en réponse au trafic
Cela atténue les attaques par déni de service basées sur l'épuisement des ressources.
11.3.2. Gestion du Neighbor Cache (Neighbor Cache Management)
Les implémentations DEVRAIENT (SHOULD) :
- Mettre en œuvre la collecte des déchets pour les entrées Neighbor Cache afin d'éviter l'épuisement.
- Prioriser les entrées joignables par rapport aux entrées périmées ou incomplètes lorsque l'espace cache est limité.
- Limiter le taux de création d'entrées Neighbor Cache à partir de sources non fiables.
11.3.3. Traitement des Router Advertisement (Router Advertisement Processing)
Les hôtes DEVRAIENT (SHOULD) :
- Ignorer les Router Advertisements avec des paramètres suspects (par exemple, durées de vie extrêmement courtes, longueurs de préfixe invalides).
- Mettre en œuvre des limites sur le nombre de préfixes, routes et autres informations apprises des Router Advertisements.
- Enregistrer les modèles de Router Advertisement inhabituels pour examen administratif.
11.3.4. Validation des Messages Redirect (Redirect Message Validation)
Les hôtes DOIVENT (MUST) :
- Valider que les messages Redirect proviennent du routeur de premier saut actuel.
- Vérifier que l'adresse cible est sur le lien.
- Ne pas traiter les messages Redirect qui tentent de rediriger le trafic hors lien.
11.4. Considérations Opérationnelles (Operational Considerations)
Les administrateurs réseau DEVRAIENT (SHOULD) :
-
Déployer la Sécurité de la Couche Liaison : Lorsque possible, utiliser 802.1X, MACsec ou la sécurité sans fil pour protéger Neighbor Discovery.
-
Mettre en Œuvre RA Guard : Sur les commutateurs et routeurs pour empêcher les Router Advertisements malveillants.
-
Surveiller les Anomalies : Utiliser des outils de surveillance réseau pour détecter les modèles inhabituels dans le trafic Neighbor Discovery.
-
Segmenter les Réseaux : Utiliser des VLAN et d'autres techniques de segmentation pour limiter la portée des attaques potentielles.
-
Considérer SEND : Pour les environnements à haute sécurité, évaluer le déploiement de SEND malgré sa complexité.
-
Maintenir les Systèmes à Jour : Appliquer les correctifs de sécurité et mises à jour qui traitent les vulnérabilités Neighbor Discovery.
-
Former les Utilisateurs : Former le personnel réseau à reconnaître et répondre aux attaques Neighbor Discovery.
11.5. Directions Futures (Future Directions)
Les travaux en cours à l'IETF continuent d'améliorer la sécurité de Neighbor Discovery :
- Alternatives SEND légères
- Mécanismes RA Guard améliorés
- Intégration avec les systèmes de contrôle d'accès réseau
- Protections améliorées contre le déni de service
Les administrateurs réseau devraient rester informés de ces développements et déployer de nouveaux mécanismes de sécurité au fur et à mesure qu'ils deviennent standardisés et disponibles.