Tui*_*uim 12 windows-7 runas psexec
我正在使用psexec.exe在不同的安全上下文中运行程序。然而,程序启动但它似乎没有在指定的安全上下文中运行。
以其最小形式:
psexec -u wsadmin -p password cmd
Run Code Online (Sandbox Code Playgroud)
如果我在该窗口中键入,则启动一个新的 cmd 窗口 whoami
C:\Windows\system32>whoami
win-k1r7g38nlkt\wsadmin
C:\Windows\system32>net localgroup administrators
Alias name administrators
Comment Administrators have complete and unrestricted access to the computer/domain
Members
-------------------------------------------------------------------------------
Administrator
wsadmin
The command completed successfully.
Run Code Online (Sandbox Code Playgroud)
如您所见,我绝对是另一个用户。我可以确认这个用户是“管理员组”的成员
C:\Windows\system32>mkdir test
Access is denied.
Run Code Online (Sandbox Code Playgroud)
如果我将 runas 与指定的用户一起使用,它会按预期工作。但我需要在命令行上提供密码。
nhi*_*kle 11
在 Windows Vista 及更高版本上,如果启用了 UAC,则启动的进程psexec——即使是从管理员帐户运行时——必须设置其提升令牌才能获得完全权限。这可以通过-h在psexec命令行中传递属性来完成。因此,您可以将命令更改为:
psexec -h -u wsadmin -p password cmd
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请运行psexec /?:
-h If the target system is Vista or higher, has the process
run with the account's elevated token, if available.
Run Code Online (Sandbox Code Playgroud)
小智 5
我花了时间找工作方式,以PsExec两者之间的Windows 7的计算机使用非管理员用户启动PsExec...禁用UAC( ,EnableLUA=0,ConsentPromptBehaviorAdmin=0)LocalAccountTokenFilterPolicy=1没有工作,关闭防火墙没有工作...
在这里,我找到了工作方式 - 感谢 JelmerS :(来自PSexec 的信息未使用提供的用户名和密码连接到机器)
这是因为在以其他用户身份执行命令之前,psexec仍会尝试使用ADMIN$本地凭据访问共享。根据此线程,您可以在执行 psexec 之前缓存凭据:
cmdkey.exe /add:MACHINE_NAME_HERE /user:MACHINE_NAME_HERE\Administrator /pass:PASSWORD_HERE
psexec.exe \\MACHINE_NAME_HERE -i notepad
cmdkey.exe /delete:MACHINE_NAME_HERE
Run Code Online (Sandbox Code Playgroud)
我找到了一个解决方案:
事实证明,当您启用 UAC 时,psexec 无法按预期工作。
每当HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA设置为0psexec 时都会按预期工作。
| 归档时间: |
|
| 查看次数: |
98815 次 |
| 最近记录: |