
Ich stelle diese Frage als Software (und auch, weil es hier in der Vergangenheit einige DNSSEC-Fragen gab).
http://en.Wikipedia.org/wiki/DNS_cache_poisoning#Prevention_and_mitigation
Ich habe das hier auf Wikipedia gesehen und mich gefragt, ob es mir jemand erklären könnte:
„Wie oben erwähnt, kann die Zufallsauswahl des Quellports für DNS-Anfragen in Kombination mit der Verwendung kryptografisch sicherer Zufallszahlen zur Auswahl des Quellports und des 16-Bit-Kryptografie-Nonce die Wahrscheinlichkeit erfolgreicher DNS-Race-Angriffe erheblich verringern.“
Ich verstehe nicht, wie Port-Randomisierung DNS-Poisoning-Angriffe auf der Clientseite verhindern soll. Oder bezieht sich das nur auf den DNS-Server? Könnte dieselbe Port-Randomisierung auf der Clientseite verwendet werden?
Antwort1
DNSAnfragenerfolgen immer von einem Client zum Server, der Quellport befindet sich also auf der Clientseite und ist derjenige, der zufällig ausgewählt werden muss.
Die Antwort des Servers kommt von Port 53 zum ursprünglichen Quellport auf der Clientseite. Wie Sie beim Lesen wahrscheinlich schon vermutet haben, könnte eine Antwort vor der echten Antwort gefälscht werden, wenn der nächste Quellport, den der Client verwendet, vorhergesagt werden kann.
Beachten Sie, dass ein DNS-Server selbst ein Client ist, wenn er nicht die Autorität für eine angeforderte Domäne ist und Rekursion aktiviert hat. Sie fragen also Ihren DNS-Server nach der IP-Adresse von Google.com, woraufhin dieser DNS-Server die Stammserver abfragt, um die Antwort zu ermitteln. Dabei ist es wichtig, dass die Antworten echt sind, da der anfordernde DNS-Server alle Antworten zwischenspeichert und sie als Antwort auf alle nachfolgenden Anfragen bereitstellt.
Wenn ich den Quellport vorhersagen könnte, den der DNS-Server Ihres Internetdienstanbieters für seine nächste Abfrage verwenden würde, könnte ich vor der eigentlichen Erwiderung meine eigene Antwort auf die Anfrage einfügen. Dann wäre der DNS Ihres Internetdienstanbieters für jeden, der ihn verwendet, vergiftet.
(Beachten Sie, dass dieses Szenario aus Gründen der (hoffentlichen) Klarheit stark vereinfacht ist.)