Ich kämpfe nun schon länger mit SuRun. Ich habe die nachfolgend beschriebenen Probleme möglicherweise sowohl mit SuRun 1.2.1.0, wie auch mit der Beta-Version. Ich werde es noch kurz mit Version 1.2.1.0 testen, aber damit hatte ich die selben Probleme, wenn ich mich recht erinnere. Deshalb habe ich mir gedacht, ich schreibe es gleich hier rein. Ich habe es auf einem 64-bit Windows 7 Enterprise Edition System am laufen. Installiert wurde es als Domänen-Administrator. Ich illustriere, die Effekte, mit denen ich mich herumschlage gleich mit ein paar Bildern.

Ich habe folgende Einstellungen:
[SuRun]
Version=1.2.1.1ß3
BlurDesk=1
FadeDesk=1
SavePW=0
UseCancelTimeOut=1
CancelTimeOut=40
ShowCancelTimeOut=0
PwTimeOut=0
AdminNoPassWarn=2
CtrlAsAdmin=0
CmdAsAdmin=0
ExpAsAdmin=0
RestartAsAdmin=0
StartAsAdmin=0
HideExpertSettings=0
UseIShExHook=1
UseIATHook=1
TestReqAdmin=1
ShowAutoRuns=1
TrayTimeOut=20
ShowTrayAdmin=10
UseWinLogonDesk=1
NoConvAdmin=0
NoConvUser=1
DefHideSuRun=0
[User0]
Name=Domäne\Benutzer
IsLocalUser=0
NoRunSetup=1
RestrictApps=1
InstallDevs=0
UserTSA=2
HideFromUser=0
ReqPw4Setup=0
StoreUsrPW=0
[WhiteList0]
0="C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc"
[WhiteListFlags0]
0=3
In einer Command Shell gebe ich Folgendes ein:
surun C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc
Nach der SuRun-UAC (das Feld "Run elevated" fehlt) und der Eingabe des Benutzerpassworts erscheint die Meldung:

Klar, der Geräte-Manager wird nicht als Admin ausgeführt.

Gebe ich
surun /runas C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc
ein, erscheint nach der SuRun-UAC (das Feld "Run elevated" fehlt) diese Meldung

Der Geräte-Manager startet natürlich nicht.

Und jetzt kommen wir zum sehr eigenartigen Teil. Wenn ich
surun /runas C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc
erneut ausführe und dann in der SuRun-UAC im Dropdown-Menü den "vorgedruckten" Benutzer lösche (also die Zeile) und dann wieder auswähle, erscheint auf einmal das "Run elevated" Feld und ich kann das "Remember Password"-Häckchen setzen. Aber ich kann kein Passwort eingeben und auch das Passwort-Häckchen nicht mehr verändern. Zusätzlich ist der Benutzer plötzlich als SuRun-Admin eingetragen und ich kann die SuRun-Einstellungen öffnen. Diese wurden aber wie von Geisterhand gelöscht.

Konfig danach:
[SuRun]
Version=1.2.1.1ß3
BlurDesk=1
FadeDesk=1
SavePW=1
UseCancelTimeOut=1
CancelTimeOut=40
ShowCancelTimeOut=0
PwTimeOut=0
AdminNoPassWarn=2
CtrlAsAdmin=0
CmdAsAdmin=0
ExpAsAdmin=0
RestartAsAdmin=0
StartAsAdmin=0
HideExpertSettings=1
UseIShExHook=1
UseIATHook=1
TestReqAdmin=0
ShowAutoRuns=1
TrayTimeOut=20
ShowTrayAdmin=10
UseWinLogonDesk=1
NoConvAdmin=0
NoConvUser=0
DefHideSuRun=0
[User0]
Name=Domäne\Benutzer
IsLocalUser=0
NoRunSetup=0
RestrictApps=0
InstallDevs=1
UserTSA=2
HideFromUser=0
ReqPw4Setup=0
StoreUsrPW=0
Vielleicht ist dieses Verhalten total logisch und ich mache etwas falsch. Zumindest der letzte Teil sieht nicht danach aus, als ob das gewollt wäre. Ich gebe Bescheid, wenn ich es mit 1.2.1.0 getestet habe.
Bei Version 1.2.1.0 dasselbe. Ich hoffe, dass ich etwas falsch gemacht habe. Sonst haben wir da eine riesige Sicherheitslücke.

Um ganz sicher zu sein, werde ich SuRun noch als lokaler Administrator eingeloggt installieren.

EDIT: Habe es nun auch mit der Installation als lokaler Administrator durchgespielt. Dasselbe Verhalten.

EDIT2: Und hier noch der DebugView-Output der Beta-Version:

Eingabe:
surun C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc
[/b][/i]
00000001	0.00000000	[4664] .\main.cpp(86): SuRun started with (surun  C:\Windows\System32\mmc.exe c:\Windows\System32\devmgmt.msc)	
00000002	0.00000000	[3784] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /AskUSER)	
00000003	0.00000000	[FFFFFA8005FDF010] WskProIRPGetAddrInfo is called.	
00000004	0.00001069	[bind=FFFFFA80054E28B0] Binding reference count++ = 2 (status = 00000000, impersonation= 2).	
00000005	0.00001454	[FFFFFA8003F41A80] Request reference count++ = 3.	
00000006	0.00004577	[FFFFFA8003F41A80] RPC method type = 1: rpc-method succeeded, queue to rpc-pending-list.	
00000007	0.00004962	[FFFFFA8003F41A80] Request reference count-- = 2.	
00000008	0.00095169	[FFFFFA8003F41A80] WskKnrRpcComplete: rpc calls back for completion.	
00000009	0.00095854	[FFFFFA8003F41A80] WskKnrCompletePending: complete pending request (rpc=1).	
00000010	0.00096281	[FFFFFA8003F41A80] Request reference count-- = 1.	
00000011	0.00096624	[FFFFFA8003F41A80] Request reference count-- = 0.	
00000012	0.00098206	[FFFFFA8003F41A80] WskKnrCompleteRequest: rpc completion return status = 00000000 (reply=00000000).	
00000013	0.00098719	[FFFFFA8003F41A80] WskProAPIGetAddressInfo returned addrinfo: [addr=FFFFF8A00A5C34E0].	
00000014	0.00099104	[bind=FFFFFA80054E28B0] Binding reference count-- = 1.	
00000015	0.00099575	[FFFFFA8003F41A80] WskKnrCompleteRequest: complete irp with IO status = 00000000.	
00000016	0.09923270	[addr=FFFFF8A00A5C34E0] WskProAPIFreeAddressInfo freed addrinfo.	
00000017	0.26018471	[1336] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /WATCHDOG Winlogon Default 3784)	
00000018	0.42276123	[3784] Blur 1440x900 init.	
00000019	0.46825644	[3784] Blur 1440x900 exit: 45 ms	
[line]
Eingabe
surun /runas C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc
[/b][/i]
00000001	0.00000000	[400] .\main.cpp(86): SuRun started with (surun  /runas C:\Windows\System32\mmc.exe c:\Windows\System32\devmgmt.msc)	
00000002	0.03604756	[4116] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /AskUSER)	
00000003	0.27257812	[4116] .\UserGroups.cpp(658): NetLocalGroupGetMembers(Domäne\Domain Admins) failed: 2220(0x000008AC): The group name could not be found. 	
00000004	0.27257812	[4116] 	
00000005	0.28918719	[4512] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /WATCHDOG Winlogon Default 4116)	
00000006	0.37484127	[FFFFFA8003BAAD80] WskProIRPGetAddrInfo is called.	
00000007	0.37486520	[bind=FFFFFA80054E28B0] Binding reference count++ = 2 (status = 00000000, impersonation= 2).	
00000008	0.37487420	[FFFFFA8003DAED80] Request reference count++ = 3.	
00000009	0.37493706	[FFFFFA8003DAED80] RPC method type = 1: rpc-method succeeded, queue to rpc-pending-list.	
00000010	0.37494648	[FFFFFA8003DAED80] Request reference count-- = 2.	
00000011	0.37725151	[FFFFFA8003DAED80] WskKnrRpcComplete: rpc calls back for completion.	
00000012	0.37726390	[FFFFFA8003DAED80] WskKnrCompletePending: complete pending request (rpc=1).	
00000013	0.37727287	[FFFFFA8003DAED80] Request reference count-- = 1.	
00000014	0.37728101	[FFFFFA8003DAED80] Request reference count-- = 0.	
00000015	0.37731481	[FFFFFA8003DAED80] WskKnrCompleteRequest: rpc completion return status = 00000000 (reply=00000000).	
00000016	0.37732637	[FFFFFA8003DAED80] WskProAPIGetAddressInfo returned addrinfo: [addr=FFFFF8A0022D0D40].	
00000017	0.37733576	[bind=FFFFFA80054E28B0] Binding reference count-- = 1.	
00000018	0.37734646	[FFFFFA8003DAED80] WskKnrCompleteRequest: complete irp with IO status = 00000000.	
00000019	0.40440062	[4116] .\UserGroups.cpp(658): NetLocalGroupGetMembers(NT AUTHORITY\INTERACTIVE) failed: 2220(0x000008AC): The group name could not be found. 	
00000020	0.40440062	[4116] 	
00000021	0.40683696	[4116] .\UserGroups.cpp(658): NetLocalGroupGetMembers(NT AUTHORITY\Authenticated Users) failed: 2220(0x000008AC): The group name could not be found. 	
00000022	0.40683696	[4116] 	
00000023	0.41128919	[4116] .\UserGroups.cpp(658): NetLocalGroupGetMembers(Domäne\Domain Users) failed: 2220(0x000008AC): The group name could not be found. 	
00000024	0.41128919	[4116] 	
00000025	0.44988728	[4116] Blur 1440x900 init.	
00000026	0.47868145	[addr=FFFFF8A0022D0D40] WskProAPIFreeAddressInfo freed addrinfo.	
00000027	0.48784035	[4116] Blur 1440x900 exit: 27 ms	
00000028	9.01829529	[4116] .\Service.cpp(503): CreateProcessAsUser(C:\Windows\System32\mmc.exe c:\Windows\System32\devmgmt.msc,ALLUSERSPROFILE=C:\ProgramData,C:\Users\Benutzer1) failed: 740(0x000002E4): The requested operation requires elevation. 	
00000029	9.01829529	[4116] 	
00000030	9.01832962	[4116] .\Service.cpp(1569): CreateProcessAsUser failed: 740(0x000002E4): The requested operation requires elevation. 	
00000031	9.01832962	[4116] 	
[line]
Wenn ich wie im vorangehenden Post
surun /runas C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc
ausführe und dann die Benutzernamenszeile lösche und im Drop-Down-Menü den Benutzer erneut auswähle:[/b][/i]
00000001	0.00000000	[4692] .\main.cpp(86): SuRun started with (surun  /runas C:\Windows\System32\mmc.exe c:\Windows\System32\devmgmt.msc)	
00000002	0.00000000	[3428] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /AskUSER)	
00000003	0.00000000	[3428] .\UserGroups.cpp(658): NetLocalGroupGetMembers(Domäne\Domain Admins) failed: 2220(0x000008AC): The group name could not be found. 	
00000004	0.00000000	[3428] 	
00000005	0.00000000	[4924] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /WATCHDOG Winlogon Default 3428)	
00000006	0.00000000	[FFFFFA80060EC630] WskProIRPGetAddrInfo is called.	
00000007	0.00001069	[bind=FFFFFA80054E28B0] Binding reference count++ = 2 (status = 00000000, impersonation= 2).	
00000008	0.00001454	[FFFFFA8006AD6E40] Request reference count++ = 3.	
00000009	0.00004234	[FFFFFA8006AD6E40] RPC method type = 1: rpc-method succeeded, queue to rpc-pending-list.	
00000010	0.00004619	[FFFFFA8006AD6E40] Request reference count-- = 2.	
00000011	0.00093758	[FFFFFA8006AD6E40] WskKnrRpcComplete: rpc calls back for completion.	
00000012	0.00094314	[FFFFFA8006AD6E40] WskKnrCompletePending: complete pending request (rpc=1).	
00000013	0.00094699	[FFFFFA8006AD6E40] Request reference count-- = 1.	
00000014	0.00095041	[FFFFFA8006AD6E40] Request reference count-- = 0.	
00000015	0.00096410	[FFFFFA8006AD6E40] WskKnrCompleteRequest: rpc completion return status = 00000000 (reply=00000000).	
00000016	0.00096880	[FFFFFA8006AD6E40] WskProAPIGetAddressInfo returned addrinfo: [addr=FFFFF8A00ADB6A30].	
00000017	0.00097265	[bind=FFFFFA80054E28B0] Binding reference count-- = 1.	
00000018	0.00097693	[FFFFFA8006AD6E40] WskKnrCompleteRequest: complete irp with IO status = 00000000.	
00000019	0.01769807	[3428] .\UserGroups.cpp(658): NetLocalGroupGetMembers(NT AUTHORITY\INTERACTIVE) failed: 2220(0x000008AC): The group name could not be found. 	
00000020	0.01769807	[3428] 	
00000021	0.02007751	[3428] .\UserGroups.cpp(658): NetLocalGroupGetMembers(NT AUTHORITY\Authenticated Users) failed: 2220(0x000008AC): The group name could not be found. 	
00000022	0.02007751	[3428] 	
00000023	0.02515635	[3428] .\UserGroups.cpp(658): NetLocalGroupGetMembers(Domäne\Domain Users) failed: 2220(0x000008AC): The group name could not be found. 	
00000024	0.02515635	[3428] 	
00000025	0.09486261	[3428] Blur 1440x900 init.	
00000026	0.10539111	[addr=FFFFF8A00ADB6A30] WskProAPIFreeAddressInfo freed addrinfo.	
00000027	0.12107716	[3428] Blur 1440x900 exit: 26 ms	
[line]
Und danach die SuRun-Settings als den normalen Benutzer ausführen kann:
00000001	0.00000000	[3024] .\SuRunext.cpp(630): SuRun ShellExtHook: msk=10000C verb=(null), file=(null), parms=(null), dir=(null), idlist=5C64B50, class=(null), hkc=0, hProc=0	
00000002	0.00017237	[3024] .\SuRunext.cpp(639): SuRun ShellExtExecute Error: invalid LPSHELLEXECUTEINFO->lpFile==NULL!	
00000003	0.00525634	[3024] .\SuRunext.cpp(630): SuRun ShellExtHook: msk=400 verb=(null), file=C:\Windows\system32\rundll32.exe, parms=C:\Windows\system32\shell32.dll,Control_RunDLL "C:\Windows\SuRunExt.dll",SuRun Settings, dir=(null), idlist=0, class=(null), hkc=0, hProc=0	
00000004	0.04443315	[708] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /QUIET /TESTAA 3024 000007FEF1A962A8 C:\Windows\system32\rundll32.exe C:\Windows\system32\shell32.dll,Control_RunDLL "C:\Windows\SuRunExt.dll",SuRun Settings)	
00000005	0.26190847	[3632] .\SuRunext.cpp(630): SuRun ShellExtHook: msk=1500 verb=open, file=C:\Windows\SuRun.exe, parms=/Setup, dir=(null), idlist=0, class=(null), hkc=0, hProc=0	
00000006	0.39453596	[1396] .\main.cpp(86): SuRun started with ("C:\Windows\SuRun.exe" /Setup)	
00000007	0.42743972	[4336] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /AskUSER)	
00000008	0.60384256	[FFFFFA8005FDF010] WskProIRPGetAddrInfo is called.	
00000009	0.60385364	[bind=FFFFFA80054E28B0] Binding reference count++ = 2 (status = 00000000, impersonation= 2).	
00000010	0.60385793	[FFFFFA80062D46B0] Request reference count++ = 3.	
00000011	0.60389000	[FFFFFA80062D46B0] RPC method type = 1: rpc-method succeeded, queue to rpc-pending-list.	
00000012	0.60389388	[FFFFFA80062D46B0] Request reference count-- = 2.	
00000013	0.60484511	[FFFFFA80062D46B0] WskKnrRpcComplete: rpc calls back for completion.	
00000014	0.60485196	[FFFFFA80062D46B0] WskKnrCompletePending: complete pending request (rpc=1).	
00000015	0.60485625	[FFFFFA80062D46B0] Request reference count-- = 1.	
00000016	0.60486007	[FFFFFA80062D46B0] Request reference count-- = 0.	
00000017	0.60487592	[FFFFFA80062D46B0] WskKnrCompleteRequest: rpc completion return status = 00000000 (reply=00000000).	
00000018	0.60488063	[FFFFFA80062D46B0] WskProAPIGetAddressInfo returned addrinfo: [addr=FFFFF8A00B082680].	
00000019	0.60488492	[bind=FFFFFA80054E28B0] Binding reference count-- = 1.	
00000020	0.60488963	[FFFFFA80062D46B0] WskKnrCompleteRequest: complete irp with IO status = 00000000.	
00000021	0.61774707	[2916] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /WATCHDOG Winlogon Default 4336)	
00000022	0.70529383	[addr=FFFFF8A00B082680] WskProAPIFreeAddressInfo freed addrinfo.	
00000023	0.80952924	[4336] Blur 1440x900 init.	
00000024	0.82219726	[FFFFFA8005FDF010] WskProIRPGetAddrInfo is called.	
00000025	0.82220793	[bind=FFFFFA80054E28B0] Binding reference count++ = 2 (status = 00000000, impersonation= 2).	
00000026	0.82221222	[FFFFFA80063683A0] Request reference count++ = 3.	
00000027	0.82224560	[FFFFFA80063683A0] RPC method type = 1: rpc-method succeeded, queue to rpc-pending-list.	
00000028	0.82224941	[FFFFFA80063683A0] Request reference count-- = 2.	
00000029	0.82301378	[FFFFFA80063683A0] WskKnrRpcComplete: rpc calls back for completion.	
00000030	0.82301974	[FFFFFA80063683A0] WskKnrCompletePending: complete pending request (rpc=1).	
00000031	0.82302403	[FFFFFA80063683A0] Request reference count-- = 1.	
00000032	0.82302743	[FFFFFA80063683A0] Request reference count-- = 0.	
00000033	0.82304287	[FFFFFA80063683A0] WskKnrCompleteRequest: rpc completion return status = 00000000 (reply=00000000).	
00000034	0.82304758	[FFFFFA80063683A0] WskProAPIGetAddressInfo returned addrinfo: [addr=FFFFF8A00E76B8D0].	
00000035	0.82305139	[bind=FFFFFA80054E28B0] Binding reference count-- = 1.	
00000036	0.82305610	[FFFFFA80063683A0] WskKnrCompleteRequest: complete irp with IO status = 00000000.	
00000037	0.83075434	[4336] Blur 1440x900 exit: 32 ms	
00000038	0.92772180	[addr=FFFFF8A00E76B8D0] WskProAPIFreeAddressInfo freed addrinfo.	
Wow, viel Text! ;-)
SimooZ wrote: Bei Version 1.2.1.0 dasselbe. Ich hoffe, dass ich etwas falsch gemacht habe. Sonst haben wir da eine riesige Sicherheitslücke.
Eine Sicherheitslücke wäre, wenn Du unberechtigt administrativ Code ausführen könntest.
Das der Gerätemanager nicht startet ist nervig, aber nicht unsicher.

Ich habe kein Win7 EE x64, und keinen WS2008 als PDC.
* Welchen Server benutzt Du?
* Kann ich das in einer VM nachstellen? (Ich habe WS2003 und Win7 x64 Ultimate)

Der Debug-Log deutet darauf hin, dass der SuRun-Dienst Deine Domänen-Benutzergruppen nicht auflisten kann.

Ich habe UAC mit SuRun in einer Domäne bisher nicht testen können, vermute aber, dass SuRun nicht erkennt, dass "Domäne\Benutzer" ein UAC-Admin ist.

SuRun /RunAs kann prinzipiell von jedem Benutzer ausgeführt werden.
Du müsstest von Hand "Domäne\Benutzer" als Benutzernamen (ohne Dropdown) und Dein Kennwort eingeben können.
Siehst Du da das "mit gehobenen Rechten"-Kästchen?

Das müsste auch mit einem lokalen Admin funktionieren.
Siehst Du da das "mit gehobenen Rechten"-Kästchen?

...ich hoffe, dass ich das bei mir nachbauen kann...
Danke schon einmal für deine Antwort. Spiele bitte einmal das von mir geschilderte Szenario nach. Also ich kann danach jeden Code als Admin ausführen.
Und jetzt kommen wir zum sehr eigenartigen Teil. Wenn ich
surun /runas C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc
erneut ausführe und dann in der SuRun-UAC im Dropdown-Menü den "vorgedruckten" Benutzer lösche (also die Zeile) und dann wieder auswähle, erscheint auf einmal das "Run elevated" Feld und ich kann das "Remember Password"-Häckchen setzen. Aber ich kann kein Passwort eingeben und auch das Passwort-Häckchen nicht mehr verändern. Zusätzlich ist der Benutzer plötzlich als SuRun-Admin eingetragen und ich kann die SuRun-Einstellungen öffnen. Diese wurden aber wie von Geisterhand gelöscht.


Wir haben hier einen 2003 AD und das Kästchen sehe ich nicht. Erst wieder, wenn ich das oben Beschriebene durchgespielt habe. Ich bin leider bis Ende Woche weg. Ich melde mich wieder, sobald ich zurück bin.

EDIT: Was ich noch vergessen habe: Die aufgelisteten User im DbgView-Log sind die Mitglieder (Domänenbenutzer und -gruppen) der Administratorengruppe. Aber das ist dir wahrscheinlich klar =)
Ich habe getestet (SuRun 1.2.1.0, 1.2.1.1b3; Win7ult x86; Win7ult x64; Win8pro x64; WS2003EE)
Folgende Benutzer sind vorhanden:
* bunsnet\SuperUser (Domänen-Admin)
* bunsnet\mmustermann (Domänenbenutzer)
* bunsnet\kbruns (lokales SuRunners-Mitglied, Domänenbenutzer)
* <local>\kay (UAC-Admin)
* <local>\testuser (eingeschränkter Benutzer)

Angemeldet bin ich jeweils als <local>\kay, bunsnet\kbruns und bunsnet\mmustermann

Es wird ausgeführt:
<win>+"r" "surun /runas C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc" <enter>

Das Verhalten von "SuRun /RUNAS" ist bei allen Betriebssystemen und Benutzern immer gleich.
Ob ich einen Benutzer auswähle, indem ich seinen Namen tippe oder ihn per DropDown auswähle, ändert nichts.

* Gehört das Konto in der Benutzernamen-Box einem eingeschränkten Benutzer, bleibt das "Mit gehobenen Rechten starten"-Feld verborgen.
* Ist ein Benutzer in "SuRunners", in der lokalen Administratoren-Gruppe oder in der Domänen-Administratoren-Gruppe und ist UAC an, wird "Mit gehobenen Rechten starten" eingeblendet.
* Ist das Kennwort des Benutzernamens im Konto des SuRun Benutzers gespeichert und gültig, wird die Kennwort-Box ausgegraut und vorausgefüllt. ...klingt verboten kompliziert:
** ich bin als bunsnet\kay angemeldet
** ich starte SuRun /RunAs
** ich möchte ein Programm als bunsnet\mmustermann ausführen
** ist im Konto bunsnet\kay ein Kennwort für bunsnet\mmustermann gespeichert und gültig, wird die Kennwort-Box ausgegraut und vorausgefüllt. :-)

All das ist in sich konsistent und soll so funktionieren.

Mir ist allerdings ein blöder Fehler unterlaufen, der so nicht auftreten sollte.

Ich habe in den SuRun Einstellungen einen Domänen-Benutzer aus der SuRunners Gruppe gelöscht, und plötzlich stand er in der lokalen Administratoren-Gruppe. :huh:

Nach einer Weile des Suchens habe ich bemerkt, dass ich meine Eigene Meldung beim Entfernen aus der SuRunners-Gruppe nicht las:
[indent]"Sie wollen Benutzer 'bunsnet\kbruns' aus der lokalen Bentuzergruppe SuRunners austragen.

Alle Benutzerspezifischen SuRun Einstellungen werden gelöscht.

Soll dieser Bentuzer danach in die Gruppe der lokalen Administratoren aufgenommen werden?"[/indent]

Ich Dussel habe JA geklickt und musste dann suchen, warum "Mit gehobenen Rechten starten" für 'bunsnet\kbruns' immer noch und immer wieder verfügbar war... :nuts:

Vielleicht ist Dir das ja auch passiert?
Ist bei Dir "Domäne\Benutzer" in der lokalen Administratoren-Gruppe?
5 Tage später
Nein, die Benutzer sind nicht in der Administratorengruppe. Sie befinden sich ausschliesslich in der Surunnersgruppe. Wenn ich den Benutzer via Dropdown wechsle, ändert sich ebenfalls nichts. Der "Alptraum" beginnt erst, wenn ich BACKSPACE drücke und danach den Benutzer wieder im Dropdown Menü auswähle.

Die Screenshot

Ausgehend von dieser Situation:


Nach Windows+R und
surun /runas C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc


Dann BACKSPACE oder DEL


Nach der erneuten Auswahl vom Benutzer präsentiert sich das Fenster wie folgt:


Danach sehen die SuRun-Einstellungen so aus:


Natürlich muss ich für die SuRun-Einstellungen kein Passwort mehr eingeben und kann ich jetzt auch alle Programme als Administrator ausführen.
Ok, ich kann's nachvollziehen.
SuRun löscht den Registry Key HKLM\Security\SuRun.
Damit werden alle "SuRunners" zum Standard-SuRunner und dürfen alles machen.

Mist! :#:

Das passiert zum Glück nur in Domänen.

Bin am Suchen, woran das liegt.

[Edit:]...es passiert auch bei jedem normalen Windows... :'(
"SuRun /RunAs control" <bkspace><enter> -> alle SuRun Einstellungen futsch!

...suche weiter.
Wenn das Eingabefeld des Benutzernamens gelöscht wurde, hat SuRun trotzdem die Gruppenzugehörigkeit des "NULL-Benutzers" zu "SuRunners" geprüft. Da er verständlicher Weise nicht in der Gruppe ist, hat SuRun alle Einstellungen dieses Benutzers gelöscht. Blöd nur, dass das den ganzen Zweig HKLM\Security\SuRun entfernt hat.

Ich hab's mit SuRun 1.2.1.1b4 behoben.
Welche Schlüssel sollten denn in HKLM\Security normalerweise stehen (bei einem normalen System)?

Bei mir ist der Zweig HKLM\Security vollständig leer, abgesehen von einem "(Standard)"-Schlüssel ohne Daten. Es ist auch kein \SuRun-Unterschlüssel vorhanden.
Du musst SYSTEM sein, um HKLM\Security zu sehen.
"surun /runas /user system regedit"

Windows speichert in HKLM\Security Sicherheits-Informationen.
Vielen Dank für den schnellen Fix! Komisch, dass das bisher noch niemand bemerkt hat.

Mein Problem besteht aber immernoch. Der DbgView-Output sagt mir einfach überhaupt nichts. Ich weiss nicht, wo ich da ansetzen soll. Klar ist, dass es Probleme beim Finden der Benutzer gibt (aber eben nicht immer). Aber wie's scheint, ist das nicht unbedingt das Problem. Ich habe nun auf einer physikalischen Maschine zwei Domänen-Benutzer. Beim einen (Benutzer2) geht's, beim anderen (Benutzer 1) nicht. Ich bin echt am Ende meines Lateins. Hast du mir da noch Tipps? Was evtl. noch speziell an diesem Setup ist, ist die Tatsache, dass bei jedem Policy-Refresh die Liste der Mitglieder der Administratorengruppe neu geschrieben wird. Aber das wird sie auch bei dem Benutzer, bei dem es funktioniert.

Wie gesagt, ich komme nicht weiter. Ich erkenne auch keinen eindeutigen Unterschied zwischen den Outputs von Benutzer1 und Benutzer2. Aber es kann gut sein, dass ich es einfach nicht mehr sehe. Wäre toll, wenn du da kurz einen Blick darauf werfen könntest.

Kommandozeile:
surun C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc
Benutzer2
Funktioniert, wie gewünscht.
00000001	0.00000000	[6224] .\main.cpp(86): SuRun started with (surun  C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc)	
00000002	0.00000000	[5960] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /AskUSER)	
00000003	0.00000000	[5960] .\Helpers.cpp(236): RegOpenKeyEx(80000002,SECURITY\SuRun\Cache) failed: 2(0x00000002): The system cannot find the file specified. 	
00000004	0.00000000	[5960] 	
00000005	0.00000000	[FFFFFA8012505EE0] WskProIRPGetAddrInfo is called.	
00000006	0.00001112	[bind=FFFFFA800A7BBB70] Binding reference count++ = 2 (status = 00000000, impersonation= 2).	
00000007	0.00001497	[FFFFFA800BC1E270] Request reference count++ = 3.	
00000008	0.00004320	[FFFFFA800BC1E270] RPC method type = 1: rpc-method succeeded, queue to rpc-pending-list.	
00000009	0.00004705	[FFFFFA800BC1E270] Request reference count-- = 2.	
00000010	0.00047692	[FFFFFA800BC1E270] WskKnrRpcComplete: rpc calls back for completion.	
00000011	0.00048205	[FFFFFA800BC1E270] WskKnrCompletePending: complete pending request (rpc=1).	
00000012	0.00048547	[FFFFFA800BC1E270] Request reference count-- = 1.	
00000013	0.00048890	[FFFFFA800BC1E270] Request reference count-- = 0.	
00000014	0.00050258	[FFFFFA800BC1E270] WskKnrCompleteRequest: rpc completion return status = 00000000 (reply=00000000).	
00000015	0.00050686	[FFFFFA800BC1E270] WskProAPIGetAddressInfo returned addrinfo: [addr=FFFFF8A00F17A4F0].	
00000016	0.00051071	[bind=FFFFFA800A7BBB70] Binding reference count-- = 1.	
00000017	0.00051499	[FFFFFA800BC1E270] WskKnrCompleteRequest: complete irp with IO status = 00000000.	
00000018	0.10056422	[addr=FFFFF8A00F17A4F0] WskProAPIFreeAddressInfo freed addrinfo.	
00000019	0.35116100	[700] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /WATCHDOG Winlogon Default 5960)	
00000020	0.44688118	[5960] Blur 3840x1080 init.	
00000021	0.53602970	[5960] Blur 3840x1080 exit: 89 ms	
Benutzer1
Funktioniert nicht.
00000001	0.00000000	[7940] .\main.cpp(86): SuRun started with (surun  C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc)	
00000002	0.00000000	[4172] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /AskUSER)	
00000003	0.00000000	[4172] .\Helpers.cpp(236): RegOpenKeyEx(80000002,SECURITY\SuRun\Cache) failed: 2(0x00000002): The system cannot find the file specified. 	
00000004	0.00000000	[4172] 	
00000005	0.00000000	[FFFFFA80067DCEE0] WskProIRPGetAddrInfo is called.	
00000006	0.00000898	[bind=FFFFFA800A7BBB70] Binding reference count++ = 2 (status = 00000000, impersonation= 2).	
00000007	0.00001283	[FFFFFA800C6B4F10] Request reference count++ = 3.	
00000008	0.00004149	[FFFFFA800C6B4F10] RPC method type = 1: rpc-method succeeded, queue to rpc-pending-list.	
00000009	0.00004534	[FFFFFA800C6B4F10] Request reference count-- = 2.	
00000010	0.00042859	[FFFFFA800C6B4F10] WskKnrRpcComplete: rpc calls back for completion.	
00000011	0.00043372	[FFFFFA800C6B4F10] WskKnrCompletePending: complete pending request (rpc=1).	
00000012	0.00043800	[FFFFFA800C6B4F10] Request reference count-- = 1.	
00000013	0.00044142	[FFFFFA800C6B4F10] Request reference count-- = 0.	
00000014	0.00045425	[FFFFFA800C6B4F10] WskKnrCompleteRequest: rpc completion return status = 00000000 (reply=00000000).	
00000015	0.00045853	[FFFFFA800C6B4F10] WskProAPIGetAddressInfo returned addrinfo: [addr=FFFFF8A010F215F0].	
00000016	0.00046238	[bind=FFFFFA800A7BBB70] Binding reference count-- = 1.	
00000017	0.00046708	[FFFFFA800C6B4F10] WskKnrCompleteRequest: complete irp with IO status = 00000000.	
00000018	0.10041751	[addr=FFFFF8A010F215F0] WskProAPIFreeAddressInfo freed addrinfo.	
00000019	0.33130702	[8068] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /WATCHDOG Winlogon Default 4172)	
00000020	0.46999061	[4172] Blur 3840x1080 init.	
00000021	0.56561798	[4172] Blur 3840x1080 exit: 61 ms	

[/color]

Kommandozeile:
surun /runas C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc
Benutzer2
Funktioniert nicht.
00000001	0.00000000	[284] .\main.cpp(86): SuRun started with (surun  /runas C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc)	
00000002	0.03460342	[3852] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /AskUSER)	
00000003	0.30288902	[3852] .\UserGroups.cpp(676): NetLocalGroupGetMembers(Domäne\Domain Admins) failed: 2220(0x000008AC): The group name could not be found. 	
00000004	0.30288902	[3852] 	
00000005	0.32967225	[5988] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /WATCHDOG Winlogon Default 3852)	
00000006	0.40353367	[FFFFFA800A819AB0] WskProIRPGetAddrInfo is called.	
00000007	0.40355504	[bind=FFFFFA800A7BBB70] Binding reference count++ = 2 (status = 00000000, impersonation= 2).	
00000008	0.40356404	[FFFFFA800C2E5110] Request reference count++ = 3.	
00000009	0.40363032	[FFFFFA800C2E5110] RPC method type = 1: rpc-method succeeded, queue to rpc-pending-list.	
00000010	0.40364015	[FFFFFA800C2E5110] Request reference count-- = 2.	
00000011	0.40470651	[FFFFFA800C2E5110] WskKnrRpcComplete: rpc calls back for completion.	
00000012	0.40471932	[FFFFFA800C2E5110] WskKnrCompletePending: complete pending request (rpc=1).	
00000013	0.40472829	[FFFFFA800C2E5110] Request reference count-- = 1.	
00000014	0.40473688	[FFFFFA800C2E5110] Request reference count-- = 0.	
00000015	0.40479547	[FFFFFA800C2E5110] WskKnrCompleteRequest: rpc completion return status = 00000000 (reply=00000000).	
00000016	0.40480700	[FFFFFA800C2E5110] WskProAPIGetAddressInfo returned addrinfo: [addr=FFFFF8A00BCB0850].	
00000017	0.40481642	[bind=FFFFFA800A7BBB70] Binding reference count-- = 1.	
00000018	0.40482712	[FFFFFA800C2E5110] WskKnrCompleteRequest: complete irp with IO status = 00000000.	
00000019	0.43494278	[3852] .\UserGroups.cpp(676): NetLocalGroupGetMembers(NT AUTHORITY\INTERACTIVE) failed: 2220(0x000008AC): The group name could not be found. 	
00000020	0.43494278	[3852] 	
00000021	0.43841168	[3852] .\UserGroups.cpp(676): NetLocalGroupGetMembers(NT AUTHORITY\Authenticated Users) failed: 2220(0x000008AC): The group name could not be found. 	
00000022	0.43841168	[3852] 	
00000023	0.44794494	[3852] .\UserGroups.cpp(676): NetLocalGroupGetMembers(Domäne\Domain Users) failed: 2220(0x000008AC): The group name could not be found. 	
00000024	0.44794494	[3852] 	
00000025	0.46368673	[3852] Blur 3840x1080 init.	
00000026	0.50702870	[addr=FFFFF8A00BCB0850] WskProAPIFreeAddressInfo freed addrinfo.	
00000027	0.53299963	[3852] Blur 3840x1080 exit: 69 ms	
00000028	5.46486521	[3852] .\Helpers.cpp(236): RegOpenKeyEx(80000002,SECURITY\SuRun\RunAs\Domäne\Benutzer2\Cache) failed: 2(0x00000002): The system cannot find the file specified. 	
00000029	5.46486521	[3852] 	
Benutzer1
Funktioniert nicht.
00000001	0.00000000	[7496] .\main.cpp(86): SuRun started with (surun  /runas C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc)	
00000002	0.03873402	[6164] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /AskUSER)	
00000003	0.30570692	[6164] .\UserGroups.cpp(676): NetLocalGroupGetMembers(Domäne\Domain Admins) failed: 2220(0x000008AC): The group name could not be found. 	
00000004	0.30570692	[6164] 	
00000005	0.31463879	[6404] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /WATCHDOG Winlogon Default 6164)	
00000006	0.40737468	[FFFFFA800C534C10] WskProIRPGetAddrInfo is called.	
00000007	0.40739819	[bind=FFFFFA800A7BBB70] Binding reference count++ = 2 (status = 00000000, impersonation= 2).	
00000008	0.40740719	[FFFFFA800797E1F0] Request reference count++ = 3.	
00000009	0.40747562	[FFFFFA800797E1F0] RPC method type = 1: rpc-method succeeded, queue to rpc-pending-list.	
00000010	0.40748504	[FFFFFA800797E1F0] Request reference count-- = 2.	
00000011	0.40855777	[FFFFFA800797E1F0] WskKnrRpcComplete: rpc calls back for completion.	
00000012	0.40857020	[FFFFFA800797E1F0] WskKnrCompletePending: complete pending request (rpc=1).	
00000013	0.40857875	[FFFFFA800797E1F0] Request reference count-- = 1.	
00000014	0.40858731	[FFFFFA800797E1F0] Request reference count-- = 0.	
00000015	0.40861896	[FFFFFA800797E1F0] WskKnrCompleteRequest: rpc completion return status = 00000000 (reply=00000000).	
00000016	0.40863049	[FFFFFA800797E1F0] WskProAPIGetAddressInfo returned addrinfo: [addr=FFFFF8A00CBB6810].	
00000017	0.40863991	[bind=FFFFFA800A7BBB70] Binding reference count-- = 1.	
00000018	0.40865061	[FFFFFA800797E1F0] WskKnrCompleteRequest: complete irp with IO status = 00000000.	
00000019	0.45267737	[6164] Blur 3840x1080 init.	
00000020	0.51009297	[addr=FFFFF8A00CBB6810] WskProAPIFreeAddressInfo freed addrinfo.	
00000021	0.53435814	[6164] .\UserGroups.cpp(676): NetLocalGroupGetMembers(NT AUTHORITY\INTERACTIVE) failed: 2220(0x000008AC): The group name could not be found. 	
00000022	0.53435814	[6164] 	
00000023	0.53466564	[6164] Blur 3840x1080 exit: 82 ms	
00000024	0.56737596	[6164] .\UserGroups.cpp(676): NetLocalGroupGetMembers(NT AUTHORITY\Authenticated Users) failed: 2220(0x000008AC): The group name could not be found. 	
00000025	0.56737596	[6164] 	
00000026	0.56780493	[6164] .\UserGroups.cpp(676): NetLocalGroupGetMembers(Domäne\Domain Users) failed: 2220(0x000008AC): The group name could not be found. 	
00000027	0.56780493	[6164] 	
00000028	5.49979258	[6164] .\Helpers.cpp(236): RegOpenKeyEx(80000002,SECURITY\SuRun\RunAs\Domäne\Benutzer1\Cache) failed: 2(0x00000002): The system cannot find the file specified. 	
00000029	5.49979258	[6164] 	
00000030	5.82686806	[6164] .\Service.cpp(503): CreateProcessAsUser(C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc,ALLUSERSPROFILE=C:\ProgramData,C:\Users\Benutzer1) failed: 740(0x000002E4): The requested operation requires elevation. 	
00000031	5.82686806	[6164] 	
00000032	5.82689238	[6164] .\Service.cpp(1517): CreateProcessAsUser failed: 740(0x000002E4): The requested operation requires elevation. 	
00000033	5.82689238	[6164] 	
[/color]

Kommandozeile:
surun "C:\Windows\System32\devmgmt.msc"
Benutzer2
Funktioniert einwandfrei.
00000001	0.00000000	[4108] .\main.cpp(86): SuRun started with (surun  "C:\Windows\System32\devmgmt.msc")	
00000002	0.02850484	[3304] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /AskUSER)	
00000003	0.03256999	[3304] .\Helpers.cpp(236): RegOpenKeyEx(80000002,SECURITY\SuRun\Cache) failed: 2(0x00000002): The system cannot find the file specified. 	
00000004	0.03256999	[3304] 	
00000005	0.31214768	[5580] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /WATCHDOG Winlogon Default 3304)	
00000006	0.45758429	[3304] Blur 3840x1080 init.	
00000007	0.53986770	[3304] Blur 3840x1080 exit: 82 ms	
Benutzer1
Funktioniert nicht.
00000001	0.00000000	[6528] .\main.cpp(86): SuRun started with (surun  "C:\Windows\System32\devmgmt.msc")	
00000002	0.00000000	[4376] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /AskUSER)	
00000003	0.00000000	[4376] .\Helpers.cpp(236): RegOpenKeyEx(80000002,SECURITY\SuRun\Cache) failed: 2(0x00000002): The system cannot find the file specified. 	
00000004	0.00000000	[4376] 	
00000005	0.00000000	[FFFFFA800C2133B0] WskProIRPGetAddrInfo is called.	
00000006	0.00000941	[bind=FFFFFA800A7BBB70] Binding reference count++ = 2 (status = 00000000, impersonation= 2).	
00000007	0.00001412	[FFFFFA800BD157F0] Request reference count++ = 3.	
00000008	0.00004149	[FFFFFA800BD157F0] RPC method type = 1: rpc-method succeeded, queue to rpc-pending-list.	
00000009	0.00004577	[FFFFFA800BD157F0] Request reference count-- = 2.	
00000010	0.00043500	[FFFFFA800BD157F0] WskKnrRpcComplete: rpc calls back for completion.	
00000011	0.00043971	[FFFFFA800BD157F0] WskKnrCompletePending: complete pending request (rpc=1).	
00000012	0.00044313	[FFFFFA800BD157F0] Request reference count-- = 1.	
00000013	0.00044655	[FFFFFA800BD157F0] Request reference count-- = 0.	
00000014	0.00045981	[FFFFFA800BD157F0] WskKnrCompleteRequest: rpc completion return status = 00000000 (reply=00000000).	
00000015	0.00046409	[FFFFFA800BD157F0] WskProAPIGetAddressInfo returned addrinfo: [addr=FFFFF8A010CEBA10].	
00000016	0.00046794	[bind=FFFFFA800A7BBB70] Binding reference count-- = 1.	
00000017	0.00047221	[FFFFFA800BD157F0] WskKnrCompleteRequest: complete irp with IO status = 00000000.	
00000018	0.10078023	[addr=FFFFF8A010CEBA10] WskProAPIFreeAddressInfo freed addrinfo.	
00000019	0.31841564	[7488] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /WATCHDOG Winlogon Default 4376)	
00000020	0.45034367	[4376] Blur 3840x1080 init.	
00000021	0.58948320	[4376] Blur 3840x1080 exit: 95 ms
[/color]

Kommandozeile:
surun /runas "C:\Windows\System32\devmgmt.msc"
Benutzer2
Funktioniert nicht.
00000001	0.00000000	[1104] .\main.cpp(86): SuRun started with (surun  /runas "C:\Windows\System32\devmgmt.msc")	
00000002	0.00000000	[6396] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /AskUSER)	
00000003	0.00000000	[6396] .\UserGroups.cpp(676): NetLocalGroupGetMembers(Domäne\Domain Admins) failed: 2220(0x000008AC): The group name could not be found. 	
00000004	0.00000000	[6396] 	
00000005	0.00000000	[6884] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /WATCHDOG Winlogon Default 6396)	
00000006	0.00000000	[FFFFFA800C3260A0] WskProIRPGetAddrInfo is called.	
00000007	0.00002395	[bind=FFFFFA800A7BBB70] Binding reference count++ = 2 (status = 00000000, impersonation= 2).	
00000008	0.00003379	[FFFFFA800B6BD1A0] Request reference count++ = 3.	
00000009	0.00009752	[FFFFFA800B6BD1A0] RPC method type = 1: rpc-method succeeded, queue to rpc-pending-list.	
00000010	0.00010693	[FFFFFA800B6BD1A0] Request reference count-- = 2.	
00000011	0.00121133	[FFFFFA800B6BD1A0] WskKnrRpcComplete: rpc calls back for completion.	
00000012	0.00122417	[FFFFFA800B6BD1A0] WskKnrCompletePending: complete pending request (rpc=1).	
00000013	0.00123315	[FFFFFA800B6BD1A0] Request reference count-- = 1.	
00000014	0.00124170	[FFFFFA800B6BD1A0] Request reference count-- = 0.	
00000015	0.00127378	[FFFFFA800B6BD1A0] WskKnrCompleteRequest: rpc completion return status = 00000000 (reply=00000000).	
00000016	0.00128533	[FFFFFA800B6BD1A0] WskProAPIGetAddressInfo returned addrinfo: [addr=FFFFF8A00CCAFF90].	
00000017	0.00129474	[bind=FFFFFA800A7BBB70] Binding reference count-- = 1.	
00000018	0.00130543	[FFFFFA800B6BD1A0] WskKnrCompleteRequest: complete irp with IO status = 00000000.	
00000019	0.03361964	[6396] .\UserGroups.cpp(676): NetLocalGroupGetMembers(NT AUTHORITY\INTERACTIVE) failed: 2220(0x000008AC): The group name could not be found. 	
00000020	0.03361964	[6396] 	
00000021	0.03722071	[6396] .\UserGroups.cpp(676): NetLocalGroupGetMembers(NT AUTHORITY\Authenticated Users) failed: 2220(0x000008AC): The group name could not be found. 	
00000022	0.03722071	[6396] 	
00000023	0.04404900	[6396] .\UserGroups.cpp(676): NetLocalGroupGetMembers(Domäne\Domain Users) failed: 2220(0x000008AC): The group name could not be found. 	
00000024	0.04404900	[6396] 	
00000025	0.05814744	[6396] Blur 3840x1080 init.	
00000026	0.10419694	[addr=FFFFF8A00CCAFF90] WskProAPIFreeAddressInfo freed addrinfo.	
00000027	0.12172192	[6396] Blur 3840x1080 exit: 63 ms	
00000028	4.77363920	[6396] .\Helpers.cpp(236): RegOpenKeyEx(80000002,SECURITY\SuRun\RunAs\Domäne\Benutzer2\Cache) failed: 2(0x00000002): The system cannot find the file specified. 	
00000029	4.77363920	[6396] 	
Benutzer1
Funktioniert nicht.
00000001	0.00000000	[6504] .\main.cpp(86): SuRun started with (surun  /runas "C:\Windows\System32\devmgmt.msc")	
00000002	0.00000000	[6444] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /AskUSER)	
00000003	0.00000000	[6444] .\UserGroups.cpp(676): NetLocalGroupGetMembers(Domäne\Domain Admins) failed: 2220(0x000008AC): The group name could not be found. 	
00000004	0.00000000	[6444] 	
00000005	0.00000000	[7320] .\main.cpp(86): SuRun started with (C:\Windows\SuRun.exe /WATCHDOG Winlogon Default 6444)	
00000006	0.00000000	[FFFFFA800B37FD20] WskProIRPGetAddrInfo is called.	
00000007	0.00002353	[bind=FFFFFA800A7BBB70] Binding reference count++ = 2 (status = 00000000, impersonation= 2).	
00000008	0.00003336	[FFFFFA80075C0630] Request reference count++ = 3.	
00000009	0.00009667	[FFFFFA80075C0630] RPC method type = 1: rpc-method succeeded, queue to rpc-pending-list.	
00000010	0.00010608	[FFFFFA80075C0630] Request reference count-- = 2.	
00000011	0.00130158	[FFFFFA80075C0630] WskKnrRpcComplete: rpc calls back for completion.	
00000012	0.00131484	[FFFFFA80075C0630] WskKnrCompletePending: complete pending request (rpc=1).	
00000013	0.00132383	[FFFFFA80075C0630] Request reference count-- = 1.	
00000014	0.00133238	[FFFFFA80075C0630] Request reference count-- = 0.	
00000015	0.00136446	[FFFFFA80075C0630] WskKnrCompleteRequest: rpc completion return status = 00000000 (reply=00000000).	
00000016	0.00137601	[FFFFFA80075C0630] WskProAPIGetAddressInfo returned addrinfo: [addr=FFFFF8A003E3D400].	
00000017	0.00138585	[bind=FFFFFA800A7BBB70] Binding reference count-- = 1.	
00000018	0.00139697	[FFFFFA80075C0630] WskKnrCompleteRequest: complete irp with IO status = 00000000.	
00000019	0.04043382	[6444] Blur 3840x1080 init.	
00000020	0.06632479	[6444] .\UserGroups.cpp(676): NetLocalGroupGetMembers(NT AUTHORITY\INTERACTIVE) failed: 2220(0x000008AC): The group name could not be found. 	
00000021	0.06632479	[6444] 	
00000022	0.08211405	[6444] .\UserGroups.cpp(676): NetLocalGroupGetMembers(NT AUTHORITY\Authenticated Users) failed: 2220(0x000008AC): The group name could not be found. 	
00000023	0.08211405	[6444] 	
00000024	0.08498113	[6444] .\UserGroups.cpp(676): NetLocalGroupGetMembers(Domäne\Domain Users) failed: 2220(0x000008AC): The group name could not be found. 	
00000025	0.08498113	[6444] 	
00000026	0.10293428	[addr=FFFFF8A003E3D400] WskProAPIFreeAddressInfo freed addrinfo.	
00000027	0.12721057	[6444] Blur 3840x1080 exit: 87 ms	
00000028	5.80861616	[6444] .\Helpers.cpp(236): RegOpenKeyEx(80000002,SECURITY\SuRun\RunAs\Domäne\Benutzer1\Cache) failed: 2(0x00000002): The system cannot find the file specified. 	
00000029	5.80861616	[6444] 	
00000030	6.07608128	[6444] .\Service.cpp(503): CreateProcessAsUser(C:\Windows\system32\mmc.exe C:\Windows\System32\devmgmt.msc,ALLUSERSPROFILE=C:\ProgramData,C:\Users\Benutzer1) failed: 740(0x000002E4): The requested operation requires elevation. 	
00000031	6.07608128	[6444] 	
00000032	6.07623625	[6444] .\Service.cpp(1517): CreateProcessAsUser failed: 740(0x000002E4): The requested operation requires elevation. 	
00000033	6.07623625	[6444] 	
[/color]
Benutzer1
Funktioniert nicht.

Doch, der Prozess hat nur eingeschränkte Rechte.
Hast Du das Programm "mit gehobenen Rechten" gestartet?
Kommandozeile:
surun /runas C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc
Benutzer2
Funktioniert nicht.
...Dasselbe: Hast Du das Programm "mit gehobenen Rechten" gestartet?
Benutzer1
Funktioniert nicht.
00000030	5.82686806	[6164] .\Service.cpp(503): CreateProcessAsUser(C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc,ALLUSERSPROFILE=C:\ProgramData,C:\Users\Benutzer1) failed: 740(0x000002E4): The requested operation requires elevation. 	
00000032	5.82689238	[6164] .\Service.cpp(1517): CreateProcessAsUser failed: 740(0x000002E4): The requested operation requires elevation. 	
Windows UAC schaltet sich dazwischen.
Kommandozeile:
surun "C:\Windows\System32\devmgmt.msc"
Benutzer2
Funktioniert einwandfrei.
Benutzer1
Funktioniert nicht.

...Dasselbe, wie ganz oben, ab jetzt wiederholt sich da Ganze.

Weil es so viel Text ist. Habe ich es zusammenfassend richtig verstanden?
* surun devmgmt.msc
[indent]Funktioniert bei Benutzer 2, bei Benutzer 1 ist mmc eingeschränkt[/indent]
* surun /runas /user Benutzer1 devmgmt.msc
[indent]verweigert den Start, Windumms meckert.[/indent]
* surun /runas /user Benutzer2 devmgmt.msc
[indent]Funktioniert, ist aber eingeschränkt[/indent]

Was mir nicht klar ist:
* "surun C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc" sollte auf jedem System funktionieren. Im Debug-Log steht auch nichts auffälliges. Hast Du ein HIPS installiert, dass das bei Benutzer 1 verhindert?
* Warum erfordert mmc.exe bei Benutzer 1 gehobene Rechte? (CreateProcessAsUser failed: 740(0x000002E4): The requested operation requires elevation. Die Fehlermeldung erzeugt das Windows API CreateProcessAsUser)

[Edit:]
Wenn ich davon ausgehe, dass Dein Benutzer 1 die obige SuRun-Konfiguration hat, darf er nur ausgewählte Programme mit gehobenen Rechten starten.
Deshalb meldet mmc bei "SuRun /RunAs" auch, dass es schreibgeschützt läuft.
(Warum UAC den Start ganz verweigert verstehe ich allerdings noch nicht)

Kann es sein, dass SuRun für "Benutzer 2" nach dem Löschen von HKLM\Security\SuRun noch nicht wieder eingerichtet worden ist?
Ja, du hast das richtig verstanden. Ich sehe gerade, mein Post ist sehr unübersichtlich. Ich mache kurz einen illustrierten Ablauf für die User. Den Output von DbgView kann ich dir dann nachliefern.

Ausgangslage: Die Benutzer sind identisch konfiguriert.


In der Registry unter "HKLM\Security" ist der einzige Unterschied zwischen den Benutzern unter "Times" nur einen Eintrag für den funktionierenden Benutzer gibt.

Generelle Konfiguration




[line]
Benutzer1: Funktioniert nicht.
Benutzer2: Funktioniert
surun C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc
Benutzer1

nach Eingabe des Passworts


Benutzer2

und der Device Manager startet wie erwünscht mit Admin-Rechten

[line]
surun /runas C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc
Benutzer1

Kein "run elevated"-Kästchen und dann der Fehler


Benutzer2

Kein "run elevated"-Kästchen und der Device Manager meldet folgerichtig


[line]
Und dann noch ohne SuRun
C:\Windows\System32\mmc.exe C:\Windows\System32\devmgmt.msc
Benutzer1

Im CMD kommt die Meldung "Access is denied.", wenn ich auf "Cancel" drücke.

Benutzer2
Kommt keine SuRun-Abfrage!
Zu "Benutzer 2":
* surun devmgmt.msc funktioniert
* surun /runas /user benutzer2 devmgmt.msc funktioniert
[indent]Die Option "mit gehobenen Rechten starten" ist nicht vorhanden, weil Benutzer2 kein UAC-Admin ist und als Beschränkter SuRunner konfiguriert ist.
Windumms meldet den Schreibschutz von devmgmt.msc
...ich merke mir auf meiner ToDo-Liste, dass die /RunAs Option "Kennwort speichern" ausgeblendet wird, wenn das Benutzerkennwort immer sofort abgefragt werden soll.
[/indent]
* devmgmt.msc funktioniert
[indent]Das das von cmd aus nicht automagisch mit gehobenen Rechten von SuRun gestartet wird, kann daran liegen, dass Windows die Hooks von SuRun nicht immer und nie sofort in cmd.exe einhängt.[/indent]


Ich würde die Thematik "Benutzer 2" als geklärt betrachten wollen.

Zu "Benutzer 1":
Mich wundert, dass der MMC.EXE nicht starten kann und dass MMC.EXE, selbst wenn administrativ von SuRun gestartet, meckert, dass es schreibgeschützt ist.
* Ist Benutzer1 im Domänen-Controller anders deklariert, als Benutzer2?
* Hat Benutzer1 Software-Einschränkungen?
...ich kann nur raten.
Beide haben exakt dieselbe Policy (sind am selben Ort im Baum), Software-Einschränkungen wären mir nicht bekannt. Zu Beginn hatte ich die Tatsache im Verdacht, dass pro Policy-Update die Admin-Gruppe geleert und mit vorgegebenen Benutzern gefüllt wird. Aber SuRun schiebt ja den Benutzer nur eine ganz kurze Zeit da rein und entfernt ihn gleich wieder.

Vielleicht finde ich im Zusammenhang mit der schreibgeschützten MMC noch was.

Ich bleibe dran.

EDIT: Vergiss die Outputs von vorher. Ich hatte da noch ein paar Fehler drin. WinDbg sieht zumindest für die surun-Kommandos (ohne runas) bei beiden Benutzern gleich aus.
Ich glaube, ich bin auf etwas gestossen!

Ich habe beide Benutzer aus der SuRun-Liste gelöscht und dann beide der Administratorengruppe hinzugefügt. Bei demjenigen, bei dem es nicht funktioniert hatte, kommt die UAC. Beim anderen das hier


hmmm...
Das ist genau das, was ich meine...warum ist der kein Admin?
Ach, scheisse... Ich seh's nicht mehr. Ich muss das Ganze wohl ein wenig ruhen lassen. Vergiss das vordere Posting.

Der letzte Stand der Dinge ist der, dass der einzige Unterschied, zwischen den beiden Benutzern ist, wie sich das UAC-Fenster präsentiert.

Beim Benutzer, bei dem es nicht funktioniert, ist der Benutzername im UAC-Fenster bereits fest eingetragen. Um das gewünschte Programm als einen anderen Benutzer auszuführen, muss man auf "Use another account" auswählen. Zusätzlich ist "Insert a smart card" eingeblendet.

Beim Benutzer bei dem es funktioniert hingegen, erscheint das UAC-Fenster ohne "Use another account". Der Benutzername ist nicht "vorgedruckt" und muss eingegeben werden.
8 Tage später
Hallo Kay

Ich glaube, ich habe das Problem gefunden. Ich hatte einmal eine Domänengruppe definiert, die über die Policy der "Network Configuration Operators"-Gruppe hinzugefügt wird. Einer der Benutzer war in dieser Gruppe. Nehme ich den raus, funktioniert SuRun wieder. Könnte man das abfangen? Ich kann mir vorstellen, dass noch andere auf die Idee kommen könnten :)

Schönes Wochenende!
7 Tage später
...hat ein wenig gedauert.
Ich habe meinen eingeschränkten Benutzer in "Netzwerkkonfigurations-Operatoren" eingefügt, die VM neu gestartet und SuRun läuft problemlos.

Habe ich da was falsch verstanden?
Ist die Gruppe nicht mehr vorhanden?
Muss ich eine Gruppe anlegen und die Gruppe in "Netzwerkkonfigurations-Operatoren" packen?
Wie kann ich das nachstellen?
Impressum, Datenschutz