PsExec Access é negado

9

Estou usando psexec.exe para executar programas em um contexto de segurança diferente. No entanto, os programas são iniciados, mas não parecem estar em execução no contexto de segurança especificado.

Na sua forma mínima:

psexec -u wsadmin -p password cmd

Inicia uma nova janela cmd se eu digitar essa janela 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.

Como você pode ver, eu sou definitivamente o outro usuário. E posso confirmar que esse usuário é membro do "grupo Administradores"

C:\Windows\system32>mkdir test
Access is denied.

Se eu usar runas com o usuário especificado, isso funciona como supostamente. Mas eu preciso fornecer a senha na linha de comando.

    
por Tuim 23.01.2013 / 10:53

4 respostas

0

Eu encontrei uma solução:

Acontece que quando você tem o UAC habilitado, o psexec não funciona como deveria.
Sempre que HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA for definido como 0 psexec funcionará como esperado.

    
por 28.01.2013 / 11:05
8

No Windows Vista e posteriores, se o UAC estiver ativado, um processo iniciado por psexec - mesmo quando executado a partir de uma conta de administrador - deve ter seu token de elevação definido para obter privilégios totais. Isso pode ser feito passando o atributo -h na linha de comando psexec . Então, você mudaria seu comando para:

psexec -h -u wsadmin -p password cmd

Para mais informações, execute psexec /? :

    -h    If the target system is Vista or higher, has the process
          run with the account's elevated token, if available.
    
por 28.01.2013 / 11:12
3

Demorei horas para encontrar uma maneira de trabalhar para PsExec entre dois computadores com Windows 7 com usuários não-administradores iniciando PsExec ... Desativando o UAC ( EnableLUA=0 , ConsentPromptBehaviorAdmin=0 , LocalAccountTokenFilterPolicy=1 ) não trabalho, desligando os firewalls não funcionou ...

Aqui encontrei o caminho de trabalho - obrigado JelmerS: (Informações de PSexec não está se conectando máquina usando nome de usuário e senha fornecidos )

Isso ocorre porque psexec ainda tenta acessar o ADMIN$ share com suas credenciais locais, antes de executar seu comando como outro usuário. De acordo com este encadeamento, você pode armazenar em cache as credenciais antes de executar o 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
    
por 26.02.2014 / 15:46
0

Aqui está o que funcionou para mim, ele não se livra completamente do UAC, mas o desativa para os administradores

Configuração do Computador \ Configurações do Windows \ Configurações de Segurança \ Políticas Locais \ Opções de Segurança \ Controle de Conta de Usuário: Executar Todos os Administradores no Modo de Aprovação de Administrador - Desativado

    
por 11.01.2017 / 13:45