Elevation: Erwerb des Admin-Token in Administrator gegenüber Standardkonten in Windows

2304
InterLinked

Ich bin kürzlich verwirrt worden, wie die Benutzerkontensteuerung zwischen Standardkonten und Administratorkonten funktioniert.

Wie wir alle wissen, ermöglicht UAC bei aktivierter Benutzerkontensteuerung, dass Standardkonten oder Administratorkonten im Administratorbestätigungsmodus Zugriff auf das Administrator-Token erhalten, um Aufgaben auszuführen, für die Administratorzugriff auf den Computer erforderlich ist. Dadurch können wir Token wechseln, ohne den Benutzer zu wechseln .

Es scheint jedoch, dass das Wechseln von Token nicht wirklich das ist, was passiert: Vor einiger Zeit habe ich eine Anwendung ausgeführt, die die Shell (explorer.exe) ändern würde. Ich habe das Programm mit einem Standardkonto ausgeführt, erforderte jedoch einen erhöhten Zugriff: Daher habe ich die Benutzerkontensteuerung verwendet, um die Anmeldeinformationen des Administrators anzugeben, damit der Vorgang abgeschlossen werden konnte. Ich habe keine Veränderung an der Schale gesehen; Ich loggte mich dann bei dem Administrator-Konto ein, dessen Anmeldeinformationen ich verwendete, und ich sah, dass die Shell in diesem Konto geändert wurde, was offensichtlich nicht das war, was ich wollte

Es schien mir, dass die Benutzerkontensteuerung im Wesentlichen nur ein "Run-as-User" war, bei dem das Programm tatsächlich als dieser Benutzer ausgeführt wurde. Das bedeutete, dass ich es nicht nur auf Hochtouren lief: Ich habe das Programm buchstäblich als diesen Benutzer ausgeführt.

Meine Frage ist: Kann ein Standardkonto das Administrator-Token verwenden, das Programm jedoch tatsächlich als Standardbenutzer ausführen und das Profil des aktuellen Benutzers verwenden? Ansonsten scheint es mir so, als müssten Sie, wenn Sie Administratoraufgaben erledigen müssen, sich bei einem Administratorkonto anmelden, das den gesamten Zweck der Benutzerkontensteuerung missachtet - da die Benutzerkontensteuerung ein Programm als Administrator ausführt und nicht nur das Administratorrechte,

Ist diese Trennung von Token und Profil möglich? Oder müssen alle Benutzer in diesem Fall nur Administratoren sein? Es scheint mir, dass dies für viele Organisationen gelten würde, wenn nur allen Benutzern der volle Administratorzugriff gewährt wird.

Kann jemand bitte etwas Licht auf dieses werfen?

Ich würde gerne wissen, ob es möglich gewesen wäre, dem besagten Programm ein Administrator-Token bereitzustellen. Dieses Programm sollte jedoch im aktuellen Benutzerkonto ausgeführt werden, nicht im Benutzerkonto des Administrators, dessen Berechtigungsnachweise angegeben wurden - mit anderen Worten, hätte es dies war es möglich, die Shell im Standardkonto mit diesem Programm zu ändern? Das Ziel wäre, den Prozess als angemeldeter Benutzer (unabhängig von den aktuellen Berechtigungen) mit Administratorrechten zu starten, nicht als Prozess unter einem Konto mit Administratorrechten.

Hoffe das macht Sinn,

Erklärung : Ich beziehe mich nicht auf den Admin-Genehmigungsmodus oder die Funktionsweise der Benutzerkontensteuerung. Ich weiß bereits, dass, wenn die Benutzerkontensteuerung auf eine sichere Einstellung festgelegt ist, sogar Administratoren dazu aufgefordert werden. Wenn diese Option nicht deaktiviert ist, verwenden Administratoren standardmäßig das Standard-Token. Ich spreche davon, wann das Administrator-Token abgerufen wird. Ist es möglich, den Prozess weiterhin als angemeldeter Benutzer auszuführen, nur mit dem Admin-Token? (nicht mit "Als Benutzer ausführen", aber vielleicht etwas wie "Ausführen als / mit" Token ")) usw. Auf diese Weise würden allgemeine Administratorberechtigungen verwendet, und nicht die Administratorberechtigungen eines Benutzers.

Ist das überhaupt möglich oder habe ich gerade auf eine Funktion hingewiesen, die nicht in Windows ist?

Müsste ich, um das hier beschriebene Ziel zu erreichen, das Standardkonto möglicherweise jederzeit in ein Administratorkonto umwandeln, wenn etwas erhöht werden muss, und es anschließend wieder in ein Standardkonto umwandeln? Aufgrund von Kommentaren scheint dies nicht möglich zu sein, und dies scheint ein Fehler im Betriebssystem zu sein, da UAC grundsätzlich unbrauchbar wird.

FALLBEISPIEL : Vor einigen Jahren habe ich versucht, ein Programm auszuführen, das das Thema meines Computers ändert, das zum Patchen des Systems erforderlich war (eines dieser Programme von Drittanbietern). Es erforderte Administratorrechte. Ich habe keine Änderung gesehen, aber dann habe ich mich bei dem Administratorkonto angemeldet, dessen Passwort ich verwendet hatte, und festgestellt, dass alle Aktivitäten für dieses Konto übernommen wurden !! Ich musste mich ein paar Mal damit beschäftigen, damit es funktioniert, aber es war ein wirklich ungewöhnlicher Prozess. Wäre die einfachste Lösung, einfach dieses Standardkonto vorübergehend bei einem Administrator zu bewerben und es anschließend wieder herabzusetzen?

1
Ich bin nicht sicher, ob dies Ihre spezifische Frage beantwortet, aber ich wollte zwei Ressourcen weitergeben, damit Sie nachschauen, darüber nachdenken, möglicherweise testen und so weiter, nur für den Fall, dass Sie entweder bei der Lösung Ihres Problems oder bei der Problemumgehung behilflich sind. "1." http://windows.microsoft.com/de-de/windows7/how-do-i-run-an-application-once-mit-full-administrator-access-token und "2." (Alle Antworten lesen) http://superuser.com/questions/327907/opening-explorer-shell-with-admin-privileges-on-xp-with-ie7-installed. Ich frage mich, ob die Option "Dieses Programm als Administrator ausführen", die aktiviert wird, auch nach # 1 funktionieren würde Pimp Juice IT vor 7 Jahren 0
@JUICED_IT Ich habe beide Artikel gelesen. Ich weiß bereits, wie man als Administrator läuft, wie der erste Artikel bespricht. Der Link "Sudo für Windows" war interessant und näher an dem, worüber ich sprach. Das Ziel wäre, den Prozess als angemeldeter Benutzer mit Administratorrechten zu starten, nicht als Prozess unter einem Konto mit Administratorrechten, wenn Sie wissen, was ich meine InterLinked vor 7 Jahren 0
Die Benutzerkontensteuerung führt standardmäßig kein Programm mit einem Admin-Token aus. Dies geschieht nur, wenn das Programm nach Administratorberechtigungen fragt UND Sie es über die UAC-Eingabeaufforderung erteilen. surfasb vor 7 Jahren 0
Wenn Sie dem Nicht-Administrator-Konto expliziten Zugriff auf Dateisystemobjekte, Registrierungsschlüssel und andere Objekte gewähren, die von der EXE-Datei manipuliert werden, ist dies möglicherweise auch der Trick, anstatt RUNAS zu verwenden. Wenn Sie also bestimmen können, auf was alle EXE-Dateien zugreifen müssen, ist dies nicht der Fall erfolgreich laufen. Als Systemadministrator habe ich festgestellt, dass einige Programme / Apps logisch so programmiert sind, dass sie unter Windows ausgeführt werden, vorausgesetzt, dass das ausgeführte Benutzerkonto ein lokaler Administrator ist. Dies ist ein definitives Problem in einer Unternehmensumgebung mit Sicherheitsrichtlinien eine andere Sache, die möglicherweise auch zu berücksichtigen ist. Pimp Juice IT vor 7 Jahren 0
Ich bezweifle sehr, dass ein regulärer Account jemals ein höheres Token erhalten könnte. Weil du das brauchst. Daniel B vor 7 Jahren 1

2 Antworten auf die Frage

1
surfasb

Sie können kein Programm unter einem Standardkonto ausführen, jedoch mit Administratorberechtigungen.

Sie haben sich geirrt, dass es sich bei der Benutzerkontensteuerung um "Als anderer Benutzer ausführen" handelt. Programme, die unter dem Benutzernamen eines Administrators ausgeführt werden, werden standardmäßig mit Standardberechtigungen ausgeführt. Nur wenn ein Programm "erhöht" ist, erhält es Administratorrechte. Dies gilt auch, wenn Ihr Benutzerkonto ein Administrator ist.

Die Benutzerkontensteuerung wurde erstellt, um das Problem zu lösen, dass alle Prozesse, die unter einem Benutzer ausgeführt wurden, der Administrator war, über Administratorberechtigungen verfügten.

Was Sie hier beschreiben, ist der Admin-Genehmigungsmodus. Ich weiß bereits alles. Ich spreche davon, wenn Sie den Prozess erhöhen, kann der Prozess als angemeldeter Benutzer ausgeführt werden und nicht als Administrator, dessen Berechtigungsnachweise verwendet wurden. Das ist das, was so verwirrend ist. InterLinked vor 7 Jahren 1
Der Administratorbestätigungsmodus ist anders. Und es ist immer noch nicht möglich, dass ein Prozess mit Administratorrechten ausgeführt wird, jedoch unter der Authentifizierung eines Standardbenutzers. surfasb vor 7 Jahren 0
1
ZEE

Ja, es ist möglich ...
Öffnen Sie eine Konsole und geben Sie " runas" ein.

use the /profile switch to select a profile to run the program... use the /savecred switch to save the admin credentials you choose... 

...

RUNAS USAGE:  RUNAS [ [/noprofile | /profile] [/env] [/savecred | /netonly] ] /user:<UserName> program  RUNAS [ [/noprofile | /profile] [/env] [/savecred] ] /smartcard [/user:<UserName>] program  RUNAS /trustlevel:<TrustLevel> program   /noprofile specifies that the user's profile should not be loaded. This causes the application to load more quickly, but can cause some applications to malfunction. /profile specifies that the user's profile should be loaded. This is the default. /env to use current environment instead of user's. /netonly use if the credentials specified are for remote access only. /savecred to use credentials previously saved by the user. This option is not available on Windows 7 Home or Windows 7 Starter Editions and will be ignored. /smartcard use if the credentials are to be supplied from a smartcard. /user <UserName> should be in form USER@DOMAIN or DOMAIN\USER /showtrustlevels displays the trust levels that can be used as arguments to /trustlevel. /trustlevel <Level> should be one of levels enumerated in /showtrustlevels. program command line for EXE. See below for examples  Examples: > runas /noprofile /user:mymachine\administrator cmd > runas /profile /env /user:mydomain\admin "mmc %windir%\system32\dsa.msc" > runas /env /user:user@domain.microsoft.com "notepad \"my file.txt\""  NOTE: Enter user's password only when prompted. NOTE: /profile is not compatible with /netonly. NOTE: /savecred is not compatible with /smartcard. 
Fehlt mir hier etwas? Ich dachte, der springende Punkt ist, NICHT die Funktion Ausführen als zu verwenden, was im Grunde UAC ist InterLinked vor 7 Jahren 1
Huuum ... scheint nicht möglich zu sein .. von dem, was ich gesehen habe, scheint die UAC nahe am Kernel zu sein, so dass sie nicht von einem Software-Trick übertroffen werden kann ... ZEE vor 7 Jahren 0
Das Administrator-Token ist ein Gewinn beim Anmelden ... und es ist für diese Sitzung gültig ... Ich denke, es wird schwierig sein ... Was ich normalerweise mache, ist die Deaktivierung der Benutzerkontensteuerung und die Verwendung von Runas ... Entschuldigung für den Fehler ...: - ( ZEE vor 7 Jahren 0
Das Administrator-Token wird beim Anmelden erworben. Ich bin nicht sicher, ob dies sinnvoll ist, da Standardkonten weiterhin einen Prozess als Administrator ausführen können, wenn die Benutzerkontensteuerung aktiviert ist. InterLinked vor 7 Jahren 0
Ughhh, das wird nicht funktionieren. Nur weil sich ein Prozess als Administrator authentifiziert, bedeutet dies nicht, dass er die Berechtigung eines Administrators hat. Und nein, das macht die UAC nicht. Bei der Benutzerkontensteuerung wird das Admin-Token (Autorisierung) beim Anmelden ** nicht ** erteilt. Ohne UAC wird das Admin-Token bei der Anmeldung erteilt. surfasb vor 7 Jahren 0