Warum funktioniert PSEXEC -i -s in Windows 7, da Dienste nicht mehr mit dem Desktop interagieren können?

647
slashp

Gemäß diesem MSDN-Artikel :

Wichtige Dienste können ab Windows Vista nicht direkt mit einem Benutzer interagieren. Daher sollten die im Abschnitt Verwenden eines interaktiven Dienstes genannten Techniken nicht in neuem Code verwendet werden.

Warum funktioniert psexec \\REMOTEPCNAME -i -s cmdes eigentlich noch richtig und startet im NT AUTHORITY\SYSTEMKontext eine Eingabeaufforderung ? Hat SysInternals Windows-Cheat-Codes?

1
* Hat SysInternals Windows-Cheat-Codes? * - Ja, es ist Microsoft-Software. Ramhound vor 9 Jahren 2

1 Antwort auf die Frage

1
grawity

Der psexec-Dienst verfügt über ausreichende Berechtigungen (SeTcbPrivilege), um Token für andere Sitzungen mit WTSQueryUserToken zu erhalten (die er dann CreateProcessAsUser oder etwas Ähnlichem gibt).

Siehe auch: http://www.remkoweijnen.nl/blog/2007/10/20/how-to-launch-a-process-in-a-terminal-session/