Sicherheitslücke: Mit acht Nullen zum Active-Directory-Admin

Die Sicherheitslücke Zerologon nutzt einen Fehler in Netlogon aus und involviert die Zahl Null auf kreative Weise - um Passwörter zu ändern.

Artikel veröffentlicht am ,
Zerologon nutzt eine Sicherheitslücke im Netlogon-Protokoll aus.
Zerologon nutzt eine Sicherheitslücke im Netlogon-Protokoll aus. (Bild: Microsoft/Montage: Golem.de)

Die Sicherheitsfirma Secura hat eine weitere kritische Sicherheitslücke in Microsofts Nutzerverwaltung Active Directory (AD) entdeckt: Zerologon. Ein Fehler in der kryptographischen Authentifizierung des von Active Directory genutzten Netlogon-Remote-Protokolls kann ein angreifendes System zu einem Domänen-Admin ernennen oder Zugriff auf einen Domänencontroller erhalten. Darüber wäre theoretisch der Zugriff auf Informationen innerhalb des Unternehmens möglich, die über AD-Accounts erreichbar sind. Die Sicherheitslücke ist deshalb unter CVE-CVE-2020-1472 als kritisch gelistet.

Stellenmarkt
  1. Embedded Softwareentwickler (m/w/d)
    Hays AG, Niedersachsen
  2. Abas Anwendungsentwickler (m/w/d)
    IMO Oberflächentechnik GmbH, Königsbach-Stein
Detailsuche

Microsoft selbst bietet seit Mitte August ein Sicherheitsupdate für Windows-Server-Betriebssysteme an. Es sollte dort direkt installiert werden.

Allerdings wird dort zunächst die RPC-Nutzung von Domänen-Controllern (DC) erzwungen. Damit nicht kompatible Geräte - typischerweise Clients mit älteren und nicht unterstützten Betriebssystemen - werden im Ereignisprotokoll des DC angezeigt. Für solche Geräte wird es zunächst eine Gruppenrichtlinie geben, die den Zugang zur Domäne weiterhin erlaubt. Diese Richtlinie muss allerdings manuell installiert werden. Erst im Februar 2021 wird Microsoft RPC auf allen Geräten erzwingen - es sei denn, sie wurden speziell mit der Gruppenrichtlinie zugelassen. Eine wirkliche Behebung des Problems ist demnach wohl nur durch Neuanschaffungen oder weitere Patches seitens der Drittanbieter möglich.

Secura hat auf Github auch ein Script veröffentlicht, mit dem ein Firmennetzwerk auf die Sicherheitslücke hin untersucht werden kann. Das Team hat zudem eine detaillierte Dokumentation als PDF veröffentlicht, welche die Vorgehensweise des Angriffs beschreibt.

Von einem Fehler zum Domänen-Admin

Golem Akademie
  1. IT-Sicherheit für Webentwickler
    2.-3. November 2021, online
  2. CEH Certified Ethical Hacker v11
    8.-12. November 2021, online
  3. Linux-Systeme absichern und härten
    8.-10. November 2021, online
Weitere IT-Trainings

Für den Angriff wird die Funktion ComputeNetlogonCredential des Netlogon-Protokolls ausgenutzt, welche einen festgelegten 8-Bit-AES-Initialisationsvektor (IV) aus ausschließlich Nullen verwendet. ComputeNetlogonCredential verwendet AES-CFB8, um 8-Bit-Credentials in 16 Bit lange verschlüsselte Wörter umzuwandeln. Durch falsche Anwendung in Netlogon ist der IV für die Sicherheitslücke mitverantwortlich. Die Funktion verwendet nämlich keine zufallsgenerierten Vektoren, sondern festgelegte Werte.

  • Die Funktionsweise von Zerologon in der Grafik (Bild: Secura)
Die Funktionsweise von Zerologon in der Grafik (Bild: Secura)

Das Problem: Der Sicherheitsforscher Tom Tervoort hat entdeckt, dass der Parameter Clientcredential - Teil der Funktion ComputeNetlogonCredential - in einem aus 256 Fällen ebenfalls aus acht Nullen besteht, wenn Angreifende die Challenge, die zwischen Domänencontroller und -clients für eine Authentifizierung ausgetauscht wird, auf ausschließlich null setzen. Nach maximal 256 Brute-Force-Versuchen mit dem Call NetrServerAuthenticate3 kann sich das System in einer Domäne als Client authentifizieren, was laut dem Forscher etwa 3 Sekunden Rechenzeit entspricht.

Signing und Sealing umgehen

Bei aktiviertem Signing und Sealing, einer weiteren Sicherungsebene in der von Netlogon verwendeten NTLM-Authentifizierung, wäre hier allerdings Schluss, da nach dem Umgehen des ersten Authentifizierungsprozesses dafür ein anderes Schema genutzt wird. Allerdings sind Signing und Sealing für Clients im zuvor genutzten Aufruf NetrServerAuthenticate3 optional und werden standardmäßig vom Server auch ohne diese Maßnahme akzeptiert. Mit Hilfe eines Flags vom Angriff kann dieser Schritt einfach abgeschaltet und umgangen werden.

Aufrufe müssen zusätzlich einen Authentifizierer-Wert enthalten. Daher gibt das angreifende System vor, dass es sich am 1. Januar 1970 - dargestellt durch den Wert Null - anmeldet. Der Server überprüft nicht, ob es sich um das echte Datum handelt, um Probleme mit der Hardware-Uhr zu umgehen. Der Authentifizierungswert, der für eine erfolgreiche Authentifizierung am System benötigt wird, berechnet sich aus der zuvor genutzten Funktion ComputeNetlogonCredential und dem auf null gesetzten Zeitwert. Da ComputeNetlogonCredential(0) wie zuvor festgestellt ebenfalls wieder null ergibt, ist eine Anmeldung mit einem aus ausschließlich Nullen bestehendem Authentifizierer und Timestamp möglich.

Danach können weiterführende Methoden verwendet werden. Der Aufruf der Funktion NetrServerPasswordSet2 setzt etwa ein neues lokales Passwort für den entsprechenden Client - ohne das eigentliche Kontopasswort zu kennen. Diese Funktion verwendet nämlich erneut das schon ausgenutzte AES-CFB8 mit ausschließlich Nullen. Von dort aus kann ein leeres Passwort durch Nullen vergeben werden. Bei einer erneuten Anmeldung kennen Angreifer daher das Administrator-Passwort für das Active-Directory-Konto.

Das Resultat: Zugriff mit erweiterten Rechten auf dem lokalen Computer und die Möglichkeit, ein eigenes neues Passwort zu vergeben. Hier ist es bereits möglich, sich auf einem als Domänencontroller deklarierten System lokal anzumelden. Allerdings stimmt dann das lokale Passwort nicht mit den in der Active-Directory-Datenbank hinterlegten neuen Daten überein, was laut Tervoort zu unvorhersehbaren Nebeneffekten führt und etwa den DNS-Auflöser abstürzen lässt.

Mit Hilfe des auf Github verfügbaren Scripts Secretsdump.py lassen sich alle User-Hashwerte aus der Domain per Domain Replication Service Protocol extrahieren, einschließlich der Werte für Domänen-Administrator-Konten. Mit Hilfe einer Pass-the-Hash-Attacke ließe sich das neue Passwort in die lokale Registry des Domänencontrollers schreiben.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
4700S Desktop Kit im Test
AMDs Playstation-5-Platine ist eine vertane Chance

Mit dem 4700S Desktop Kit bietet AMD höchstselbst die Hardware der Playstation 5 für den PC an. Das Board ist aber eine Sache für sich.
Ein Test von Marc Sauter

4700S Desktop Kit im Test: AMDs Playstation-5-Platine ist eine vertane Chance
Artikel
  1. PC-Version: Guardians of the Galaxy braucht galaktisch Speicherplatz
    PC-Version
    Guardians of the Galaxy braucht galaktisch Speicherplatz

    Das müsste Platz drei der Platzverwender sein: Das für Ende Oktober 2021 angekündigte Guardians of the Galaxy ist datenhungrig.

  2. SUV mit Elektroantrieb: Tesla liefert neues Model X mit eckigem Lenkrad aus
    SUV mit Elektroantrieb
    Tesla liefert neues Model X mit eckigem Lenkrad aus

    Tesla hat die ersten Model X mit dem neuen Lenkrad, quer eingebautem Display und Falcon-Wings-Türen ausgeliefert.

  3. Zu provokant für Instagram: Wiener Museen zeigen erotische Kunstwerke bei Onlyfans
    Zu provokant für Instagram
    Wiener Museen zeigen erotische Kunstwerke bei Onlyfans

    Mehrere Wiener Museen präsentieren Werke provokanter Künstler ab sofort bei Onlyfans, um der Zensur von Instagram & Co. zu entgehen.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Cyber Week: Bis zu 360€ auf Gaming-Monitore & bis zu 22% auf Be Quiet • LG-TVs & Monitore zu Bestpreisen (u. a. Ultragear 34" Curved FHD 144Hz 359€) • Bosch-Werkzeug günstiger • Dell-Monitore günstiger • Horror-Filme reduziert • MwSt-Aktion bei MM: Rabatte auf viele Produkte [Werbung]
    •  /