Websites die konfigurierten DNS Server auslesen können

Hallo zusammen,
ich habe ein Verständnisproblem und hoffe es kann mir jemand erklären :slight_smile:

In meinem Heimnetz habe ich einen PiHole inkl. Stubby (für TLS over DNS) installiert. In der Stubby Konfigurationsdatei habe ich die externen DNS-Server eingetragen und alles funktioniert soweit wunderbar.

Es gibt nun diverse Websites die ermitteln können, welchen DNS-Server man verwendet (z.b.: https://www.top10vpn.com/tools/what-is-my-dns-server/). In meinem Fall ist das auch korrekt und enspricht den Adressen die ich in Stubby eingetragen habe.

Was ich nun nicht verstehe, wie das überhaupt möglich ist, dass die Site meine DNS-Konfiguration kennt. Das Java Script welches in meinem Browser läuft, hat doch keinen Zugriff auf mein lokales Netz, oder doch? Wie wird der von mir eingetragene DNS ermittelt?

vielen Dank!

1 „Gefällt mir“

Ich hab genau das gleiche Setup wie du! :slight_smile: (Ich verwende vor allem Quad9 als externen DNS-Server.)

Eine Antwort auf deine Frage weiß ich allerdings auch nicht, das würde mich auch interessieren…

@protozoan
https://bash.ws/dnsleak
https://www.dnsleaktest.com
https://www.addr.tools

Vielen Dank für die Links,
dieser Abschnitt hat es ganz gut erklärt:

How does DNS leak test work?

When you click on start test button the bash.ws generates faked subdomain names like lala.blabla.bash.ws (to avoid DNS caching mechanism). Your browser will try to load nonexistent images from these subdomains (lala.blabla.bash.ws/some-image.png). And as a result the browser will try to detect IPs of faked subdomains. The DNS servers from your system will be used to do this work. bash.ws can catch all these DNS requests and is able to detect what IP has sent the DNS request. The
bash.ws will show you all the IPs which has been sending the DNS requests. If the IP is not trusted (it owns by ISP or another untrusted company) you may be in trouble and the test will warn you.

Aber das heißt, dass der DNS-Server die Subdomains direkt bei der Hauptdomain anfragt. Sehe ich das richtig?

2 „Gefällt mir“

Dein Resolver fragt den Nameserver, der autoritativ für den Bereich zuständig ist, der also das Wissen von sich aus über diese DNS-Zone hat. Z. B. kann bei Netcup für eine Domain wie bash.ws angegeben werden, dass ein eigener autoritativer Nameserver betrieben wird. Alle DNS-Anfragen an den Netcup-Nameserver werden dann nur mit einem Referral beantwortet, das dem Resolver sagt: „Frag bei bash.wss Nameserver nach“. Dein Resolver fragt daraufhin direkt bash.wss Nameserver, welcher beliebige Subdomains festlegen und beantworten kann (oder auch nicht), wie auch blabla.bash.ws oder lala.blabla.bash.ws.

2 „Gefällt mir“

Vielen Dank für die Erklärung!

1 „Gefällt mir“

Deine Frage ist berechtigt und das Konzept dahinter ist nicht sofort ersichtlich. Eine Webseite wie ein DNS-Leak-Test kann herausfinden, welchen DNS-Server dein System verwendet, indem sie spezielle Domains zum Nachladen einbettet, die nur über ihren eigenen autoritativen DNS-Server aufgelöst werden können. Wenn dein Browser eine solche Testdomain lädt, muss dein System sie über den konfigurierten DNS-Server anfordern. Dein konfigurierter DNS-Server kann die Domain nicht selbst auflösen und leitet die Anfrage an den autoritativen DNS-Server des Testanbieters weiter. Da der Testanbieter Zugriff auf die Logs seines eigenen autoritativen DNS-Servers hat, kann er sehen, von welchem DNS-Server die Anfrage kam und somit feststellen, welchen DNS-Server dein System tatsächlich verwendet.

(Edit) Um es noch einmal zusammenzufassen: Nicht die DNS-Leak-Test-Webseite weiß, welchen DNS du verwendest, sondern der Betreiber des DNS-Leak-Tests betreibt eigene DNS-Server, die von deinem DNS-Server angefragt werden (müssen), um die Adressen der versteckten Inhalte aufzulösen. Er weiß es also von seinem DNS-Server, nicht von seiner Webseite.

Der Test zeigt also nur die Fakten - die Interpretation hängt davon ab, welche DNS-Server der Benutzer tatsächlich erwartet. Wenn du z.B. ein VPN benutzt und erwartest, dass die DNS-Anfrage vom DNS-Server des VPN-Providers kommt, der Test aber deine eigenen DNS-Server anzeigt, liegt ein DNS-Leak vor.

3 „Gefällt mir“

Danke, jetzt verstehe ich das Konzept :slight_smile:

2 „Gefällt mir“