1 Punkte von GN⁺ 2024-09-18 | 1 Kommentare | Auf WhatsApp teilen

Warnung: macOS Sequoia 15 kann die DNS-Verschlüsselung umgehen

DNS-Verschlüsselung 101

  • Wenn man in einem Webbrowser einen Hostnamen eingibt, z. B. apple.com, muss dieser Name in eine IP-Adresse aufgelöst werden, damit der Computer eine Verbindung zum Server herstellen kann
  • Diese Abfrage erfolgt normalerweise unverschlüsselt, sodass Internetanbieter und andere Parteien, die die Verbindung überwachen, sehen können, welche Websites besucht werden
  • Um diese Abfragen zu schützen, bietet Little Snitch 6 die neue Funktion DNS-Verschlüsselung
  • Wenn die DNS-Verschlüsselung aktiviert ist, werden alle Namensauflösungen über Little Snitch in verschlüsselter Form ausgeführt
  • Dafür registriert Little Snitch einen DNS-Proxy, und macOS sendet alle DNS-Anfragen an diesen Proxy, damit die Auflösung verschlüsselt erfolgt

Aber …

  • Bei der Untersuchung von DNS-bezogenen Problemen in macOS 15 Sequoia wurde festgestellt, dass einige DNS-Anfragen, insbesondere solche über bestimmte Low-Level-Legacy-APIs, nicht an den Proxy weitergeleitet werden
  • Offenbar gibt es in macOS Sequoia einen Bug, durch den einige Anfragen den installierten DNS-Proxy umgehen und unverschlüsselt an den Standard-Nameserver des Systems gesendet werden
  • Dieser Bug betrifft möglicherweise nicht nur Little Snitch, sondern alle Arten von DNS-Proxys
  • Wer also die neue DNS-Verschlüsselungsfunktion von Little Snitch 6 oder andere Drittanbieter-DNS-Proxys nutzt, sollte sich bewusst sein, dass einige DNS-Abfragen den Proxy umgehen können, bis Apple das Problem in einem zukünftigen macOS-Update behebt
  • DNS-Abfragen über High-Level-APIs sind von diesem Bug hingegen nicht betroffen. Web-Browsing in Safari oder Chrome profitiert also weiterhin von verschlüsselten Abfragen. Firefox könnte dagegen betroffen sein

Reproduktion

  1. DNS-Verschlüsselung in den Little-Snitch-Einstellungen aktivieren
  2. Wireshark mit dem Capture-Filter port 53 starten
  3. Den folgenden Code in einem Xcode-Playground ausführen:
    import Foundation
    let domain = "dnsproxytest.com"
    var result: UnsafeMutablePointer<addrinfo>?
    let status = getaddrinfo(domain, nil, nil, &result)
    
  • Man kann sehen, dass die Abfrage für dnsproxytest.com in Wireshark unverschlüsselt über UDP-Port 53 erscheint, dem Standard für unverschlüsselte Abfragen
  • Außerdem zeigt der Netzwerkmonitor von Little Snitch keinerlei Traffic für diese Abfrage an. Das deutet darauf hin, dass die Abfrage den Netzwerkfilter vollständig umgangen hat
  • Der Bug wurde Apple gemeldet, und es wird auf eine schnelle Behebung gehofft. Weitere Updates sollen folgen

Update 2024-09-17, 19:10 Uhr

  • Weitere Untersuchungen haben ergeben, dass dieser Bug mindestens seit macOS 14.5 Sonoma existiert und möglicherweise auch in noch älteren Versionen vorhanden ist. Da aktuell kein Zugriff auf ältere 14.x-Systeme besteht, konnte dies nicht getestet werden

Zusammenfassung von GN⁺

  • Dieser Artikel behandelt einen Bug in macOS Sequoia 15, durch den die DNS-Verschlüsselung umgangen werden kann
  • DNS-Verschlüsselung ist eine wichtige Funktion zum Schutz der Privatsphäre von Internetnutzern
  • Der Bug betrifft insbesondere DNS-Anfragen, die über Low-Level-Legacy-APIs erfolgen
  • Bis Apple das Problem behebt, sollten Nutzer sich bewusst sein, dass einige DNS-Abfragen unverschlüsselt sein können
  • Andere Projekte mit ähnlicher Funktionalität sind DNS-Filtering-Lösungen wie Pi-hole

1 Kommentare

 
nearfall 2024-09-18

Vielen Dank für diese wichtigen Informationen.
Es ist auf jeden Fall beruhigend, dass man sich bei Safari und Chrome erst einmal keine Sorgen machen muss.