Windows Vista: User Account Control

Die User Account Control (UAC) gehört zu den wichtigsten und auffälligsten Neuerungen bei Windows Vista. Sie ist dafür verantwortlich, dass bei der Ausführung von administrativen Aufgaben eine zusätzliche Bestätigung erforderlich ist. Das Konzept wird in diesem Artikel erläutert.

Die User Account Control (UAC) von Windows Vista zählt zweifelsohne zu den wichtigsten und interessantesten Neuerungen – aber auch zu denen, an die man sich erst gewöhnen muss. Die Grundidee ist einfach: Wenn administrative Zugriffe erfolgen, wird eine zusätzliche Bestätigung erforderlich. Der Hintergrund ist ebenso einfach: Zu viele Benutzer arbeiten als (lokale) Administratoren an Windows-Arbeitsstationen und erhöhen damit die Sicherheitsrisiken. Denn wenn ein Benutzer als Administrator angemeldet ist und Opfer eines Angriffs wird, kann der Angreifer seinen Code im Kontext dieses Benutzers ausführen, also mit vollen administrativen Berechtigungen. Und damit kann er auch alles auf dem System machen.

Nun ist es zwar eigentlich gute Praxis, sich nicht als Administrator anzumelden, wenn man ganz normal am System arbeitet. Administratorenkonten und andere Konten mit erhöhten Berechtigungen sollten nur situativ für spezielle Aufgaben genutzt werden. Nur: Wer hält sich schon daran? Die Realität sieht eben anders aus.

Mit der UAC versucht Microsoft nun einen Kompromiss. Wenn ein Benutzer mit dem System arbeitet, geschieht dies mit „normalen“ Berechtigungen. Sobald eine administrative Anwendung aufgerufen wird (und der Benutzer überhaupt administrative Rechte hat), wird ein Dialogfeld angezeigt, in dem er die Ausführung dieser Anwendung bestätigen muss.

Das verhindert insbesondere, dass ein Angreifer im Hintergrund administrative Rechte verwendet, weil in diesem Moment eben die Bestätigung erforderlich wird.

Die UAC ist also eine Mischung aus Erziehungs- und Sicherheitsmaßnahme, weil eben doch sehr viele Benutzer sich nicht an die schon lange diskutierten Sicherheitsregeln halten. Man muss dabei aber auch sehen, dass es einige Aufgaben wie die Installation von Anwendungen und auch von ActiveX-Controls gibt, die erhöhte Berechtigungen erfordern.

Die Arbeitsweise der UAC

Um diese Probleme zu adressieren, hat Microsoft auf zwei Ebenen gearbeitet. Zum einen hat man versucht, die Situationen, in denen erhöhte Berechtigungen erforderlich sind, weiter zu reduzieren. Allerdings gibt es dabei Grenzen, weil ja eben nicht alles durch jeden ausgeführt werden soll.

Die andere Ebene ist die UAC. Bei Windows Vista wird zwischen den Standardbenutzern mit eingeschränkten Zugriffsberechtigungen und den lokalen Administratoren mit umfassenden Zugriffsberechtigungen unterschieden.

Diese administrativen Benutzer arbeiten aber nun normalerweise mit einem Token, das sie zunächst als Standardbenutzer identifiziert. Sie haben also eingeschränkte Zugriffsberechtigungen. Nur bei einer expliziten Bestätigung durch den Benutzer kann ein Prozess das zweite Token des Benutzers verwenden, das volle administrative Berechtigungen gibt. Aus Sicht der Architektur ist dabei unter anderem der Fakt interessant, dass lokale Administratoren bei Windows Vista nun zwei Security-Tokens mit unterschiedlichen Berechtigungen haben, zwischen denen gewechselt werden kann.

Die Gruppe der Hauptbenutzer, die ja teilweise schon höhere Berechtigungen hat, gibt es übrigens bei Windows Vista nur noch aus Kompatibilitätsgründen. Auf Dauer sieht Microsoft aber nur die beiden Zugriffsebenen des Standardbenutzers und des lokalen Administrators.