Andrea Danti - Fotolia

Mit der richtigen IPv6-Adressierung die Sicherheit erhöhen

IPv6-Adressen haben besondere Eigenschaften, die zur Absicherung von Netzen und Daten genutzt werden können. Oftmals werden diese Fähigkeiten jedoch nicht eingesetzt.

Internetknoten, die bereits mit IPv6 laufen, nutzen in der Regel mehrere IPv6-Adressen unterschiedlicher Art, Anwendungsbereiche und Eigenschaften. Die flexibel nutzbare Zahl dieser Adressen kann dazu genutzt werden, um die Sicherheit und den Datenschutz in Netzwerken zu erhöhen. Meist ist dies jedoch bislang nicht der Fall, weil die verfügbaren Adressen falsch eingesetzt werden.

So kann ein typischer IPv6-Host zum Beispiel unterschiedliche IPv6-Adressen für jedes Netzwerk-Interface verwenden. Bei IPv4 ist das noch anders. Dort wird normalerweise für jede Netzwerkkarte nur eine einzige IP-Adresse eingesetzt. Die bei IPv6 deutlich erhöhte Verfügbarkeit von IP-Adressen, die unterschiedliche Eigenschaften haben können, bietet eine Möglichkeit, um die Sicherheit, den Datenschutz und die Verlässlichkeit zu erhöhen.

Diese Vorteile werden jedoch meist aufgrund einer nicht optimalen Nutzung der zur Verfügung stehenden Adressen nicht realisiert. In manchen Fällen kann die bisherige Nutzung sogar zu unerwarteten Problemen führen.

Dieser Artikel beschreibt verschiedene Eigenschaften von IPv6-Adressen und demonstriert, wie sie genutzt werden können, um die Sicherheit, den Datenschutz und die Verlässlichkeit in IPv6-Netzwerken zu erhöhen. Außerdem zeigt er weitere Vorteile von IPv6-Adressen.

Adressierung in einer Welt mit IPv6

Wie bereits erwähnt, besteht ein IPv6-Knoten meist aus mehreren Adressen mit unterschiedlichen Anwendungsbereichen und Eigenschaften, die auch die Stabilität eines Netzes beeinflussen können. So ist es beispielsweise häufig zu sehen, dass ein Knoten folgende Eigenschaften beziehungsweise Adressen hat:

  • eine Link-Local-Adresse zur Nutzung innerhalb geschlossener Netzsegmente
  • eine dauerhaft genutzte globale Adresse
  • eine oder mehrere temporäre globale Adressen
  • eine dauerhaft genutzte ULA-Adresse (Unique Local Address) sowie
  • eine oder mehrere temporäre ULAs

Hosts können diese Adressen auf verschiedene Weise nutzen. Für ausgehende Client-basierte Verbindungen setzen sie in der Regel auf den Standardalgorithmus für IPv6. Für eingehende serverbasierte Verbindungen erlauben sie dagegen meist eine Kommunikation mit allen verfügbaren Adressen.

Die IETF (Internet Engineering Task Force) hat den Algorithmus zur “Default Address Selection for Internet Protocol Version 6 (IPv6)” in RFC6724 festgelegt. Er besteht aus zwei Teilen:

  • einem Algorithmus, der abhängig von der Zieladresse, die am besten geeignete lokale Adresse auswählt, um Datenpakete zu versenden
  • einem zweiten Algorithmus, der mit Hilfe einer Liste von Ziel- und verfügbaren Quelladressen, eine nach Präferenz sortierte Liste von Zielen erstellt

Abhängig von einer Liste mit IPv6-Adressen, die sich auf eine Domain beziehen, kann dieser Algorithmus also eine Liste erstellen, die nacheinander durchprobiert wird, bis die Kommunikation erfolgreich durchgeführt werden konnte. Für jede dieser Zieladressen wird dabei die am besten passende Quelladresse genutzt.

RFC6724 geht ausführlich auf die Wahl der passenden IP-Adressen bei ausgehenden Verbindungen ein. Bei eingehenden Verbindungen ist das Dokument jedoch ungenau. Hosts akzeptieren deswegen in der Regel eingehende Verbindungen auf allen zur Verfügung stehenden Adressen. Und zwar unabhängig davon, für welchen Anwendungsbereich sie vorgesehen sind oder wie stabil sie sind.

Tipps zur Wahl des richtigen Anwendungsbereichs

Wie eingangs erwähnt, nutzen IPv6-Knoten in der Regel mehrere Adressen, die für abgeschlossene Netzwerksegmente (Link-Local-Adressen) bis zu global genutzten Anwendungsbereichen dienen. Aus Sicherheitsgründen sollten Hosts für jede Anwendung jedoch nur Adressen aus dem kleinstmöglichen Bereich erlauben. Dadurch lässt sich eine zusätzliche Isolierungsschicht einrichten, die nur auf den verschiedenen zur Verfügung stehenden Adressen beruht.

So könnte zum Beispiel ein Dateiserver, der nur von innerhalb eines Unternehmensnetzes aus erreicht werden soll, nur ULAs einsetzen. Sie entsprechen den bislang genutzten privaten IPv4-Adressen. Durch den Einsatz von ULAs kann ihr begrenzter Adressbereich dazu genutzt werden, eine Verbindung aus dem öffentlichen Internet zu verhindern. Sie dienen also als zusätzliche Isolierungsschicht. Das bedeutet aber auf keinen Fall, dass andere gängige Maßnahmen zum Schutz von Netzwerken wie Firewalls überflüssig werden. ULAs können einfach eine weitere Ebene zum Schutz vor Eindringlingen sein.

Der Einsatz von begrenzten IPv6-Adressen kann darüber hinaus weitere Vorteile haben. So genügt etwa bereits der ULA-Adressbereich (fc00::/7), um daraus praktisch beliebig große oder komplexe Netze nur mit ULA-Adressen aufzubauen. Weil ULAs lokal verwaltet werden, stehen sie dann auch zur Verfügung, wenn etwa die Dienste eines Upstream-Anbieters ausfallen und die global verfügbaren Adressen nach einer Weile nicht mehr genutzt werden können. Die eingesetzten ULAs können dann weiterhin für lokale Verbindungen verwendet werden. Eine Diskussion über die verschiedenen Einsatzmöglichkeiten für ULAs kann auf den Webseiten der IETF gefunden werden.

Anzumerken ist allerdings noch, dass nicht global nutzbare Adressen wie ULAs normalerweise auf bestimmte Anwendungen oder Protokolle beschränkt sind, die nur eine begrenzte Aufgabe erfüllen sollen. Sie lassen sich deswegen nicht in jedem Fall einsetzen.

Folgen Sie SearchSecurity.de auch auf Twitter, Google+, Xing und Facebook!

Nächste Schritte

IPv6-Adressen per DNS Reverse Mapping scannen

Das Management der IPv6-Adressen schützen

Im Unternehmensnetzwerk die Schwachstellen bewerten

 

Erfahren Sie mehr über Anwendungs- und Plattformsicherheit