IPv6 und Privatsphäre

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

Die Privatsphäre in IPv6

  • Anonymität, also der Schutz der Privatsphäre, ist eines der wichtigsten Güter nicht nur des Internets.
  • Leider trägt der etablierte Identifikationsmechanismus von IPv6 dazu bei, das allgemeine Gefährdungspotenzial hier deutlich zu erhöhen.

Wiedererkennbare Host-ID

Mithilfe des modifizierten EUI-64 (64-Bit Extended Unique Identifier)-Formats wird aus der Layer-2-Adresse (MAC) der Hostanteil der IPv6-Adresse mittels „Stretching“ gewonnen. Dies führt dazu, dass sich Hosts – insbesondere mobile Hosts – weltweit und unabhängig vom Netzwerkanteil anhand dieses EUI-64-Adressteils (Host-ID) identifizieren lassen.

Privacy Extensions

  • Um die Verfolgung der Benutzer zu erschweren, wurden IPv6 Privacy Extensions mit der RFC 4941 eingeführt.
  • Privacy Extensions erzeugen sowohl einen zufällig generierten statischen als auch einen zusätzlichen regelmäßig wechselnden Interface Identifier.
  • Dies erschwert die Identifikation über die IPv6-Adresse erheblich.

Funktionsweise der Privacy Extensions

  • Die wechselnden Adressen haben nur eine begrenzte Zeit Gültigkeit.
  • Moderne Betriebssysteme unterstützen diese Funktion, bei Microsoft sind Privacy Extensions ab Vista und Server 2008 standardmäßig aktiv.
  • In Servervarianten wird nur der statische, in Clientbetriebssystemen zusätzlich der wechselnde Host-Identifier verwendet.

Beispiel aus der ipconfig-Ausgabe

IPv6-Adresse. . . . . . . . . . . : 2001:db3:300:8d45:75d1:f3d9:9175:bea7 (Bevorzugt)
Temporäre IPv6-Adresse. . . . . . : 2001:db3:300:8d45:b848:8b31:53fc:f05c (Bevorzugt)
  • In diesem Auszug wird deutlich, dass die (dauerhafte) verbindungslokale IPv6-Adresse nicht aus der MAC-Adresse abgeleitet ist.
  • Die temporäre IPv6-Adresse hat einen anderen Host-Identifier, der regelmäßig wechselt.

Aktivierung in Linux-Systemen

  • In Linux-Systemen müssen Privacy Extensions vom Systemverwalter meist über eine Root-Shell aktiviert werden:
  • sysctl -w net.ipv6.conf.all.use_tempaddr=2
  • Die dauerhafte Aktivierung kann in der Datei /etc/sysctl.conf durchgeführt werden.

Privacy Extensions in anderen Betriebssystemen

  • Android: Google hat Privacy Extensions nicht standardmäßig aktiviert, aber sie können über Root-Zugang oder Custom-ROMs eingeschaltet werden.
  • iOS: Aktuelle Versionen von iOS haben Privacy Extensions standardmäßig aktiviert.
  • Mac OS X: Die Privacy Extensions können im Terminal mit dem Befehl sudo sysctl -w net.inet6.ip6.use_tempaddr=1 aktiviert werden.

Probleme und Lösungen

  • Der durch die Privacy Extensions erzwungene Wechsel des Host-Identifiers bringt neue Probleme mit sich, insbesondere bei der Protokollierung von IP-Adressen in Logdateien von Firewalls.
  • Die regelmäßige Änderung kann es erschweren, bestimmte Aktivitäten den richtigen Systemen zuzuordnen.

Fazit

  • Moderne Betriebssysteme und Smartphone-Plattformen haben Privacy Extensions standardmäßig aktiviert, um die Privatsphäre der Benutzer zu schützen.
  • Administratoren sollten sich jedoch der möglichen Herausforderungen und Lösungen bewusst sein, die sich aus der regelmäßigen Änderung der IPv6-Adresse ergeben.

Anhang: Aktivieren und Deaktivieren der Privacy Extensions

Linux

  • Temporäre Adressen ausschalten:
sysctl -w net.ipv6.conf.all.use_tempaddr=0
  • Temporäre Adressen aktivieren (nicht bevorzugt):
sysctl -w net.ipv6.conf.all.use_tempaddr=1
  • Temporäre Adressen aktivieren und bevorzugen:
sysctl -w net.ipv6.conf.all.use_tempaddr=2
  • Dauerhaft über /etc/sysctl.conf oder /etc/sysctl.d/*.conf eintragen.

Windows

  • Seit Windows Vista/Server 2008 sind Privacy Extensions für Clients standardmäßig aktiv.
  • Es gibt zwei Möglichkeiten zur Steuerung:

Variante 1: netsh (ältere Methode, funktioniert noch)

netsh interface ipv6 set privacy state=enabled
netsh interface ipv6 set privacy state=disabled

Variante 2: PowerShell (empfohlen von Microsoft)

  • Privacy Extensions aktivieren:
Set-NetIPv6Protocol -UseTemporaryAddresses Enabled
  • Privacy Extensions deaktivieren:
Set-NetIPv6Protocol -UseTemporaryAddresses Disabled
  • Status prüfen:
Get-NetIPv6Protocol | Select-Object UseTemporaryAddresses

macOS

  • Privacy Extensions aktivieren:
sudo sysctl -w net.inet6.ip6.use_tempaddr=1
  • Deaktivieren:
sudo sysctl -w net.inet6.ip6.use_tempaddr=0

iOS

  • Privacy Extensions sind in aktuellen Versionen standardmäßig aktiv.
  • Eine manuelle Steuerung ist ohne Jailbreak nicht vorgesehen.

Android

  • Auf vielen Geräten sind Privacy Extensions nicht standardmäßig aktiv.
  • Sie können mit Root-Zugang oder Custom-ROMs aktiviert werden (z. B. über sysctl oder Kernel-Parameter).