Neue SAD-DNS-Attacke zur Einspeisung falscher Daten in den DNS-Cache.

Eine Forschungsgruppe von der University of California, Riverside, hat eine neue Variante des SAD DNS-Angriffs (CVE-2021-20322) veröffentlicht, die trotz der im vergangenen Jahr implementierten Schutzmaßnahmen zur Blockierung der CVE-2020-25705-Schwachstelle funktioniert. Die neue Methode Ă€hnelt im Wesentlichen der Schwachstelle des vergangenen Jahres und unterscheidet sich lediglich durch die Verwendung eines anderen Typs von ICMP-Paketen zur ÜberprĂŒfung aktiver UDP-Ports. Der vorgeschlagene Angriff ermöglicht die Untersetzung falscher Daten im DNS-Cache eines Servers, was genutzt werden kann, um die IP-Adresse einer beliebigen Domain im Cache zu ersetzen und Anfragen an die Domain auf den Server des Angreifers umzuleiten.

Die vorgeschlagene Methode funktioniert nur im Linux-Netzwerkstack, da sie an eine Besonderheit der ICMP-Paketverarbeitung in Linux gebunden ist, die eine Datenleckage zur Vereinfachung der Bestimmung der verwendeten UDP-Portnummer verursacht. dem Server durch zur Übermittlung externer Anfragen. Änderungen, die Informationslecks verhindern, wurden Ende August in den Linux-Kernel aufgenommen (die Korrektur fand Eingang in den Kernel 5.15 und die September-Updates der LTS-Kernelzweige). Die Korrektur besteht darin, in den NetzwerkkCaches den SipHash-Hash-Algorithmus anstelle von Jenkins Hash zu verwenden. Der Status der Behebung der SicherheitsanfĂ€lligkeit in den Distributionen kann auf den folgenden Seiten eingesehen werden: Debian, RHEL, Fedora, SUSE, Ubuntu.

Laut den Forschern, die das Problem identifiziert haben, sind etwa 38% der offenen Resolver im Internet anfĂ€llig fĂŒr die SicherheitsanfĂ€lligkeit, einschließlich beliebter DNS-Dienste wie OpenDNS und Quad9 (9.9.9.9). Was die Server-Software angeht, kann ein Angriff durchgefĂŒhrt werden, wenn auf dem Linux-Server Pakete wie BIND, Unbound und dnsmasq verwendet werden. Auf DNS-Servern, die mit Windows und BSD-Systemen betrieben werden, zeigt sich das Problem nicht. FĂŒr den erfolgreichen DurchfĂŒhrung eines Angriffs ist IP-Spoofing erforderlich, d.h. der Angreifer muss sicherstellen, dass der Provider des Angreifers keine Pakete mit einer gefĂ€lschten Quell-IP-Adresse blockiert.

Wir erinnern daran, dass der SAD DNS-Angriff es ermöglicht, die in DNS-Server implementierten Schutzmaßnahmen gegen die klassische Methode der DNS-Cache-Vergiftung zu umgehen, die 2008 von Dan Kaminsky vorgeschlagen wurde. Die Methode von Kaminsky manipuliert die relativ geringe GrĂ¶ĂŸe des Feldes fĂŒr die Anfrage-ID im DNS, welches nur 16 Bit betrĂ€gt. Um die korrekte ID der DNS-Transaktion fĂŒr das Spoofing des Hostnamens zu ermitteln, genĂŒgt es, ungefĂ€hr 7000 Anfragen zu senden und etwa 140.000 gefĂ€lschte Antworten zu simulieren. Der Angriff besteht darin, eine große Anzahl von Paketen mit gefĂ€lschter IP-Zuordnung und verschiedenen IDs der DNS-Transaktion an den DNS-Resolver zu senden. Um zu verhindern, dass die erste Antwort zwischengespeichert wird, wird in jeder gefĂ€lschten Antwort ein leicht verĂ€ndertes Domain-Domainname angegeben (1.example.com, 2.example.com, 3.example.com usw.).

Um sich gegen diese Art von Angriffen zu schĂŒtzen, haben die Hersteller von DNS-Servern eine zufĂ€llige Verteilung der Quellnetzportnummern implementiert, von denen aus die Anfragen zur Auflösung gesendet werden. Dies kompensierte die unzureichende GrĂ¶ĂŸe des Identifikators. Nach der Implementierung des Schutzes wurde es erforderlich, nicht nur die 16-Bit-Identifikation fĂŒr ein gefĂ€lschtes Antwortpaket zu erraten, sondern auch einen der 64.000 Ports zu wĂ€hlen, was die Anzahl der möglichen Kombinationen auf 2^32 erhöhte.

Die SAD-DNS-Methode ermöglicht eine drastische Vereinfachung der Bestimmung von Netzportnummern und reduziert einen Angriff auf die klassische Kaminsky-Methode. Der Angreifer kann ungenutzte und aktive UDP-Ports identifizieren, indem er die Informationslecks ĂŒber die AktivitĂ€t der Netzwerkports bei der Verarbeitung von ICMP-Antwortpaketen ausnutzt. Diese Methode verringert die Anzahl der Kombinationsmöglichkeiten um 4 GrĂ¶ĂŸenordnungen — 2^16+2^16 statt 2^32 (131_072 statt 4_294_967_296). Das Informationsleck, das eine schnelle Bestimmung aktiver UDP-Ports ermöglicht, wird durch einen Mangel im Code zur Verarbeitung von ICMP-Paketen bei Fragmentierungsanfragen (Flag ICMP Fragmentation Needed) oder Weiterleitungen (Flag ICMP Redirect) verursacht. Das Senden solcher Pakete verĂ€ndert den Status des Caches im Netzwerkstack, was es ermöglicht, anhand der Serverreaktion zu bestimmen, welcher UDP-Port aktiv ist und welcher nicht.

Angriffszenario: Wenn ein DNS-Resolver versucht, einen Domainnamen zu bestimmen, sendet er eine UDP-Anfrage an den zustĂ€ndigen DNS-Server. WĂ€hrend der Resolver auf eine Antwort wartet, kann der Angreifer schnell die Nummer des Quellports bestimmen, der fĂŒr die Anfrage verwendet wurde, und eine gefĂ€lschte Antwort an diesen Port senden, indem er sich als zustĂ€ndiger DNS-Server ausgibt, unter Verwendung von Spoofing. IP-AdressenDer DNS-Resolver wird die in der gefĂ€lschten Antwort ĂŒbermittelten Daten im Cache speichern und fĂŒr eine gewisse Zeit bei allen anderen DNS-Anfragen zu diesem Domainnamen die vom Angreifer vorgetĂ€uschte IP-Adresse zurĂŒckgeben.

Quelle: opennet.ru

Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server đŸ”„ Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster