28.10.2013 Aufrufe

Windows Server 2008 Sicherheit – Die technische Referenz - Gattner

Windows Server 2008 Sicherheit – Die technische Referenz - Gattner

Windows Server 2008 Sicherheit – Die technische Referenz - Gattner

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

74 Kapitel 3: Objekte: Was Sie wollen<br />

Ablauf der Zugriffsprüfung<br />

Wenn ein Prozess versucht, auf ein geschütztes Objekt zuzugreifen, vergleicht das Betriebssystem<br />

das Zugriffstoken erst mit der DACL und dann (sofern vorhanden) mit der SACL des<br />

Objekts. Der Vergleich mit der DACL konzentriert sich auf drei Faktoren:<br />

Der geforderte Zugriff (zum Beispiel Lesen, Schreiben, Ausführen, Löschen)<br />

<strong>Die</strong> SIDs im Token<br />

<strong>Die</strong> ACEs in der DACL des Objekts<br />

Der Vergleichsprozess beginnt damit, dass alle SIDs im Token ausgewertet werden, die auf<br />

Verweigern gesetzt sind. Falls irgendeine dieser SIDs einer SID in einem Verweigern-ACE<br />

entspricht, vergleicht das Betriebssystem den angeforderten Zugriff mit der Zugriffsmaske<br />

im ACE. Falls irgendwelche Bits in beiden auf 1 gesetzt sind, wird der Zugriffsversuch an<br />

diesem Punkt verweigert. Weitere Vergleiche werden nicht mehr durchgeführt.<br />

Falls keine Übereinstimmungen mit Verweigern-SIDs gefunden werden, wertet der Prozess<br />

als Nächstes jeden einzelnen ACE aus. Es gibt drei mögliche Bedingungen, die bewirken,<br />

dass die Auswertung abgebrochen wird. Erstens wird die Auswertung sofort beendet, falls<br />

irgendein ACE oder eine Kombination von ACEs irgendeiner Kombination der SIDs im<br />

Token den geforderten Zugriff vollständig gewährt. Falls das passiert, wird der Zugriff erlaubt.<br />

Zweitens: Falls irgendein Verweigern-ACE gefunden wird, der irgendeiner SID im Token<br />

irgendeines der geforderten Zugriffsrechte verweigert, wird die Auswertung abgebrochen<br />

und der Zugriffsversuch wird verweigert.<br />

Drittens und letztens: Falls das Ende der ACL erreicht ist, wird die Auswertung abgebrochen.<br />

Falls an diesem Punkt nicht alle geforderten Zugriffsrechte von irgendeinem ACE<br />

gewährt wurden, wird der Zugriffsversuch verweigert.<br />

Unabhängig davon, wie die Zugriffsprüfung ausgeht, wertet das Betriebssystem als Nächstes<br />

die SACL aus (sofern vorhanden) und prüft, ob ein Überwachungsereignis generiert werden<br />

soll.<br />

Wie Sie sich nach der bisherigen Beschreibung der Zugriffsprüfung bestimmt schon denken<br />

können, ist wichtig, in welcher Reihenfolge die ACEs ausgewertet werden. Nehmen wir an,<br />

Sie haben ein Verweigern-ACE, das dem Benutzer Zugriff auf das Objekt verbietet, sowie<br />

einen ACE, das einer der SIDs im Token des Benutzers entspricht und alle geforderten Zugriffsrechte<br />

gewährt. Wenn dieser Zulassen-ACE zuerst abgearbeitet wird, wird die Auswertung<br />

abgebrochen und der Zugriffsversuch wird gewährt. Aus diesem Grund müssen ACEs<br />

in einer ACL in einer bestimmten Reihenfolge gespeichert sein:<br />

1. Nichtgeerbte Verweigern-ACEs<br />

2. Nichtgeerbte Zulassen-ACEs<br />

3. Geerbte Verweigern-ACEs<br />

4. Geerbte Zulassen-ACEs<br />

Verschiedene Tools, zum Beispiel die ACL-UI, speichern die ACEs in dieser Reihenfolge.<br />

Sie korrigieren auch eine ACL, deren Reihenfolge nicht stimmt, sobald sie geöffnet wird.<br />

Außerdem stellt das Befehlszeilentool icacls.exe das Argument /verify zur Verfügung, mit<br />

dem Sie prüfen können, ob ACLs die richtige Reihenfolge haben. Das Betriebssystem erzwingt<br />

diese Reihenfolge aber nicht automatisch, und es kommt erschreckend oft vor, dass

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!