IPv6 ist nicht unsicher, nur weil es kein NAT hat
(johnmaguire.me)- Die Behauptung, IPv4 sei sicherer, weil es standardmäßig NAT verwendet, beruht auf einer Verwechslung von Sicherheit und Adressumsetzung
- NAT (Network Address Translation) ist keine Sicherheitsfunktion, sondern ein Mechanismus zur Einsparung von Adressen, um den Mangel an IPv4-Adressen zu lösen
- NAT funktioniert im Wesentlichen nur so, dass mehrere Geräte sich auf Basis von Port-Mappings eine einzige öffentliche IP teilen
- Tatsächlich übernimmt nicht NAT die Aufgabe, externen Traffic zu blockieren, sondern eine zustandsbehaftete Firewall (stateful firewall)
- Auch in IPv6-Umgebungen blockieren Firewalls standardmäßig nicht autorisierten Traffic, daher bedeutet das Fehlen von NAT keine Abschwächung der Sicherheit
Verwechslung von NAT und Sicherheit
- Die Behauptung, IPv4 sei sicherer, weil es NAT nutzt, ist eine Fehlwahrnehmung
- NAT ist keine Sicherheitsfunktion, sondern eine Technik zur Adressersparnis (address conservation)
- Auch in IPv6 kann NAT verwendet werden, aber das erhöht die Sicherheit nicht
- NAT sorgt dafür, dass mehrere Geräte im internen Netzwerk eine einzige öffentliche IP-Adresse gemeinsam nutzen
- Das Routing erfolgt durch Umschreiben (rewrite) der Ziel-IP auf Basis des Zielports eines Pakets
- Es arbeitet nach Regeln für Port-Mapping oder Port-Forwarding, die der Netzwerkadministrator festlegt
Wie NAT tatsächlich funktioniert
- In einer NAT-Umgebung wird eingehender externer Traffic nicht an interne Geräte weitergeleitet, wenn er einen unerwarteten Zielport hat
- Solcher Traffic verbleibt bei dem Gerät mit der öffentlichen IP und wird nicht ins interne Netzwerk geroutet
- Dadurch wirkt es so, als würde NAT externen Zugriff blockieren, aber das ist nur ein Nebeneffekt und nicht das eigentliche Sicherheitsziel des Designs
Die Rolle der Firewall
- Der Sicherheitseffekt, den viele fälschlich NAT zuschreiben, stammt in Wirklichkeit von der zustandsbehafteten Firewall (stateful firewall)
- Die meisten modernen Router enthalten unabhängig davon, ob NAT verwendet wird, standardmäßig Firewall-Regeln, die eingehenden Traffic blockieren
- Die Firewall verwirft (drop) Traffic mit unerwartetem Ziel, bevor Pakete umgeschrieben oder geroutet werden
- Als Beispiel gelten für einen UniFi-Router standardmäßig folgende IPv6-Firewall-Regeln
- Established/Related-Traffic erlauben (Antwort-Traffic auf ausgehende Verbindungen)
- Invalid-Traffic blockieren
- Jeden anderen Traffic blockieren
Sicherheit in IPv6-Umgebungen
- Auch in IPv6-Netzwerken blockieren Standard-Firewall-Regeln nicht autorisierten eingehenden Traffic
- Derselbe Schutz gilt auch ohne den Einsatz von NAT
- Um von außen nicht angeforderten Traffic zu IPv6-Geräten zuzulassen, müssen explizit Firewall-Regeln hinzugefügt werden
- Das gilt unabhängig davon, ob NAT verwendet wird oder nicht
Fazit
- Die Behauptung, IPv6 sei weniger sicher, weil es kein NAT verwendet, ist unbegründet
- Die tatsächliche Sicherheit wird nicht durch NAT, sondern durch Firewall-Richtlinien und Regeln zur Traffic-Kontrolle bestimmt
- Auch in IPv6-Umgebungen lässt sich mit einer passenden Firewall-Konfiguration eine Default-Deny-Sicherheitsstrategie aufrechterhalten
1 Kommentare
Hacker-News-Kommentare
Es wird empfohlen, vor der Teilnahme an der Diskussion Abschnitt 5 von RFC 4787 anzusehen
NAT ist keine Firewall, filtert aber trotzdem Traffic und bietet dadurch ein gewisses Maß an Sicherheitsfunktionalität
In der Praxis hat sich NAT über reine Adressübersetzung hinaus weiterentwickelt, und auch wenn IPv6 kein NAT verwendet, kann dieselbe Filterung mit einer Firewall umgesetzt werden
Linux netfilter implementiert sowohl NAT als auch Firewall; DNAT/SNAT-Regeln in der
nat-Tabelle sind NAT, REJECT/DROP-Regeln in derfilter-Tabelle fungieren als FirewallWenn nur NAT-Regeln angewendet werden, wird auch Traffic, der nicht zu bestehenden Verbindungen gehört, einfach durchgelassen
Es geht darum, dass NAT beim Aufbau einer nach außen gehenden Verbindung eine Zustandstabelle erstellt und die dazugehörigen eingehenden Pakete zulässt
Das „filtering“ in diesem Dokument bedeutet also keine unaufgeforderten eingehenden Verbindungen
IPv6 kann genauso sicher sein wie IPv4, aber das hängt von der Konfiguration ab
Wenn System- und Application-Engineers das Problem nicht ganzheitlich verstehen und sich auf NAT und Perimeter-Firewalls verlassen, ist das eine schlechte Sicherheitsgewohnheit
Vor allem je weiter sie von realen Implementierungen entfernt sind, desto geringer ist die Zuverlässigkeit von RFCs
In den mobilen Netzen der USA werden IPv6-Adressen auch ohne NAT verwendet
Zum Beispiel tunnelt T-Mobile IPv4 mit 464XLAT über IPv6
Das zeigt, dass zustandsbehaftete Firewalls auch ohne NAT in großem Maßstab betrieben werden können
Getestet wurde mit Termux und netcat; IPv4 lag hinter CGNAT, aber IPv6 war direkt erreichbar
Wenn die Netzkapazität nicht ausreicht, sollte dieses Problem gelöst werden
Wenn sich IPv6 allgemein durchsetzt, wird direkte Kommunikation für Menschen selbstverständlich werden
Als Netzwerktechniker wurde zuerst die Beziehung zwischen NAT und Sicherheit gelernt
Die privaten IPv4-Adressen (192.168.0.1) sind von außen schwer erreichbar, aber globale IPv6-Adressen können Geräteinformationen offenlegen
In IPv6 gibt es Alternativen wie Prefix Translation, die einige Vorteile von NAT erhalten und gleichzeitig transparenten Zugriff ermöglichen
Für einen fairen Vergleich müsste man in beiden Fällen interne oder externe Adressen vergleichen
In einer CGNAT-Umgebung sind eingehende Verbindungen nicht möglich, daher kann man IPv6 auf dieselbe Weise einschränken
Man kann Präfixe mit NAT66 verbergen, aber der praktische Sicherheitsgewinn ist gering
Viele Hacker verwechseln NAT und Firewall
NAT dient nicht der Sicherheit; Sicherheit liefert die Firewall
NAT ist Namespacing, die Firewall ist richtlinienbasierte Sicherheit
Schon Namespacing selbst ist eine starke Sicherheitseigenschaft, weil Angreifer Ressourcen nicht einmal „dem Namen nach“ kennen
Eine IPv6-Firewall kann durch eine einzige falsche Regel weltweit exponiert werden
Auch ohne Firewall kann NAT interne Ressourcen schützen
NAT reduziert die Angriffsfläche eines Heimnetzwerks auf einen einzigen Router
Firewalls können dagegen je nach Standardkonfiguration unterschiedlich arbeiten, weshalb sich IPv6 für normale Nutzer eher wie ein Sicherheitsrückschritt anfühlen kann
Zu behaupten, UPnP zerstöre die Sicherheit von NAT, ist dasselbe wie zu sagen, PCP zerstöre die Firewall
Zur Behauptung, die Default-Block-Eigenschaft von NAT sei ein Sicherheitsvorteil von IPv4
Die Default-Deny-Regeln von IPv6 liefern dasselbe Sicherheitsniveau, daher gibt es keinen strukturellen Sicherheitsunterschied
IPv4-NAT und IPv6-Default-Deny-Regeln erhalten dieselben invarianten Bedingungen aufrecht
Beide können bei Fehlkonfiguration gleichermaßen verwundbar werden
Es gab die Erfahrung, dass ein SBC kompromittiert wurde, weil man sich wegen NAT sicher fühlte und die IPv6-Firewall nicht konfiguriert war
Die Ursache war kein NAT, sondern ein Konfigurationsfehler bei IPv6
Auch NAT verursacht Sicherheitsprobleme
Es entstehen Reflection-Angriffe oder Schwierigkeiten bei der Nachverfolgung durch die Trennung von Adresse und Endpoint
Früher teilte AOL wenige Egress-Adressen, was es erschwerte, nur bestimmte Nutzer zu blockieren
Mit der Zeit wurde NAT aber fast wie ein Sicherheitsglaube (cargo cult) behandelt
Je nach ISP und Router-Konfiguration variiert die Wirkung von NAT
NAT ist keine beabsichtigte Sicherheitsfunktion, hat aber einen beiläufigen Sicherheitseffekt
Bei IPv6 braucht man eine Firewall mit Default-Deny, wenn jedes Gerät direkt eine Adresse erhält
UPnP-Spezifikation
fc00::/7per NAT umzusetzen ist ein ungewöhnlicher FallZur Aussage, wer NAT als Grundlage von Sicherheit ansehe, verstehe Netzwerke nicht
Es wird ein Fall geteilt, bei dem angesammelte Privacy-Adressen damals zum Ausfall eines SIP-Servers führten
Die dazugehörige Diskussion ist auch heute noch im Reddit-VOIP-Thread relevant
Zur Behauptung, NAT verwerfe keinen eingehenden Traffic
NAT führt lediglich Adressübersetzung durch und verwirft keine Pakete
Es heißt, der Text sei auf Grundlage dieses Feedbacks überarbeitet worden