ADMIN

2022

11

2022-10-27T12:00:00

Software-definierte Infrastrukturen

PRAXIS

030

Monitoring

Active Directory

Änderungen im AD protokollieren

Angreifern auf der Spur

von Mark Heitbrink

Veröffentlicht in Ausgabe 11/2022 - PRAXIS

Angriffe auf die Unternehmens-IT sind an der Tagesordnung. Im schlimmsten Fall lässt sich die Attacke erst am Ende nachvollziehen. Mit einem geeigneten Monitoring haben Sie zumindest die Chance, frühzeitig einzugreifen und Schlimmeres zu verhindern. Dazu gehört das Überwachen von Änderungen im Active Directory. Wir zeigen, wie dies mit den Windows-Bordmitteln möglich ist.

Ein SIEM (Security Information/Incident and Event Management) ist oft der Wunsch des Administrators und im Hinblick auf die Ressourcen, die dafür eingesetzt werden können, nahezu unerschöpflich. Für die ersten wichtigen Erkenntnisse reicht aber auch das bereits vorhandene Event Logging der Ereignisanzeige aus. Mit der Einführung von Windows Server 2008 und Vista hat Microsoft eine wesentlich granularere Technik etabliert. Die Ereignisse sind in Kategorien samt Unterkategorien sortiert, um sie besser überwachen und aufzeichnen zu können. Ein auditpol /list /subcategory:* in der Kommandozeile verschafft Ihnen eine schnelle Übersicht über die Möglichkeiten. Der Befehl auditpol /get /category:* zeigt die aktuelle Konfiguration.
Die Einstellungen der "Erweiterten Überwachungsrichtlinienkonfiguration" steuern Sie in der Regel über eine Gruppenrichtlinie, Sie können diese zudem über die Befehlszeile setzen. Damit die Konfiguration zum Einsatz kommt, muss diese eingeschaltet sein. Auf neu installierten Systemen ist der entsprechende Wert als Default gesetzt und muss nicht explizit definiert werden – es ist aber eine Form von Best Practises, diesen Wert sicherheitshalber noch per Gruppenrichtlinien zu aktivieren. Der Hintergrund sind uralte Active Directories, die mit Windows Server 2000/2003 installiert wurden und deren Default Domain Controllers Policy an dieser Stelle nie editiert wurde beziehungsweise noch auf die veraltete Überwachungsrichtlinie zurückgreift. Die bisherige Konfiguration können Sie auf "Nicht konfiguriert" zurücksetzen, wenn die "Erweiterte Überwachungsrichtlinienkonfiguration" zum Einsatz kommt: Unter "Computerkonfiguration / Windows-Einstellungen / Sicherheitseinstellungen / Lokale Richtlinien / Sicherheitsoptionen" aktivieren Sie den Punkt "Überwachung: Unterkategorieeinstellungen der Überwachungsrichtlinie erzwingen (Windows Vista oder höher)", um Kategorieeinstellungen der Überwachungsrichtlinie außer Kraft zu setzen.
Bild 1: Per auditpol /get /category:* verschaffen Sie sich einen Überblick darüber, welche Ereignisse überwacht werden.
Ereignisse: Qual der Wahl
Die schwierigste Frage ist, welche Ereignisse überhaupt überwacht werden sollten. Hier hilft uns die Microsoft Security Baseline für Domänencontroller aus dem Microsoft Security Compliance Toolkit 1.0 [1]. Nach dem Entpacken der ZIP-Datei erhalten Sie einen GPO-Backup-Ordner, den Sie über die Gruppenrichtlinenverwaltungskonsole importieren können. Darin befindet sich unter anderem die Richtlinie "MSFT Windows Server 2022 – Domain Controller". Anschließend benötigen Sie im ersten Schritt nicht unbedingt die komplette Hardening-Anweisung für Domänencontroller, da diese erst einmal getestet werden sollte. Sie möchten vermutlich nur den Teil der Überwachungsrichtlinie in die Default Domain Controllers Policy aufnehmen beziehungsweise die Standardeinstellungen für den Client oder Memberserver. Das ist möglich, indem Sie einen kleinen Trick anwenden.
Ein SIEM (Security Information/Incident and Event Management) ist oft der Wunsch des Administrators und im Hinblick auf die Ressourcen, die dafür eingesetzt werden können, nahezu unerschöpflich. Für die ersten wichtigen Erkenntnisse reicht aber auch das bereits vorhandene Event Logging der Ereignisanzeige aus. Mit der Einführung von Windows Server 2008 und Vista hat Microsoft eine wesentlich granularere Technik etabliert. Die Ereignisse sind in Kategorien samt Unterkategorien sortiert, um sie besser überwachen und aufzeichnen zu können. Ein auditpol /list /subcategory:* in der Kommandozeile verschafft Ihnen eine schnelle Übersicht über die Möglichkeiten. Der Befehl auditpol /get /category:* zeigt die aktuelle Konfiguration.
Die Einstellungen der "Erweiterten Überwachungsrichtlinienkonfiguration" steuern Sie in der Regel über eine Gruppenrichtlinie, Sie können diese zudem über die Befehlszeile setzen. Damit die Konfiguration zum Einsatz kommt, muss diese eingeschaltet sein. Auf neu installierten Systemen ist der entsprechende Wert als Default gesetzt und muss nicht explizit definiert werden – es ist aber eine Form von Best Practises, diesen Wert sicherheitshalber noch per Gruppenrichtlinien zu aktivieren. Der Hintergrund sind uralte Active Directories, die mit Windows Server 2000/2003 installiert wurden und deren Default Domain Controllers Policy an dieser Stelle nie editiert wurde beziehungsweise noch auf die veraltete Überwachungsrichtlinie zurückgreift. Die bisherige Konfiguration können Sie auf "Nicht konfiguriert" zurücksetzen, wenn die "Erweiterte Überwachungsrichtlinienkonfiguration" zum Einsatz kommt: Unter "Computerkonfiguration / Windows-Einstellungen / Sicherheitseinstellungen / Lokale Richtlinien / Sicherheitsoptionen" aktivieren Sie den Punkt "Überwachung: Unterkategorieeinstellungen der Überwachungsrichtlinie erzwingen (Windows Vista oder höher)", um Kategorieeinstellungen der Überwachungsrichtlinie außer Kraft zu setzen.
Bild 1: Per auditpol /get /category:* verschaffen Sie sich einen Überblick darüber, welche Ereignisse überwacht werden.
Ereignisse: Qual der Wahl
Die schwierigste Frage ist, welche Ereignisse überhaupt überwacht werden sollten. Hier hilft uns die Microsoft Security Baseline für Domänencontroller aus dem Microsoft Security Compliance Toolkit 1.0 [1]. Nach dem Entpacken der ZIP-Datei erhalten Sie einen GPO-Backup-Ordner, den Sie über die Gruppenrichtlinenverwaltungskonsole importieren können. Darin befindet sich unter anderem die Richtlinie "MSFT Windows Server 2022 – Domain Controller". Anschließend benötigen Sie im ersten Schritt nicht unbedingt die komplette Hardening-Anweisung für Domänencontroller, da diese erst einmal getestet werden sollte. Sie möchten vermutlich nur den Teil der Überwachungsrichtlinie in die Default Domain Controllers Policy aufnehmen beziehungsweise die Standardeinstellungen für den Client oder Memberserver. Das ist möglich, indem Sie einen kleinen Trick anwenden.
Die Konfigurationsdatei für die erweiterte Überwachungsrichtlinienkonfiguration ist innerhalb der Gruppenrichtlinie in einer CSV-Datei gespeichert, die nach dem Import oder der manuellen Konfiguration im SYSVOL-Anteil der Richtlinie – dem GPT – landet. Von dort importiert sie der definierte Zielcomputer und verarbeitet das File analog zur "auditpol.exe" [2]. Der etwas schwierigere Punkt ist das Finden der richtigen "audit.csv" im Backup-Ordner, um sie anschließend einzeln zu importieren.
Das Backup erstellt dynamische Ordner pro GPO. Wird eine GPO mehrfach gesichert, finden Sie diese mehrfach im Ordner. In der Datei "manifest.xml" des "Backup"-Ordners finden Sie den Verweis, welche GUID welche Version der Richtlinie enthält. Dies können Sie mit einem kleinen PowerShell-Skript auslesen:
[xml]$Manifest=Get-Content -Path ".\manifest.xml"
$Backup=$Manifest.Backups.BackupInst
 
foreach ($GPO in $Backup){write-host $GPO.ID."#cdata-section", $GPO.GPODisplayName."#cdata-section"
      }
Die Datei versteckt sich dann tief im Pfad des Backups, etwa: ".\Windows Server 2022 Security Baseline\GPOs\{E2B8214C-729F-4324-A876-F067E58B740B}\DomainSysvol\GPO\Machine\microsoft\windows nt\Audit\audit.csv". Der Ordner "windows nt" ist kein Tippfehler, er zeugt von der historischen Herkunft des Systems und dessen Unterbau. Übernehmen Sie das File mittels "Als Pfad kopieren" in die Zwischenablage und integrieren Sie es in eine beliebige Richtlinie der Domäne. Einige Client Side Extensions (CSE) der Richtlinie erlauben einen Einzelimport von Settings, ohne die vorhandenen Einstellungen komplett zu ersetzen.
Bild 2: Die gewünschten Überwachungsrichtlinien importieren Sie im CSV-Format.
Protokollspeicher vergrößern
Die Ereignisse landen im Windows-Protokoll "Sicherheit". Das zu erwartende Volumen, das jetzt im Sicherheitsprotokoll des Eventlogs anfällt, ist schwer zu schätzen und abhängig von der Größe des ADs und der Anzahl der Änderungen. Generell gilt jedoch, dass die voreingestellten 128 MByte zu knapp bemessen sind und die Daten sehr schnell überschrieben werden. Daher ist ein Minimum von 1 GByte zu empfehlen. In der Baseline selbst schlägt Microsoft 192 MByte vor, geht aber davon aus, dass Sie ein SIEM betreiben samt Event Forwarding und zentralem Logging in einem externen System.
Die nächsten paar Tage beobachten Sie dann das Verhalten des Eventlogs und passen dieses anhand der letzten Einträge nach Datum und Zeit an die eigenen Aufbewahrungsbedürfnisse an. Eine Gesamtprotokollierung von sieben bis 14 Tagen ist erstrebenswert. Die Richtlinieneinstellung unterstützt eine maximale Protokolldateigröße bis zu 2 TByte. Die Größe der Protokolle kann natürlich ebenfalls per Gruppenrichtlinie vorgegeben werden: Unter "Computerkonfiguration / Administrative Vorlagen / Windows-Komponenten / Ereignisprotokolldienst / Sicherheit" setzen Sie den Wert für "Maximale Protokolldateigröße (KB) angeben" nach Ihren Wünschen.
An dieser Stelle sei darauf hingewiesen, dass jeder Domänencontroller im Unternehmen ein eigenes Protokoll führt, das Änderungen dokumentiert, die über ihn stattgefunden haben. Das kann die Sammlung von Ereignissen oftmals erschweren, da jeder DC kontrolliert werden muss. Auf Dauer dürften Sie an einer zentralen Lösung nicht vorbeikommen, sobald das AD aus mehr als zwei oder vier DCs besteht. Es ist schlicht mühsam, in diesem Fall die Einzelsysteme zu kontrollieren.
Interessante Events in Sachen Sicherheit
Bleiben wir mit dem Fokus auf der Entdeckung der Ransomware und suchen die ersten wichtigen oder auffälligen Ereignisse. Die Tabelle "Interessante Events" stellt einen kleinen Ausschnitt dar, ohne Anspruch auf Vollständigkeit – hier kann der Artikel "Appendix L - Events to Monitor" [3] weiterhelfen. Der Link von Microsoft bietet neben der Auflistung der EventID eine Bewertung der Kritikalität von "Low" (niedrig) über "Medium" (mittel) zu "High" (hoch).
Interessante Events
Ereignis-ID Schweregrad Bedeutung
1102 Mittel bis Hoch Das Auditlog wurde geleert.
4670 Niedrig Rechte auf ein Objekt wurden geändert.
4698 Niedrig Erstellen einer neuen Aufgabe (scheduled task).
4700 Niedrig Eine Aufgabe wurde aktiviert.
4704 Niedrig Ein Nutzerrecht wurde zugewiesen.
4713 Mittel Geänderte Kerberos-Policy.
4719 Hoch Änderung an der System-Audit-Policy.
4720 Niedrig Ein Nutzerkonto wurde erstellt.
4723 Niedrig Versuchte Passwortänderung.
4724 Mittel Versuchtes Zurücksetzen eines Kontopassworts.
4726 Niedrig Ein Nutzerkonto wurde gelöscht.
4728 Niedrig Ein Mitglied wurde zu einer Sicherheitsgruppe hinzugefügt.
4737 Mittel Eine Sicherheitsgruppe wurde geändert.
4739 Mittel Angepasste Domain-Policy.
4767 Niedrig Ein Nutzerkonto wurde entsperrt.
4782 Niedrig Zugriff auf den Passwort-Hash eines Kontos.
4793 Niedrig Die Passwort-Policy-Checking-API wurde aufgerufen.
4907 Mittel Geänderte Einstellung bezüglich der Auditierung eines Objekts.
4928 Niedrig Ein Active Directory Replica Source Naming Context wurde eingerichtet.
4946 Niedrig Änderung bei den Windows-Firewall-Ausnahmen. Eine Regel wurde hinzugefügt.
4947 Niedrig Änderung bei den Windows-Firewall-Ausnahmen. Eine Regel wurde geändert.
4949 Niedrig Die Windows-Firewall-Einstellungen wurden zurückgesetzt.
4950 Niedrig Geänderte Windows-Firewall-Einstellung.
4954 Niedrig Windows-Firewall-Gruppenrichtlinien-Einstellungen geändert. Die neuen Einstellungen wurden angewendet.
5030 Mittel Der Start des Windows-Firewall-Diensts ist fehlgeschlagen.
24580 Niedrig Entschlüsselung eines Volumes gestartet.
Pauschal lässt sich festhalten, dass die wichtigen Events die Änderungen eines Benutzeraccounts wie Kennwort-Reset betrifft. Auch die Veränderung an Sicherheitsgruppen sowie das Erstellen von Aufgaben (Tasks) und Veränderung an den Gruppenrichtlinien sind verdächtig. Ransomware möchte sich im Unternehmen verteilen und ausbreiten – die Rede ist von "Lateral Movement". Veränderung an den Gruppenrichtlinien sind dabei zu beobachten, speziell bei der Windows Firewall, da diese oft die Verbreitung verhindert.
Fazit
Gefahr erkannt, Gefahr gebannt. Der arg strapazierte Leitsatz muss auch für die Administration des Active Directory gelten. Veränderungen im AD können mit Bordmitteln überwacht und dokumentiert werden. Mit einer gut konfigurierten Überwachungsrichtlinie lässt sich ein Angriff nicht komplett verhindern, aber bei früher Erkennung zumindest eindämmen. Bereits die Bordmittel in Windows genügen, um sich umfassend über die Geschehnisse im Netzwerk zu informieren.
(dr)
Link-Codes
[1] Microsoft Security Compliance Toolkit 1.0: https://www.microsoft.com/en-us/download/details.aspx?id=55319/