Die Aktualisierungen gibt es als
RSS-Feed  oder im Changelog.

Privacy Handbuch

DNS (Domain Name Service) ist das Telefonbuch des Internet. Kurze Erklärung:
  1. Der Surfer gibt den Namen einer Website in der Adressleiste des Browsers ein.(z.B. "https://www.privacy-handbuch.de")
  2. Daraufhin fragt der Browser bei einem DNS-Server nach der IP-Adresse des Servers, der die gewünschte Webseite liefern könnte. Üblicherweise wird der DNS-Server des Zugangsproviders gefragt, also z.B. Telekom, Vodafon...
  3. Der angefragte DNS-Server erkundigt sich daraufhin bei den Servern der Root-Zone nach dem DNS-Server, der für die Toplevel Domain ".de" zuständig ist. Dann fragt er dieses Server nach dem DNS-Server, der für die Domain "privacy-handbuch.de" zuständig ist. Abschließend fragt er diesen DNS-Server nach der IP-Adresse des Webservers für "www.privacy-handbuch.de".
  4. Wenn ein passender Webserver gefunden wurde, dann wird die IP-Adresse an den Browser zurück gesendet (z.B. "81.169.145.78") oder NXDOMAIN, wenn der Surfer sich vertippt hat. Der Prozess dauert nur wenige Millisekunden.
  5. Dann sendet der Browser seine Anfrage an die IP-Adresse des entsprechenden Servers und erhält als Antwort die gewünschte Webseite.
DNS-Server werden nicht nur beim Surfen verwendet. Alle Dienste verwenden das DNS-System, um die IP-Adressen der Server zu ermitteln (E-Mail, Chat.... usw.)

Ein DNS-Server kennt also alle Internet Dienste und alle Webseiten, die man aufruft. Außerdem kann der DNS-Server durch Manipulation der Antworten entscheiden, welche Webseiten der Surfer sehen kann und welche Dienste man nutzen kann.

Möglichkeit zur Zensur

Die Möglichkeit der DNS-Manipulation zur Zensur des Internetzugangs sollte 2009 mit dem Zugangserschwerungsgesetz (ZugErschwG) genutzt werden. Alle Provider sollten eine geheime, vom BKA gelieferte Sperrliste von Domainnamen sperren und die Surfer beim Aufruf dieser Webseiten durch manipulierte DNS-Anworten auf eine Stopp-Seite umlenken. Durch zumutbare technische Maßnahmen gemäß dem Stand der Technik sollten die Provider die Nutzung alternativer, unzensierter DNS-Server verhindern.

Neben dem damaligen Innenminister Schäuble haben sich besonders Hr. v. Guttenberg und die damalige Familienministerin Ursula von der Leyen für das Gesetz engagiert. Frau v.d.Leyen wurde dafür mit dem Big Brother geehrt. Aufgrund des Widerstandes der Zivilgesellschaft wurde das ZugErschwG wieder aufgehoben.

Aktuell wird die Sperrung von Webseiten in Iran, Türkei, Ukraine oder Vietnam beispielsweise nach diesem Muster umgesetzt und in Großbritannien gibt es konkrete Pläne für eine Zensur­infrastruktur auf Basis von DNS-Manipulationen. Die vom Netzbetreiber Vodafone im Jan. 2018 umgesetzte Sperrung des Zugangs zum Streaming-Portal kinox.to wurde technisch ebenfalls mit einer DNS-Manipulation realisiert.

DNSSEC Validierung

DNSSEC verbreitet sich langsam aber immer weiter als Sicherheitskomponente. Ein DNSSEC validierender DNS-Server kann die Echtheit der DNS Informationen anhand kryptografischer Signaturen verifizieren und damit Manipulationen erkennen und verwerfen, wenn der Domaininhaber die DNS-Daten signiert hat. Damit wird verhindert, dass Dritte die Daten manipulieren und den Surfer irgendwie umleiten (Zensur? Phishing?). Wie das konkret funktioniert, ist eine Menge Krypto-Voodoo. Nehmen wir mal an, dass es funktioniert.

DNSSEC ist außerdem die Basis, um via DANE/TLSA die SSL-Zertifikaten zu verifizieren oder um mit OPENPGPKEY bzw. SMIMEA kryptografische Schlüssel sicher zu verteilen.

Im ersten Schritt ist es also ein Sicherheitsgewinn, wenn man einen DNSSEC validierenden DNS-Server verwendet. DNSSEC sichert aber nur die Auflösung der DNS-Anfragen auf dem DNS-Server, die "letzte Meile" zwischen DNS-Server und Nutzer bleibt ungeschützt.

Um diese Schwäche zu vermeiden, könnte man die DNSSEC Signaturen auch auf dem eigene Rechner validieren. Dafür muss man einen DNS-Cache-Server auf dem Computer installieren und entsprechend konfigurieren (z.B. dnsmasq für Linux). Damit entfällt die unsichere "letzte Meile" zwischen dem DNS-Server und Nutzer.

DNS Datenverkehr verschlüsseln

Das DNS-Protokoll enthält keine Authentifizierung die sicherstellt, dass man wirklich mit dem gewünschten DNS-Server verbunden ist. DNS-Anfragen könnten vom Provider einfach auf eigene Server umgeleitet werden. In Vorbereitung auf die Umsetzung des ZugErschwG sollte im DFN Forschungsnetz beispielsweise der Datenverkehr auf dem Port 53 zu eigenen, potentiell kompromittierten DNS-Server umgeleitet werden, um die Zensur durchzusetzen.

Um diese Schwächen zu vermeiden, kann man den DNS-Datenverkehr zum Upstream DNS-Server zusätzlich verschlüsseln. Das stellt kryptografisch sicher, dass man wirklich mit dem gewünschten DNS-Server verbunden ist (Authentifizierung) und verhindert eine Manipulation der Daten durch Dritte. Diese Verschlüsselung ist aber KEIN Privacy-Feature, das irgendwelche Daten gegenüber dem Provider geheim hält. Der Zugangsprovider kann trotzdem feststellen, welche Dienste man nutzt und welche Webseiten man aufruft!

Um den Datenverkehr kryptografisch abzusichern, gibt es folgende Möglichkeiten:
  1. DNScrypt ist die älteste Technik für verschlüsseltes DNS und basiert auf DNScurve von D.J. Bernstein. DNScrypt stellt mit kryptografischen Verfahren sicher, dass man wirklich den gewünschten DNS-Server verwendet und verschlüsselt den DNS Datenverkehr.

    Um DNScrypt zu verwenden, muss man den dnscrypt-proxy installieren, den es für verschiedene Betriebssystem und Smartphones gibt. Nach der Installation sollte man die Konfiguration anpassen und die vertrauenswürdigen Server auswählen, standardmäßig verwendet dnscrypt-proxy auch Google und Cloudflare.
  2. DNS-over-TLS wurde von der IETF im Mai 2016 im RFC 7858 spezifiziert. Die DNS-Server Software ldns, Unbound und Knot beherrschen in den aktuellen Versionen DNS-over-TLS. Es gibt einige frei nutzbare, öffentliche DNS-Server, die DNS-over-TLS beherrschen. 
    • Wenn man den DNS Daemon Unbound überreden möchte, verschlüsselt mit den Upstream Servern zu kommunizieren, sind Anpassungen in der Config nötig: server:
         # Entweder: Root-CA Zertifikatsbundle in Debian/Ubuntu
         tls-cert-bundle: /etc/ssl/certs/ca-certificates.crt

         # Oder: Root-CA Zertifikatsbundle in Redhat/Fedora
         tls-cert-bundle: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem

      forward-zone:
         name: "."
         forward-tls-upstream: yes

         # Quad9 Primary & Secondary DNS Server (Beispiel)
         forward-addr: 9.9.9.9@853#dns.quad9.net
         forward-addr: 149.112.112.112@853#dns.quad9.net

         # SecureDNS.eu DNS Server (Beispiel)
         forward-addr: 146.185.167.43@853#dot.securedns.eu

         # Dismail.de DNS Server (Beispiel)
         forward-addr: 80.241.218.68@853#fdns1.dismail.de

         # Digitale Gesellschaft (CH) DNS Server (Beispiel)
         forward-addr: 185.95.218.42@853#dns.digitale-gesellschaft.ch
         forward-addr: 185.95.218.43@853#dns.digitale-gesellschaft.ch

         # DNS Server der Foundation for Applied Privacy (Beispiel)
         forward-addr: 37.252.185.232@853#dot1.appliedprivacy.net
      Die Adresse eines Upstream Servers besteht aus der IP-Adresse, dem Port (@853) und hinter dem # der Namen des Servers für die TLS Authentifizierung. 
    • Android 9 "Pie" kann ebenfalls DNS-over-TLS nutzen. Die Option heißt "Privates DNS" und verbirgt sich in den erweiterten Einstellungen für "Netzwerk & Internet". Hier kann man den Namen des gewünschten DoT-Servers eintragen:
      DNS-over-TLS in Android aktivieren
      Die initiale Ermittlung der IP-Adresse des DoT-Servers erfolgt mit dem Standard-Resolver, danach wird auf DNS-over-TLS umgeschaltet.

      Hinweis: Wenn man Apps verwendet, die als Werbefilter oder Internetfilter arbeiten und sich dafür als VPN-App ausgeben (z.B. "NetGuard" oder "Blockada"), dann funtioniert diese einfache Umschaltung auf DNS-over-TLS (noch) nicht!
  3. DNS-over-HTTPS wurde im Sommer 2016 von Google initiiert. Es dient in erster Linie Umgehung von Zensur auf Basis von DNS Manipulationen und ist aufgrund des HTTP Overhead deutlich langsamer als normales DNS.
      Es gibt einige Clients, die DNS-over-HTTPS sprechen können:
      • Der dnscrypt-proxy kann als lokaler DNS Resolver für Desktop PCs genutzt werden und kann auch DNS-over-HTTPS Server verwenden.
      • Firefox 62+ kann die DNS Einstellungen des Systems umgehen und DNS-over-HTTPS Server als Trusted Recursive Resolver verwenden.
      • Thunderbird 68+ kann DNS-over-HTTPS als Trusted Recursive Resolver verwenden. Es sind die gleichen Parameter wie bei Firefox anzupassen.
      • Für Android Smartphones gibt es die App Intra, die DNS-over-HTTPS bereitstellt.
      • Für iPhones kann man die App DNSCloak verwenden (siehe: Tracking blockieren auf Smartphones).
    • Folgende DNS Server bieten DNS-over-HTTPS an:
      • SecureDNS: https://doh.securedns.eu/dns-query, IP: 146.185.167.43
      • Applied Privacy: https://doh.appliedprivacy.net/query, IP: 37.252.185.229
      • Digitale Gesellschaft (CH): https://dns.digitale-gesellschaft.ch/dns-query,
        IPs: 185.95.218.42, 185.95.218.43
      • Quad9: https://dns.quad9.net/dns-query, IP: 9.9.9.9
      • Cloudflare: https://cloudflare-dns.com/dns-query, IP: 1.1.1.1
      • Google: https://dns.google.com/resolve, IP: 216.58.214.110
      Hinweis: Die Datenschutz Policies von Google und Cloudflare zeigen, dass der Service nicht ganz uneigennützig angeboten wird.

Hinweis für Wi-Fi Hotspots

Die Anmeldung für viele Wi-Fi Hotspots (zum Beispiel in Hotels, U-Bahn usw.) arbeitet in der Regel mit einer Manipulation des DNS. Validierung mittels DNSSEC und Verschlüsselung mit DNScrypt oder DNS-over-TLS funktionieren daher an Wi-Fi Hotspots nicht.

Wer mit seinem Laptop unterwegs einen Wi-Fi Hotspot nutzen möchte, muss den DNS-Server des Hotspot Betreibers verwenden und die lokale DNSSEC Validierung abschalten.
Lizenz: Public Domain