SEND: Sicherheit für IPv6-Autokonfiguration

Das nicht mehr ganz neue Internet Protokoll Version 6 schleppt noch einige Probleme mit sich: Eines davon ist das für die Autokonfiguration im LAN nötige, aber unsichere Neighbor Discovery Protocol.

In Pocket speichern vorlesen Druckansicht 3 Kommentare lesen
Lesezeit: 3 Min.
Von
  • Reiko Kaps

Das nicht mehr ganz neue Internet Protokoll Version 6 stammt zwar aus den 1990er Jahren, es enthält jedoch noch einige Baustellen. Zu diesen bislang noch nicht vollständig gelösten Problemen gehört die automatische Netzwerkkonfiguration von IPv6 über das Neighbor Discovery Protocol (NDP, RFC 4861).

Über Router-Advertisements als Teil des Neighbor Discovery Protocols ermitteln IPv6-taugliche Geräte Router sowie Netzwerk-Präfixe im lokalen Netzsegment (Local link). Allerdings können IPv6-Rechner mit NDP nicht verifizieren, ob die so gewonnenen Informationen gültig und unverfälscht sind: Gibt sich etwa ein beliebiger Rechner in einem IPv6-Netz als Router aus, kann er ähnlich wie ein "wilder" DHCP-Server unter IPv4 auch den Netzwerkverkehr an sich ziehen und kontrollieren (Rogue router). Router-Advertisement von Rogue Routern könnte ein geeigneter Level-3-Switch zwar filtern, doch behebt das längst nicht alle Probleme: Über das Protokoll lässt sich außerdem ermitteln, welche Rechner per IPv6 im gleichen Netzwerksegment (Local link) aktiv sind und ob der per Stateless Autoconfiguration erzeugte Interface Identifier im LAN bereits genutzt wird (Duplicate address detection). Wie beim ARP-Spoofing unter IPv4 könnten andere IPv6-Geräte dabei mit gefälschten Informationen antworten.

Mit der NDP-Erweiterung SEND (SEcure Neighbor Discovery, RFC 3971) lässt sich dem ein Riegel vorschieben, allerdings nicht ohne zusätzlichen Aufwand: IPv6-Router müssen sich über Zertifikate ausweisen, die jedes IPv6-Gerät über eine Certificate-Authority (CA, Zertifizierungsstelle) abgleicht. RFC 3971 schlägt dafür entweder eine zentralisierte und globale Public-Key-Infrastruktur (PKI) oder ein lokales und dezentrales System vor. Die globale PKI könnte etwa unter der Kontrolle der IANA oder der regionalen Internet Registries (RIRs) stehen. Beim dezentralen Modell müssen die IPv6-Geräte mit einer Bündel vertrauenswürdiger öffentlicher Schlüssel ausgestattet werden. Laut dem IPv6-Experten Gert Döring wird sich SEND daher eher nicht in kleinen Firmennetzen durchsetzen, in großen Microsoft-Netzen mit Active Directory und eigener CA stünden dem SEND-Einsatz hingegen kaum Gründe im Weg.

Die aus IPv4 bekannten Probleme des ARP-Spoofing behebt SEND hingegen auch dann, wenn keine CA bereitsteht, erklärt Döring weiter. So sichert es über Cryptographic Generated Addresses (CGA) die Kommunikation im LAN, wenn man die Zieladresse kennt und etwa per DNSSEC verifiziert hat. Im Interface Identifier einer CGA steckt ein Public-Key, mit dem sich etwa ICMP-Pakete signieren lassen. Eine eigene CA braucht man dafür nicht.

Leider ist SEND in den Desktop-Betriebssystemen bislang eher selten. Für Linux steht beispielsweise das auf iproute2 und ip6tables setzende Programm NDprotector bereit, im offiziellen Linux-Kernel sucht man SEND vergeblich. Selbst das besonders für seinen IPv6-Netzwerkstack gelobte Windows 7 kennt diese Funktion nicht: Die Sieger des diesjähigen IPv6-Wettbewerbs haben daher das Programm WinSEND geschrieben, das SEcure Neighbor Discovery unter Windows implementiert. WinSEND greift Windows offenbar tief unter die Haube, denn es besteht aus einem Windows-Dienst samt Oberfläche und nutzt die WinPcap-DLL, mit der sich etwa Netzwerkverkehr an einer Schnittstelle abgreifen lässt. (rek)