Windows DNS-Server weist Sicherheitslücke auf „Wurm-Niveau“ auf, existiert seit 17 Jahren

Windows DNS-Server weist Sicherheitslücke auf „Wurm-Niveau“ auf, existiert seit 17 Jahren

Einführung in die Sicherheitslücke

Die SigRed-Sicherheitslücke ist äußerst gefährlich, da sie wurmfähig ist. Das bedeutet, dass sie sich selbst verbreiten und ohne Benutzerinteraktion auf anfällige Geräte ausbreiten kann. So können nicht authentifizierte Remote-Angreifer Domänenadministratorrechte auf dem Zielserver erlangen und die vollständige Kontrolle über die IT-Infrastruktur des Unternehmens erlangen.

Funktionsweise der Sicherheitslücke

Ein Angreifer könnte die SigRed-Sicherheitslücke ausnutzen, indem er bösartige DNS-Abfragen an Windows-DNS-Server sendet und willkürlichen Code ausführt. Auf diese Weise könnten Hacker den E-Mail- und Netzwerkverkehr von Benutzern abfangen und manipulieren, Dienste unzugänglich machen und E-Mails von Benutzern abgreifen.

Wenn ein DNS-Server die IP-Adresse für einen bestimmten Domänennamen (z. B. www.google.com) nicht auflösen kann, wird die Abfrage an den autoritativen DNS-Server (NS) weitergeleitet. Dies wird als Weiterleitungsabfrage bezeichnet.

Um diese Abfragelogik auszunutzen, muss SigRed zunächst den NS-Ressourceneintrag einer Domäne („deadbeef.fun“) so konfigurieren, dass er auf den bösartigen Nameserver („ns1.41414141.club“) verweist, und dann die Domäne des Ziel-DNS-Servers abfragen, um Auflösungsantworten vom Nameserver für alle nachfolgenden Abfragen im Zusammenhang mit der Domäne oder ihren Subdomänen zu erhalten.

Mit diesen Einstellungen kann ein Angreifer einen SIG-Eintrag mit einer Größe von über 64 KB senden, der einen kontrollierten Heap-Pufferüberlauf von etwa 64 KB in einem kleinen zugewiesenen Puffer verursachen, eine bösartige DNS-Abfrage auslösen und dann eine Integer-Überlauf-Sicherheitslücke in der Funktion auslösen kann, die die eingehende Antwort auf die weitergeleitete Abfrage analysiert („dns.exe!sigwirelead“).

Mit anderen Worten: Die Sicherheitslücke zielt auf die Funktion ab, die für die Speicherzuweisung für Ressourceneinträge zuständig ist. Sobald eine Anzahl von Bytes größer als 65535 generiert wird, kommt es zu einem Integer-Überlauf und die Zuweisung wird kleiner. Allerdings ist eine DNS-Nachricht auf 512 Bytes über UDP (oder 4096 Bytes, wenn der Server Erweiterungsmechanismen unterstützt) und 65535 Bytes über TCP beschränkt, sodass eine SIG-Antwort mit einer langen Signatur allein nicht ausreicht, um diese Sicherheitsanfälligkeit auszulösen. Ein Angreifer kann jedoch die DNS-Namenskomprimierungsfunktion in der DNS-Antwort geschickt ausnutzen und so mithilfe der obigen Operation die Puffergröße erhöhen und dennoch den Zweck eines Pufferüberlaufs erreichen.

Darüber hinaus kann SigRed in bestimmten Situationen remote über Browser ausgelöst werden, beispielsweise über Internet Explorer und nicht Chromium-basierte Microsoft Edge-Browser. Angreifer können die Unterstützung des Windows-DNS-Servers für die Wiederverwendung von Verbindungen und die Abfrage-Pipelinierung ausnutzen, um DNS-Abfragen innerhalb der HTTP-Anforderungsnutzlast „heimlich“ an den Ziel-DNS-Server weiterzuleiten, wenn sie Websites besuchen, die unter ihrer Kontrolle stehen. Es ist sogar möglich, die Funktion „Write What Where“ zu implementieren und die Sicherheitslücke weiter auszunutzen, um Speicheradressen durchsickern zu lassen. Dadurch kann der Angreifer den Ausführungsfluss kapern und ihn dazu bringen, unerwartete Anweisungen auszuführen.

Überraschenderweise ist der DNS-Client („dnsapi.dll“) nicht für denselben Fehler anfällig, was die Forscher vermuten lässt, dass „Microsoft zwei völlig unterschiedliche Codebasen für den DNS-Server und den DNS-Client eingerichtet und die Patches für die Sicherheitslücken nicht zwischen ihnen synchronisiert hat.“ ”

Milderung

Der Windows DNS-Server ist eine zentrale Netzwerkkomponente. Sobald der DNS-Server geleakt ist, stellt dies ein sehr ernstes Sicherheitsproblem dar. In den meisten Fällen sind Angreifer nur noch einen Zentimeter davon entfernt, die gesamte Organisation zu zerstören. Unternehmen müssen darauf achten. Obwohl Microsoft angibt, dass es keine Hinweise darauf gibt, dass die Schwachstelle ausgenutzt wurde, empfiehlt das Unternehmen Benutzern, den Sicherheitspatch umgehend zu installieren: https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2020-1350

Darüber hinaus können Benutzer die maximale Länge von DNS-Nachrichten (über TCP) auf „0xFF00“ festlegen, um die Möglichkeit von Pufferüberläufen auszuschließen.

Damit ist der Artikel über die 17 Jahre alte „Wurm-Level“-Sicherheitslücke in Windows DNS-Servern abgeschlossen. Weitere Informationen zur Windows DNS-Server-Sicherheitslücke finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • So installieren und konfigurieren Sie den DNS-Server in Windows Server 2008
  • Grafisches Tutorial zur DNS-Serverkonfiguration unter Windows Server 2008 R2
  • Detaillierte Erläuterung zur Installation und Konfiguration des DNS-Servers in Windows Server 2012
  • Lernen Sie, einen DNS-Server aufzubauen (grafisches Tutorial)

<<:  Detaillierte Erläuterung der Werteübertragung von Vue-Eltern-Kind-Komponenten und der Probleme beim unidirektionalen Datenfluss

>>:  So deinstallieren Sie MySQL 5.7 unter CentOS7

Artikel empfehlen

Installieren Sie das Linux-System automatisch basierend auf Cobbler

1. Komponenten installieren yum install epel-rpm-...

Probleme und Lösungen bei der Installation und Verwendung von VMware

Die virtuelle Maschine wird verwendet oder es kan...

Einfache Verwendung von temporären MySQL-Tabellen

Temporäre MySQL-Tabellen sind sehr nützlich, wenn...

Detaillierte Erklärung zum Anpassen des Stils von CSS-Bildlaufleisten

Dieser Artikel stellt den CSS-Bildlaufleistensele...

Was Sie über Filter in Vue wissen müssen

Inhaltsverzeichnis Vorwort Was ist ein Filter So ...

Detaillierte Erläuterung der benutzerdefinierten Vue-Anweisungen

Inhaltsverzeichnis Benutzerdefinierte Vue-Direkti...

So lösen Sie das jQuery-Konfliktproblem

In der Frontend-Entwicklung ist $ eine Funktion i...