11. Sicherheitsüberlegungen (Security Considerations)
Neighbor Discovery ist Angriffen ausgesetzt, die den Netzwerkbetrieb stören oder Traffic umleiten können. Dieser Abschnitt analysiert die Bedrohungen für Neighbor Discovery und beschreibt Mechanismen zu deren Abschwächung.
11.1. Bedrohungsanalyse (Threat Analysis)
11.1.1. On-Link-Bedrohungen (On-Link Threats)
Das Hauptsicherheitsproblem bei Neighbor Discovery besteht darin, dass Knoten auf demselben Link gefälschte Nachrichten senden können, um andere Knoten anzugreifen. Mögliche Angriffe umfassen:
Redirect-Angriffe (Redirect Attacks):
- Ein Angreifer sendet eine Redirect-Nachricht an ein Opfer und veranlasst das Opfer, Traffic über den Angreifer statt über den legitimen First-Hop-Router zu senden.
- Der Angreifer kann dann den umgeleiteten Traffic abfangen, modifizieren oder verwerfen.
Router Solicitation/Advertisement-Angriffe:
- Ein Angreifer gibt sich als Router aus, indem er Router Advertisements sendet mit:
- Ungültigen Präfixinformationen, die Hosts dazu bringen, falsche Adressen zu konfigurieren
- Kurzen Router Lifetime-Werten, die Hosts glauben lassen, dass keine Router verfügbar sind
- Geänderten Hop Limit-, MTU- oder Erreichbarkeitsparametern
Neighbor Solicitation/Advertisement-Angriffe:
- Ein Angreifer sendet gefälschte Neighbor Advertisements, um den Neighbor Cache von Opferknoten zu vergiften.
- Dies kann Traffic, der für einen anderen Knoten bestimmt ist, zum Angreifer umleiten.
- Ein Angreifer kann behaupten, eine IP-Adresse zu besitzen, die tatsächlich einem anderen Knoten gehört.
Duplicate Address Detection (DAD)-Angriffe:
- Ein Angreifer antwortet auf alle DAD Neighbor Solicitations und verhindert so, dass Knoten eine Adresse konfigurieren können.
- Dies stellt einen Denial-of-Service-Angriff auf die Adresskonfiguration dar.
11.1.2. Denial-of-Service-Angriffe
Mehrere Aspekte von Neighbor Discovery können für Denial-of-Service ausgenutzt werden:
Cache-Erschöpfung (Cache Exhaustion):
- Ein Angreifer überflutet einen Knoten mit Paketen von zahlreichen gefälschten Adressen und zwingt den Knoten, Neighbor Cache-Einträge zu erstellen und Neighbor Solicitations zu senden.
- Dies verbraucht Speicher und Netzwerkbandbreite.
Neighbor Discovery-Nachrichtenflutung (Message Flooding):
- Ein Angreifer flutet den Link mit Neighbor Discovery-Nachrichten und verbraucht Bandbreite und Verarbeitungsressourcen.
Router Solicitation-Flutung:
- Mehrere Angreifer oder ein einzelner Angreifer mit vielen gefälschten Adressen flutet Router mit Router Solicitations.
- Dies kann Router mit der Last der Antworten überfordern.
11.1.3. Off-Link-Bedrohungen (Off-Link Threats)
Obwohl Neighbor Discovery-Nachrichten link-lokal sind und nicht von Routern weitergeleitet werden sollten, können Angreifer mit Zugang zum physischen Medium (z. B. durch kompromittierte Infrastruktur) Angriffe starten, auch wenn sie nicht direkt mit dem Ziel-Link verbunden sind.
11.2. Sicherung von Neighbor Discovery-Nachrichten (Securing Neighbor Discovery Messages)
11.2.1. SEcure Neighbor Discovery (SEND)
SEcure Neighbor Discovery (SEND) [RFC3971] bietet kryptografische Sicherheit für Neighbor Discovery. SEND verwendet:
- Cryptographically Generated Addresses (CGA): Adressen, die einen öffentlichen Schlüssel kryptografisch an eine IPv6-Adresse binden und die Überprüfung ermöglichen, dass der Absender die Adresse besitzt.
- RSA-Signaturen: Alle kritischen Neighbor Discovery-Nachrichten werden mit dem privaten Schlüssel des Absenders signiert.
- Timestamp-Optionen: Verhindern Replay-Angriffe.
- Nonce-Optionen: Bieten Frische für Solicitation/Advertisement-Austausche.
- Autorisierungsdelegation: Ermöglicht Routern nachzuweisen, dass sie berechtigt sind, als Router für ein Präfix zu agieren.
SEND bietet starken Schutz gegen die meisten Neighbor Discovery-Angriffe, einschließlich:
- Redirect-Angriffe
- Neighbor/Router Advertisement-Spoofing
- Präfixinformationsmanipulation
Einschränkungen von SEND:
- SEND erfordert eine Public-Key-Infrastruktur und ist rechenintensiv.
- Es schützt nicht vor allen Denial-of-Service-Angriffen (z. B. Nachrichtenflutung).
- Die Bereitstellung war aufgrund der Komplexität begrenzt.
11.2.2. Link-Layer-Sicherheit (Link-Layer Security)
Link-Layer-Sicherheitsmechanismen können Schutz für Neighbor Discovery bieten:
IEEE 802.1X Port-basierte Authentifizierung:
- Authentifiziert Geräte, bevor Netzwerkzugang gewährt wird.
- Verhindert, dass nicht autorisierte Geräte Neighbor Discovery-Nachrichten senden.
MACsec (IEEE 802.1AE):
- Bietet Link-Layer-Verschlüsselung und -Authentifizierung.
- Schützt den gesamten Traffic, einschließlich Neighbor Discovery, vor Abhören und Manipulation.
Wireless-Sicherheit (WPA2/WPA3):
- Verschlüsselt und authentifiziert Wireless-Traffic.
- Verhindert, dass Angreifer gefälschte Neighbor Discovery-Nachrichten über Wireless-Links injizieren.
Vorteile der Link-Layer-Sicherheit:
- Transparent für höhere Protokollschichten.
- Kann effizienter sein als SEND.
- Schützt vor einer breiteren Palette von Angriffen.
Einschränkungen:
- Nicht immer verfügbar (z. B. auf gemeinsam genutzten Ethernet-Segmenten).
- Schützt nicht vor Angriffen von kompromittierten Geräten, die legitimen Link-Zugang haben.
11.2.3. Router Advertisement Guard (RA Guard)
RA Guard [RFC6105] ist ein Switch/Router-basierter Mechanismus, der Router Advertisement-Nachrichten filtert:
- Switches werden so konfiguriert, dass sie identifizieren, welche Ports mit legitimen Routern verbunden sind.
- Router Advertisements von anderen Ports werden verworfen.
- Schützt vor Rogue-Router-Angriffen.
Einschränkungen:
- Schützt nur vor betrügerischen Router Advertisements.
- Kann durch Verwendung von IPv6-Extension-Headern umgangen werden (abgemildert durch RFC 7113).
- Erfordert ordnungsgemäße Konfiguration der Netzwerkinfrastruktur.
11.2.4. Quelladressvalidierung (Source Address Validation)
Die Implementierung von Quelladressvalidierung kann einige Angriffe abschwächen:
Ingress-Filterung:
- Router sollten Ingress-Filterung (BCP 38 / RFC 2827) implementieren, um zu verhindern, dass Pakete mit gefälschten Quelladressen in das Netzwerk gelangen.
Reverse Path Forwarding (RPF)-Checks:
- Können helfen, einige Formen von Adress-Spoofing zu erkennen und zu verhindern.
Einschränkungen:
- Schützt hauptsächlich vor Off-Link-Angriffen.
- Weniger effektiv gegen On-Link-Spoofing.
11.3. Implementierungsüberlegungen (Implementation Considerations)
11.3.1. Ratenbegrenzung (Rate Limiting)
Implementierungen SOLLTEN (SHOULD) Ratenbegrenzung implementieren für:
- Verarbeitung von Neighbor Discovery-Nachrichten
- Erstellung neuer Neighbor Cache-Einträge
- Senden von Neighbor Solicitations als Antwort auf Traffic
Dies mildert Denial-of-Service-Angriffe basierend auf Ressourcenerschöpfung.
11.3.2. Neighbor Cache-Verwaltung (Neighbor Cache Management)
Implementierungen SOLLTEN (SHOULD):
- Garbage Collection für Neighbor Cache-Einträge implementieren, um Erschöpfung zu verhindern.
- Erreichbare Einträge gegenüber veralteten oder unvollständigen Einträgen priorisieren, wenn der Cache-Speicher begrenzt ist.
- Die Rate der Neighbor Cache-Eintragerstellung aus nicht vertrauenswürdigen Quellen begrenzen.
11.3.3. Router Advertisement-Verarbeitung (Router Advertisement Processing)
Hosts SOLLTEN (SHOULD):
- Router Advertisements mit verdächtigen Parametern ignorieren (z. B. extrem kurze Lifetimes, ungültige Präfixlängen).
- Grenzen für die Anzahl der Präfixe, Routen und anderen von Router Advertisements gelernten Informationen implementieren.
- Ungewöhnliche Router Advertisement-Muster für administrative Überprüfung protokollieren.
11.3.4. Redirect-Nachrichtenvalidierung (Redirect Message Validation)
Hosts MÜSSEN (MUST):
- Validieren, dass Redirect-Nachrichten vom aktuellen First-Hop-Router stammen.
- Überprüfen, dass die Zieladresse on-link ist.
- Redirect-Nachrichten, die versuchen, Traffic off-link umzuleiten, nicht verarbeiten.
11.4. Betriebliche Überlegungen (Operational Considerations)
Netzwerkadministratoren SOLLTEN (SHOULD):
-
Link-Layer-Sicherheit bereitstellen: Wo möglich, 802.1X, MACsec oder Wireless-Sicherheit verwenden, um Neighbor Discovery zu schützen.
-
RA Guard implementieren: Auf Switches und Routern, um betrügerische Router Advertisements zu verhindern.
-
Auf Anomalien überwachen: Netzwerküberwachungstools verwenden, um ungewöhnliche Muster im Neighbor Discovery-Traffic zu erkennen.
-
Netzwerke segmentieren: VLANs und andere Segmentierungstechniken verwenden, um den Umfang potenzieller Angriffe zu begrenzen.
-
SEND in Betracht ziehen: Für Hochsicherheitsumgebungen die Bereitstellung von SEND trotz seiner Komplexität evaluieren.
-
Systeme aktuell halten: Sicherheitspatches und Updates anwenden, die Neighbor Discovery-Schwachstellen adressieren.
-
Benutzer schulen: Netzwerkpersonal schulen, um Neighbor Discovery-Angriffe zu erkennen und darauf zu reagieren.
11.5. Zukünftige Entwicklungen (Future Directions)
Laufende Arbeiten im IETF verbessern weiterhin die Neighbor Discovery-Sicherheit:
- Leichtgewichtige SEND-Alternativen
- Erweiterte RA Guard-Mechanismen
- Integration mit Netzwerkzugriffskontrollsystemen
- Verbesserte Denial-of-Service-Schutzmaßnahmen
Netzwerkadministratoren sollten über diese Entwicklungen informiert bleiben und neue Sicherheitsmechanismen bereitstellen, sobald sie standardisiert und verfügbar werden.