Expertenwissen

DNS über HTTPS vs. TLS - Schlüsselkonzepte, Implementierungsrichtlinien und Empfehlungen

Wenn Sie auf eine Website zugreifen, zeigt Ihnen das Vorhängeschloss-Symbol in Ihrem Browser an, ob die von Ihnen besuchte Website sicher ist. Das liegt daran, dass sich Ihr Browser und der Webserver auf einen Verschlüsselungsmechanismus geeinigt haben, bevor ein Datenaustausch zwischen den beiden stattfindet. Dadurch wird sichergestellt, dass Ihre Kommunikation mit Ihrer Bank oder Ihrer Social-Media-Seite über das Internet sicher bleibt. 

Ein traditionell übersehener Schritt in der Kommunikation ist jedoch die DNS-Auflösung. Das Domain Name System (DNS) funktioniert wie das Telefonbuch des Internets und übersetzt lesbare Website-Namen in numerische IP-Adressen. Wenn Sie eine Webadresse in Ihren Browser eingeben, sendet dieser eine DNS-Anfrage durch eine Kette von konfigurierten DNS-Servern, um die zugehörige Ziel-IP-Adresse zu ermitteln. 

Die Kommunikation mit DNS-Servern erfolgt nach wie vor meist im Klartext, und böswillige Organisationen können diese Informationen abhören. Im folgenden Artikel werden die neuen Normen erörtert, mit denen die Bedenken hinsichtlich des Datenschutzes im Zusammenhang mit dem Bereichsnamensystem ausgeräumt werden sollen.

Zusammenfassung der wichtigsten Konzepte für DNS über HTTPS und TLS

DNS über TLS DNS über HTTPS
Wie es funktioniert Der Client kapselt die DNS-Daten direkt in TLS ein. Die DNS-Kommunikation wird zunächst als HTTP-Anfrage vorbereitet und dann über TLS transportiert.
Bevorzugter Anwendungsfall Wo Netzwerktransparenz erforderlich ist Wenn der Schutz der Privatsphäre ein wichtiges Anliegen ist.
Performance Vergleichsweise schneller als DoH Vergleichsweise langsamer als DoT. Der Unterschied in der Verzögerung ist minimal, aber aufgrund des zusätzlichen Protokoll-Overheads von HTTPS immer noch vorhanden.
Datenschutz Ein geringeres Maß an Datenschutz, da der DNS-Netzwerkverkehr sichtbar ist. Höherer Grad an Datenschutz, da DNS über HTTPS transportiert wird.
Umgehung der Zensur Potenziell geringere Möglichkeit der Umgehung der Zensur. Umgehung der Zensur auf höherem Niveau.
Netzwerkanschluss 853 443

Traditionelles DNS und seine Schwachstellen

Die DNS-Kommunikation erfolgt heute meist über Klartextkanäle. Wenn Ihr Computer eine DNS-Anfrage stellt, gibt er zwei wichtige Informationen weiter, die Bedenken hinsichtlich des Datenschutzes aufwerfen - den QNAME oder die Website, die Sie aufrufen möchten, und Ihre Quell-IP-Adresse. 

Der QNAME ist der Ausgangspunkt für DNS-Abfragen und repräsentiert den gesuchten Domänennamen oder Dienst. Je nach Art des Dienstes oder der angeforderten Information sucht die DNS-Abfrage nach verschiedenen Eintragstypen. Zum Beispiel,

  • Eine rekordverdächtige direkte IP-Adressauflösung
  • MX-Datensatz-E-Mail-Zustellung
  • SRV-Einträge - VoIP oder Verzeichnisdienste

Jemand, der Zugriff auf den Netzwerkpfad zwischen Ihrem Computer und dem DNS-Resolver hat, kann sich in das Netzwerk einklinken, Ihre Daten erfassen und Ihre Absichten herausfinden. So kann der Angreifer beispielsweise feststellen, ob Sie auf eine bestimmte Website zugreifen, eine E-Mail schreiben oder einen bestimmten Dienst anfordern.

DNS-Sicherheitslücken

Um solche Datenschutzprobleme zu lösen, hat die Internet Engineering Task Force (IETF) Verbesserungen der DNS-Standards vorgeschlagen, indem sie verschlüsselte Transportmechanismen verstärkt. Die bemerkenswertesten von der IETF zu diesem Zweck vorgeschlagenen Standards sind DNS über HTTPS und DNS über TLS.

{{banner-15="/design/banners"}}

DNS über TLS

DNS over TLS (DoT) sichert DNS-Anfragen, indem es sie mit Transport Layer Security (TLS) verschlüsselt, einem Nachfolger von Secure Socket Layer (SSL). Die IETF spezifiziert DNS over TLS in RFC 7858. 

TLS und wie es funktioniert

TLS verwendet sowohl symmetrische als auch asymmetrische Verschlüsselungsmechanismen, um Datenübertragungen zu sichern. Der unten erläuterte Vorgang wird auch als TLS-Handshake bezeichnet.

  1. Der Client sendet eine Client-Hallo-Nachricht an den Server, die die höchste vom Client unterstützte TLS-Version enthält.
  2. Der Server antwortet mit einer Server-Hallo-Nachricht und der gewählten TLS-Version.
  3. Der Client und der Server einigen sich auf ein gemeinsames Geheimnis, das zur Ver- und Entschlüsselung von Daten während der Sitzung verwendet wird.
  4. Der Server sendet sein digitales Zertifikat an den Client, einschließlich des öffentlichen Schlüssels des Servers, dem eine Zertifizierungsstelle (CA) vertraut.
  5. Der Client und der Server leiten Sitzungsschlüssel aus dem gemeinsamen Geheimnis ab.

Diese Schlüssel verschlüsseln und entschlüsseln Daten zwischen dem Client und dem Server. Der Sitzungsschlüssel wird verworfen, sobald die Kommunikationssitzung beendet ist.

TLS-Handshake(Quelle)

Wie DNS über TLS funktioniert

Port 853 ist der für DoT-Dienste vorgesehene Standardport. DoT-fähige DNS-Server sind so konfiguriert, dass sie Verbindungen von Clients für eingehende DNS-Abfragen an diesem Port abhören und annehmen. Ein dedizierter Port hilft dabei, DoT-Verkehr von anderem Netzwerkverkehr zu unterscheiden, was die Verwaltung von verschlüsselten DNS-Abfragen erleichtert. In Szenarien, in denen Netzwerkkonfigurationen die Weiterleitung des Datenverkehrs über bestimmte Ports erfordern (z. B. Firewall-Traversal, Richtliniendurchsetzung oder andere Gründe), können sich Client und Server einvernehmlich auf die Verwendung eines anderen Ports einigen. Die Änderung des Standard-Ports erfordert eine Neukonfiguration beider.

Wenn der DNS-Client einen Domänennamen auflösen muss, baut er eine TCP-Sitzung (Transmission Control Protocol) mit dem DoT-fähigen DNS-Server an Port 853 auf. Der Prozess beinhaltet den TLS-Handshake, bei dem Client und Server kryptografische Informationen austauschen. Der Client leitet dann verschlüsselte DNS-Anfragen an den Server weiter, der verschlüsselte Antworten zurückgibt.

Um die Leistung zu steigern, kann der Client mehrere Abfragen an den DNS-Server in derselben TLS-Sitzung durchführen. Dadurch wird der Overhead vermieden, der durch den wiederholten Aufbau einer TCP-Verbindung und dann einer TLS-Sitzung entsteht.

Der DoT-Verkehr wird über die Leitung verschlüsselt, und sein Inhalt kann nicht gelesen werden, was jedoch nicht unbedingt alle Formen der DNS-Nachverfolgung durch ISPs verhindert. Er ist immer noch als DNS-Verkehr identifizierbar, da Client und Server in der Regel über den spezifischen Port 853 kommunizieren.

DNS über HTTPS

DNS over HTTPS (DoH) ist ein Protokoll, das die DNS-Auflösung über das HTTPS-Protokoll durchführt. Dies bedeutet, dass DNS-Anfragen über HTTPS als Transportschicht an den Resolver gesendet werden, wodurch sichergestellt wird, dass sie zusammen mit dem übrigen HTTPS-Verkehr verschlüsselt werden. Die IETF spezifiziert DNS über HTTPS (DoH) in RFC 8484. 

So funktioniert HTTPS

Das Hypertext Transfer Protocol (HTTP) ist das wichtigste Kommunikationsprotokoll des Internets. Das Protokoll bietet von sich aus keine Sicherheit, da sein Header und seine Nutzdaten für Menschen lesbar sind. Seine sichere Version (HTTPS) stützt sich auf TLS, um den Datenaustausch über das öffentliche Internet zu sichern. 

Wenn ein Client-Browser eine beliebige Webseite von einem Server anfordert, baut der Client-Computer zunächst eine TCP-Verbindung mit dem Server und dann eine TLS-Sitzung zwischen dem Client und dem Server auf (wie oben erläutert). Nach dem TLS-Handshake verwendet der Client-Browser die TLS-Sitzung, um die HTTP-Anfragen an den Webserver zu verschlüsseln. Der Webserver verwendet dieselbe TLS-Sitzung, um mit den erforderlichen Daten zu antworten.

Wie HTTPS funktioniert(Quelle)

Wie DNS über HTTPS funktioniert

DoH funktioniert wie ein Standard-HTTPS-Protokoll über denselben Port 443, so dass DoH nicht von normalem HTTPS-Verkehr über ein Netzwerk zu unterscheiden ist.

Das Kernstück des DoH-Betriebs ist die Angabe eines URI (Uniform Resource Identifier), der auf den DoH-Server verweist. Dieser URI, z. B. https://dns. server.net/dns-query, ist im Wesentlichen die Webadresse des DoH-Dienstes und gibt an, wohin die DNS-Anfragen innerhalb des Namensraums des Servers gerichtet werden sollen.

Endbenutzer können den DoH-URI oft in ihren Browsern oder DNS-Clients konfigurieren. Moderne Browser wie Firefox, Chrome und Edge bieten Einstellungen, in denen Benutzer die URI ihres bevorzugten DoH-Servers auf der Grundlage von Kriterien wie Datenschutzrichtlinien, Leistung oder Zuständigkeit eingeben können. In Unternehmensnetzwerken konfigurieren Netzwerkadministratoren DoH-URIs, um bestimmte DNS-Auflösungsrichtlinien durchzusetzen. ISPs oder DNS-Dienstanbieter können die Konfiguration von DoH-URIs auch mit dem Dynamic Host Configuration Protocol (DHCP) automatisieren. 

Unter Verwendung des definierten URI kann der Client die HTTP GET- oder POST-Methode verwenden, um die gewünschte DNS-Anfrage vom DoH-Server zu lösen. Der HTTP-Body stellt die DNS-Anfrage als Medientyp application/dns-message dar. Der Client und der Server tauschen DNS-Anfragen und Antworten über eine sichere TLS-Verbindung aus.

{{banner-2="/design/banners"}}

Implementierung von DNS über HTTPS und DNS über TLS

Bevor man sich für einen öffentlichen DoT- oder DoH-Resolver entscheidet, sollte man sich über die Datenschutz- und Sicherheitsrichtlinien des gewählten Dienstanbieters informieren. Obwohl der DNS-Verkehr zwischen dem Endkunden und dem DNS-Server verschlüsselt wird, kann der DNS-Server dennoch die IP-Adresse des Kunden identifizieren und die vom Kunden gestellten Anfragen aufzeichnen.

DNS-Anbieter unterstützen DoH und DoT

Im Folgenden finden Sie eine Liste einiger bekannter offener Resolver, die DoT und DoH unterstützen

Anbieter IP-Adresse TLS-Anschluss DOH URL
Cloudflare 1.1.1.1 2606:4700:4700::1111 853 https://cloudflare-dns.com/dns-query
Quad9 9.9.9.9 2620:fe::fe 853 https://dns.quad9.net/dns-query
Google 8.8.8.8 2001:4860:4860::8888 853 https://dns.google/dns-query

Betriebssysteme, die DoH und DoT unterstützen

DoT und DoH sind relativ neuere Standards und erfordern in den meisten Fällen manuelle Konfigurationen auf der Client-Seite, um diese Protokolle zu aktivieren.

Betriebssystem DoT DoH Anmerkungen
Apple macOS 11 (Big Sur und höher) Ja Ja Native Unterstützung für DoT und DoH in den Netzwerkpräferenzen.
Apple iOS (14 und höher) Ja Ja Native Unterstützung für DoT und DoH ist über DNS-Profile oder Anwendungen verfügbar.
Google Android (9 und höher) Ja (eingeschränkt) Ja Native Unterstützung für DoT mit begrenzten DoH-Optionen in den Entwicklereinstellungen (Android 11 und höher).
Windows 11 und Windows Server 2022 Begrenzt Ja Native Unterstützung nur für DoH. Eingeschränkte DoT-Unterstützung kann über Tools von Drittanbietern verfügbar sein.
Linux-Distributionen (variiert) Ja Ja Die Unterstützung variiert je nach Distribution und Konfiguration. Erfordert in der Regel eine manuelle Einrichtung mit Tools wie systemd-resolved.

‍Browser-Unterstützung für DoH

Browser Version Kommentar
Firefox Ver 62 aufwärts (seit 2019) https://support.mozilla.org/en-US/kb/firefox-dns-over-https
Chrom Ab Ver 83 (seit 2020) https://blog.chromium.org/2020/05/a-safer-and-more-private-browsing-DoH.html
Bromit Ver 67.0.3396.88 https://github.com/bromite/bromite/wiki/DNS-over-HTTPS

Implementieren Sie Ihren eigenen DoT- und DoH-Server mit PowerDNS DNSDIST

Sie können DoT und DoH für Ihr Unternehmen mit der PowerDNS DNSDIST-Anwendung implementieren, ohne vorhandene DNS-Auflöser zu ändern. DNSDIST ist ein Open-Source-DNS-Load-Balancer, der vor jedem DNS-Auflöser eingesetzt werden kann und Standard-DNS-, DoT- und DoH-Fähigkeiten bietet. PowerDNS bietet ein Software-Repository für die meisten gängigen Linux-Distributionen. Die Anweisungen für die Installation von DNSDIST über Repositories sind auf der PowerDNS-Repositoriumsseite verfügbar.

Nach der Installation muss die Anwendung konfiguriert werden. Wir können mehrere Backend-Server definieren, um die Last des DNS-Verkehrs auszugleichen und die Ausfallsicherheit zu gewährleisten. Bearbeiten Sie die Datei /etc/dnsdist/dnsdist.conf mit der folgenden Konfiguration.

-- define downstream servers, aka backends
-- https://dnsdist.org/guides/downstreams.html
newServer("1.1.1.1")
newServer("2606:4700:4700::1111")
newServer("8.8.8.8")
newServer("2001:4860:4860::8888")

Als Nächstes müssen wir den Abhördienst von DNSDIST aktivieren, um Verbindungen über den Standard-DNS-Port 53 zu akzeptieren. Um DoT und DoH zu aktivieren, müssen Sie ein ordnungsgemäß von einer Zertifizierungsstelle signiertes Zertifikat und einen Schlüssel bereitstellen. Fügen Sie die folgenden Konfigurationen in die DNSDIST-Konfigurationsdatei ein.

-- accept plain DNS (Do53) queries on UDP/53 and TCP/53
addLocal("0.0.0.0:53")

-- accept DNS over TLS (DoT) queries on TCP/853
addTLSLocal('0.0.0.0:853', {"/etc/ssl/domain-cert.pem"}, {"/etc/ssl/domain-cert.key"})

-- accept DNS over HTTPS (DoH) queries on TCP/443
addDOHLocal("0.0.0.0:443", {"/etc/ssl/domain-cert.pem"}, {"/etc/ssl/domain-cert.key"}, "/dns-query")

Nach der Konfiguration muss der DNSDIST-Dienst (erneut) gestartet werden, und Sie haben nun Ihren eigenen DoT- und DoH-Resolver.

DNS über HTTPS vs. TLS 

Sowohl DoT als auch DoH wurden entwickelt, um den DNS-Verkehr zwischen Client und DNS-Server vor neugierigen Blicken über das öffentliche Internet zu schützen. Zu diesem Zweck stützen sich beide auf die Sicherheits- und Verschlüsselungsmechanismen von TLS. Außerdem laufen beide Protokolle über die TCP-Übertragungsschicht. Der Hauptunterschied zwischen den beiden besteht jedoch darin, dass:

  • Bei DoT kapselt der Client die DNS-Daten direkt in TLS ein
  • Bei DoH wird die DNS-Kommunikation zunächst als HTTP-Anfrage vorbereitet und dann mit TLS transportiert. 

Die Implementierung von DoT und DoH erhöht die Latenzzeit bei der DNS-Auflösung im Vergleich zu unverschlüsselten UDP-DNS-Anfragen. Bei DoH verursacht der zusätzliche Schritt, die DNS-Kommunikation in HTTP zu kapseln und über TLS/TCP zu transportieren, eine etwas größere Verzögerung als DoT.  

Anwendungsfälle

DoT wird in Unternehmen bevorzugt, in denen Transparenz und Kontrolle des Netzwerks erforderlich sind. DoT verwendet einen eigenen Port (853), der es den Netzwerkadministratoren ermöglicht, den DNS-Netzwerkverkehr zu überwachen. Der DNS-Inhalt ist jedoch weiterhin unsichtbar, es sei denn, die Organisation implementiert ihren eigenen DoT- oder DoH-Resolver.

DoH wird bevorzugt, wenn der Schutz der Privatsphäre im Vordergrund steht. DoH verwendet denselben Port (443) wie HTTPS-Verkehr, wodurch DNS-Anfragen im Rahmen von Web-Browsing-Aktivitäten effektiv getarnt werden können. DoH kann auch die Umgehung von Beschränkungen in Regionen erleichtern, die DNS-basierte Zensur betreiben, da es Beschränkungen für bestimmte DNS-Auflöser umgehen kann.

Außerdem ist zu beachten, dass DoT und DoH in erster Linie für den Schutz der Privatsphäre der Endnutzer konzipiert wurden. Dies kann für Unternehmen, die DNS-basierte Filter für die elterliche Kontrolle oder den Schutz vor Malware einsetzen, zu Problemen führen. Durch die Verschlüsselung wird der DNS-Verkehr des Benutzers unsichtbar, und die Organisation verliert die Sichtbarkeit und Kontrolle, die sie zuvor hatte. 

{{banner-23="/design/banners"}}

Verbesserung von DNS über HTTPS und DNS über TLS 

Die folgenden Verbesserungen sind sowohl für DoH als auch für DoT erforderlich

Latenzzeit

Um die Latenzzeit der DNS-Auflösung zu verbessern und die gleichen Sicherheits- und Datenschutzmerkmale zu bieten, wurde in RFC 9250 ein neuer Protokollstandard DNS over QUIC vorgeschlagen. Das QUIC-Protokoll nutzt die Verschlüsselungsfunktionen von TLS 1.3, verwendet aber UDP anstelle von TCP für eine effizientere Kommunikation auf der Transportschicht. Zusätzliche Multiplexing-Optimierungen und Verbesserungen in TLS 1.3 verringern die Latenzzeit weiter.

Mehrstufige Sicherheit

Die DoT- und DoH-Protokolle bieten Verschlüsselung und Datenschutz für die Kommunikation zwischen dem DNS-Client und dem DNS-Auflöser. Die Kommunikation zwischen dem DNS-Auflöser und den autoritativen Servern erfolgt jedoch weiterhin über das unverschlüsselte DNS-Standardprotokoll. Es wurde ein experimenteller RFC 9539 vorgeschlagen, aber es gibt noch keine Standardimplementierung. 

Die beiden Protokolle können auch nicht gegen andere Arten von DNS-Bedrohungen wie DNS-Spoofing oder Cache-Poisoning schützen. Zum Schutz vor solchen Angriffen wurde die DNS Security Extension (DNSSEC) standardisiert, um die Authentifizierung der Datenherkunft und den Schutz der Datenintegrität zu gewährleisten. DNSSEC fügt den DNS-Antworten digitale Signaturen hinzu, mit denen die Clients authentifizieren können, dass die Daten aus einer authentischen Zone stammen und während der Übertragung nicht verändert wurden. DNSSEC verschlüsselt jedoch nicht die Antworten, die während des Transports im Klartext bleiben, und kann daher nicht als Alternative zu DoT/DoH dienen.

Die blauen Linien zeigen den unverschlüsselten DNS-Verkehr, die grüne Linie den verschlüsselten DNS-Verkehr(Quelle)

Tracing

Wie schnell Ihr DNS für einen Benutzer aufgelöst wird, ist seine Einführung in Ihre Marke. Die Rückverfolgung von DNS-Problemen bis zur richtigen Auflösungsebene bereitet in der Regel Kopfschmerzen. Mit der PlattformCatchpoint können Sie schnell feststellen, ob Ihr DNS fehlerhaft ist und auf welcher Ebene in der Auflösungskette das Problem aufgetreten ist. Unabhängig von der Auflösungsebene können Sie Probleme überall in Ihrer DNS-Hierarchie ausfindig machen. Außerdem erhalten Sie sofortigen Zugriff auf DNS-Antwortzeiten und Metriken auf Netzwerkebene - und das alles ohne Installation von Agenten.

Abschließende Gedanken

In diesem Artikel haben wir die Datenschutzbedenken im Zusammenhang mit dem Standard-DNS-Auflösungsprozess hervorgehoben und erläutert, wie die neueren DoT- und DoH-Protokolle entwickelt wurden, um diese Probleme zu lösen. Beide Protokolle haben eine gemeinsame Verschlüsselungsschicht, unterscheiden sich aber in der Netzwerktransparenz und dem Grad des Datenschutzes, den sie bieten. 

Es handelt sich um relativ neuere Protokolle als der ursprüngliche DNS-Standard, aber ihre Implementierung ist noch nicht überall verbreitet. Außerdem haben DoT und DoH einige potenzielle Auswirkungen auf die Leistung, die in dem noch neueren vorgeschlagenen Protokoll, DoQ, behandelt werden.

Weitere Fachbeiträge