«

»

Verwaiste SIDs anzeigen und mit dem ACL-Cleaner entfernen

Projektbezogene Abfrage

Aus der migRaven-Datenbank ist es möglich, eine Liste der verwaisten SIDs auszugeben. Diese Liste kann auch genutzt werden, um mit dem ACL-Cleaner diese verwaisten SIDs automatisch aus Ihrem System zu entfernen.

1. Vorbemerkungen

1.1. Voraussetzung

Voraussetzung für folgenden Auswertungen ist die Nutzung der migRaven-Datenbank über einen Web-Browser, wie in der „migRaven Report API“ beschrieben.

1.2. Einschränkungen

Es gelten folgende Einschränkungen:

  1. Bedenken Sie, dass die Auswertungen über die Verzeichnisse, die Sie mit Ihren migRaven-Projekten gescannt haben, gemacht werden. Verzeichnisse, die noch nicht als Bestandteil von migRaven-Projekten gescannt wurden, kennt die Datenbank nicht.
  2. In migRaven werden Objekte anderer nicht gescannter Domänen ebenfalls als „Unknown SIDs“ dargestellt. Wenn Sie nicht alle Ihre Domänen gescannt haben, besteht die Gefahr, dass Sie Berechtigungen aus anderen Domänen löschen.
  3. Verzeichnisse mit einer Gesamtlänge von 256 Zeichen sind ebenfalls problematisch. Objekte, die auf Verzeichnisse berechtigt sind, die diese Länge überschreiten, können nicht ausgelesen werden. Diese werden in migRaven als „Unknown SIDs“ dargestellt. Diese Gesamtlänge setzt sich zusammen aus der Summe von Computernamen und allen unten untereinander liegenden Verzeichnisnamen.

2. Anzeige der „Unknown SID“ (tote bzw. verwaiste SIDs)

Mit diesem Beispiel, einem Cypher-Befehl, werden alle Verzeichnisse aufgelistet, bei denen migRaven ein „Unknown sid“ ausgibt:

MATCH (Objekt)<-[:rel_ace]-Ace-[Right:rel_right0]->Path  
WHERE Objekt.name = "Unknown sid"  
RETURN  Path.path, Ace.ace, Ace.ace_flags, Ace.sid, Right.explicit

Es werden die Einträge angezeigt, bei denen es in migRaven zur SID keinen Objektnamen gibt. Die Ursache kann sein, dass das Objekt gelöscht wurde, dann ist das eine tote SID. Es kann aber auch sein, dass das Objekt zu einer anderen Domäne gehört, die Sie mit migRaven nicht gescannt haben. Auch dann ist das für migRaven eine „Unknown SID“. Klären können Sie das, indem Sie sich mit Windows-Bordmitteln die Berechtigungen auf dem angegebenen Verzeichnis anzeigen lassen. Wenn auch Windows die SID nicht durch einen Objektnamen ersetzen kann, ist es eine tote SID.

Die Ergebnisse dieser Auswertungen beziehen sich immer nur auf die Verzeichnisbereiche, die Sie mit Ihren migRaven-Projekten gescannt haben!

3. Entfernen der „Unknown SIDs“ mit dem ACL-Cleaner

3.1. Erzeugung einer List mit den verwaisten SIDs

Um den ACL-Cleaner zum Löschen der verwaisten SIDs nutzen zu können, ist eine bestimmte Tabellenstruktur notwendig. Mit dem Befehl

MATCH (Objekt)<-[:rel_ace]-Ace-[Right:rel_right0]->Path
WHERE Objekt.name = "Unknown sid"
RETURN Path.path AS Pfad, CASE
WHEN Ace.ace = "278" OR Ace.ace = "1048854" THEN "Schreiben"
WHEN Ace.ace = "131209" OR Ace.ace= "1179785" THEN "Lesen"
WHEN Ace.ace = "131241" OR Ace.ace ="1179817" THEN "Lesen und Ausführen"
WHEN Ace.ace = "131487" OR Ace.ace= "1180063" THEN "Lesen und Schreiben"
WHEN Ace.ace = "131519" OR Ace.ace= "1180095" THEN "Lesen, Ausführen und Schreiben"
WHEN Ace.ace = "1245631" OR Ace.ace= "197055" THEN "Ändern"
WHEN Ace.ace = "1180159" THEN "ModifyPlus"
WHEN Ace.ace = "2032127" THEN "Vollzugriff"
ELSE "Spezielle Berechtigungen"
END AS Berechtigung,Ace.sid AS Nicht_aufgelöste_SID

wird eine Tabelle mit Pfadnamen, Berechtigungen und verwaisten SIDs ausgegeben. Diese Struktur benötigt der ACL-Cleaner.

3.2. Ausgabe einer CSV-Datei mit den verwaisten SIDs

SID-Tabelle

Die Tabelle für den ACL-Cleaner wird mit dem Button rechts oben als CSV-Datei ausgegeben.

3.3. Notwendige Änderungen

Im Programmverzeichnis des ACL-Cleaners  „c:\Program Files (x86)\aikux.com\ACL-Cleaner\“ befindet sich eine Konfigurationsdatei mit dem Namen „ACL-Cleaner.exe.config“. Im „appSettings“-Bereich dieser Datei sind zwei Änderungen vorzunehmen.

  • Der Splitter-Value ist auf  „2“  zu setzen.
  • Beim Key „SpitterSIDTableDE2“ sind in der Spaltenüberschrift „Nicht aufgelöste SID“ die Leerzeichen durch Unterstriche zu ersetzen:  Nicht_aufgelöste_SID

Der „appSettings“-Bereich sollte dann so aussehen:

<appSettings>
<add key=“OwnerSID“ value=“S-1-5-32-544″ />
<add key=“Splitter“ value=“2″ />
<add key=“ClientSettingsProvider.ServiceUri“ value=““ />
<add key=“SpitterSIDTableDE1″ value=“Pfad&#09;Berechtigung&#09;Nicht aufgelöste SID“ />
<add key=“SpitterSIDTableDE2″ value=“Pfad,Berechtigung,Nicht_aufgelöste_SID“ />
<add key=“SpitterSIDTableEN1″ value=“Path Name&#09;Right&#09;Unresolved Sid“ />
<add key=“SpitterSIDTableEN2″ value=“Path Name,Right,Unresolved Sid“ />
<add key=“SpitterOwnerTableDE1″ value=“Pfad&#09;Nicht aufgelöste Besitzer-SID“ />
<add key=“SpitterOwnerTableDE2″ value=“Pfad,Nicht aufgelöste Besitzer-SID“ />
<add key=“SpitterOwnerTableEN1″ value=“Path Name&#09;Unresolved Owner Sid“ />
<add key=“SpitterOwnerTableEN2″ value=“Path Name,Unresolved Owner Sid“ />
</appSettings>

 

Weiterhin haben Sie hier die Möglichkeit, Einträge aus der Liste zu entfernen, die Sie nicht löschen wollen. Das können SIDs sein, die für Berechtigungen aus anderen nicht gescannten Domänen stehen.

3.4. Nutzung des Programms „ACL-Cleaner“

Diese CSV-Datei können Sie im ACL-Cleaner einlesen, um Ihre verwaisten SIDs automatisch löschen zu lassen.

Im Artikel „Entfernen von verwaisten SIDs aus NTFS ACLs mit dem ACL-Cleaner für 8MAN“ ist die Nutzung des ACL-Cleaners beschrieben. Die Erzeugung der SID-Liste aus der migRaven-Datenbank ist ein von 8MAN unabhängiger Weg die verwaisten SIDs auszugeben und mit dem ACL-Cleaner zu entfernen. Daher können Sie die Angaben zu 8MAN in dem Artikel ignorieren. Zur 8MAN-Tabelle besteht noch ein Unterschied, 8MAN listet zusätzlich die verwaisten Eigentümer-SIDs auf, diese werden von migRaven nicht erfasst.

Weiter: „Entfernen von verwaisten SIDs aus NTFS ACLs mit dem ACL-Cleaner für 8MAN„.