Wie man herausfindet, wer die NTFS-Berechtigungen für Dateien und Ordner geändert hat

Herauszufinden, wer auf einem Windows-Server an den NTFS-Berechtigungen herumspielt, kann ganz schön knifflig sein. Manchmal werden Berechtigungen geändert, und niemand erinnert sich daran – oder jemand experimentiert einfach mit den Sicherheitseinstellungen, ohne es jemandem zu sagen. Die Einrichtung von Überwachungsprotokollen kann helfen, genau nachzuvollziehen, was wann passiert ist und wer daran beteiligt war. So haben Sie eine klare Spur, wenn Sie bemerken, dass sich die Berechtigungen eines Ordners unerwartet ändern. Das ist zwar nützlich, aber die Einrichtung ist nicht ganz einfach. Ich bin mir sicher, dass Sie mit diesen Schritten zumindest das nächste Mal Klarheit haben, wenn Berechtigungen Probleme bereiten oder jemand an Ihren freigegebenen Ordnern herumspielt.

Wie man NTFS-Berechtigungsänderungen unter Windows verfolgt

Aktivieren Sie die richtigen Prüfrichtlinien

In diesem Schritt legen Sie fest, worauf Windows achten soll. Wenn sich Berechtigungen ändern, kann Windows dies protokollieren – allerdings nur, wenn Sie die Einstellungen korrekt vorgenommen haben.Öffnen Sie dazu den Gruppenrichtlinien-Editor ( gpedit.msc für lokale oder gpmc.msc für domänenweite Einstellungen).

  • Öffnen Sie gpedit.msc oder gpmc.msc, je nach Ihrer Konfiguration.
  • Navigieren Sie zu Computerkonfiguration > Richtlinien > Windows-Einstellungen > Sicherheitseinstellungen > Erweiterte Überwachungsrichtlinienkonfiguration > Überwachungsrichtlinien > Objektzugriff.
  • Suchen und aktivieren Sie die Option „Dateisystem überwachen“. Stellen Sie sie so ein, dass Erfolge protokolliert werden. Dadurch merkt sich Windows, wann Berechtigungen erfolgreich geändert wurden.

Profi-Tipp: Wenn Sie Richtlinien auf mehrere Server verteilen, erstellen Sie ein Gruppenrichtlinienobjekt (GPO) in Ihrer Domäne und verknüpfen Sie es mit der entsprechenden Organisationseinheit (OU) oder den Servern. Andernfalls können Sie die lokale Richtlinie direkt auf jedem Rechner bearbeiten (bei kleineren Umgebungen).

Ordnerspezifische Überwachung einrichten

Sobald die Richtlinien eingerichtet sind, müssen Sie Windows mitteilen, welche Ordner überwacht werden sollen. Gehen Sie zum Ordner, klicken Sie mit der rechten Maustaste und wählen Sie „Eigenschaften“. Dann:

  • Klicken Sie auf die Registerkarte „Sicherheit“.
  • Klicken Sie auf „Erweitert“.
  • Wechseln Sie zur Registerkarte „Überwachung“.
  • Klicken Sie auf Bearbeiten oder Weiter (Windows fordert möglicherweise die Genehmigung eines Administrators an).
  • Klicken Sie auf „Hinzufügen“ und wählen Sie die Gruppe oder den Benutzer aus, der geprüft werden soll (für die Testversion einfach „Jeder “ hinzufügen ).

Wählen Sie anschließend die Art der zu protokollierenden Aktivität aus. Die Aktivierung von „Berechtigungen ändern“ und „Besitz übernehmen“ unter „Erfolgreiche Einträge“ reicht in der Regel aus. Dadurch werden Berechtigungs- und Besitzänderungen erfasst.

Vergessen Sie nicht, die Gruppenrichtlinie in PowerShell oder der Eingabeaufforderung (cmd) auszuführen gpupdate /force, um sie sofort anzuwenden. Bei manchen Systemen werden die Berechtigungen möglicherweise nicht sofort protokolliert – ein Neustart kann hier Abhilfe schaffen.

Überprüfung der Protokolle auf Änderungen

Jetzt wird’s interessant.Öffnen Sie die Ereignisanzeigeeventvwr.msc. Gehen Sie dann zu Windows-Protokolle > Sicherheit. Filtern Sie nach der Ereignis-ID 4670 (Berechtigungen für ein Objekt wurden geändert).Wenn alles funktioniert, wird bei jeder Berechtigungsänderung ein Eintrag angezeigt.

Der Ereigniseintrag zeigt Ihnen, wer die Änderung vorgenommen hat (siehe Kontoname) und welcher Prozess verwendet wurde (z.C:\Windows\explorer.exeB.die Änderung von Berechtigungen über den Explorer).Er enthält außerdem Details zum vorherigen und aktuellen Sicherheitsdeskriptor – äußerst hilfreich, wenn Sie die vorgenommenen Änderungen genauer untersuchen möchten.

Interessant: Falls alte und neue Berechtigungen nicht ausreichen oder unklar sind, können Sie die SDDL-Zeichenfolgen des Ereignisses mit PowerShell vergleichen. Mithilfe von ConvertFrom-SddlString lassen sich Sicherheitsdeskriptoren in besser lesbare Objekte übersetzen.

Nutzen Sie PowerShell für tiefergehende Einblicke

Wenn Sie gerne Skripte schreiben und Automatisierungen nutzen, ist PowerShell genau das Richtige für Sie. Sie können beispielsweise die letzten Berechtigungsänderungsereignisse mit folgendem Befehl abrufen:

$events = Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4670} -MaxEvents 10 foreach ($event in $events) { $xml = [xml]$event. ToXml() $oldSD = $xml. Event. EventData. Data | Where-Object {$_. Name -eq 'OldSD'} | Select-Object -ExpandProperty '#text' $newSD = $xml. Event. EventData. Data | Where-Object {$_. Name -eq 'NewSD'} | Select-Object -ExpandProperty '#text' # Compare or parse these strings to see exactly what changed }

Glaub mir, es ist ziemlich mächtig, sobald man sich daran gewöhnt hat, die Rohdaten der Sicherheitsinformationen zu lesen.

Und wenn Sie in Echtzeit herausfinden möchten, welcher Prozess für eine Berechtigungsänderung verantwortlich war, ist Process Monitor das beste Tool. Die Einrichtung ist etwas aufwendig, aber hier die Kurzfassung:

  1. Laden Sie Procmon64.exe herunter und führen Sie es aus.
  2. Filter festlegen: Pfad beginnt mit Ihrem Ordner und schließt die Operation SetSecurityFile ein.
  3. Immer wenn Berechtigungen geändert werden, protokolliert ProcMon den Prozess und den Benutzer, der ihn steuert.

Ehrlich gesagt ist das eine ziemlich zuverlässige Methode, um Berechtigungsänderungen in Echtzeit zu erfassen. Beachten Sie jedoch: Wenn sich Berechtigungen sehr schnell ändern, können die Protokolle mitunter sehr umfangreich werden. Passen Sie den Filter gegebenenfalls so an, dass er sich jeweils nur auf einen Ordner oder Benutzer konzentriert.

Zusammenfassung

  • Aktivieren Sie die Überwachung des Objektzugriffs in der Gruppenrichtlinie.
  • Ordnerspezifische Überwachung kann über Ordnereigenschaften > Sicherheit > Erweitert > Überwachung eingerichtet werden.
  • Filtern Sie die Ereignisanzeige nach der Ereignis-ID 4670, um Berechtigungsänderungen anzuzeigen.
  • Verwenden Sie PowerShell oder Process Monitor für eine detailliertere Analyse.

Zusammenfassung

Diese Lösung ist nicht perfekt – Berechtigungen werden möglicherweise nicht immer sofort protokolliert, und die Interpretation von SDDL kann mühsam sein. Dennoch ist sie besser als bloßes Raten, wenn man herausfinden möchte, wer was geändert hat. Berechtigungen haben ein ungewöhnliches Format, daher sollten Sie sich nicht wundern, wenn manche Teile zunächst kryptisch erscheinen. Die Kombination von Protokollen mit Tools wie Procmon erhöht die Wahrscheinlichkeit, den Übeltäter zu finden, erheblich. Für alle, die einen stark frequentierten Dateiserver verwalten, ist dies definitiv ein Schritt in die richtige Richtung – denken Sie aber daran, dass es keine hundertprozentige Sicherheit bietet, aber es hilft, die Verdächtigen einzugrenzen.