PSEXEC

Execução Remota

Esta ferramenta da linha de comando é muito útil para as tarefas rápidas e transparentes. Rápido porque você conecta á uma máquina remota, executa o comando, e volta á sua máquina em segundos (depende da conexão). Transparente porque quem está no outro lado não senti a execução dos comandos ou os arquivos que estão sendo copiados( depende do tamanho do arquivo que você vai copiar e executar, e o hardware do micro remoto).

Um usuário avançado pode estar executando um bom antivírus como Kaspersky que adverte o usuário que há um programa de acesso remoto tentando executar.  É possível executar o comando tasklist /v e visualizar os tasks e os processos do todos os usuários

Para quem não gosta de linha de comando, ta na hora de começar gostar. Vamos falar sobre um ambiente de Domínio. A ferramenta pode ser abusada para fazer ataques contra computadores remotos, mais esse não é o nosso assunto aqui.

Ambiente : dois computadores no mesmo domínio.

Requisitos: autorização em forma de usuário e senha no computador remoto(o mais fácil é Administrador ou Administrator) ou uma conta de domínio com o acesso apropriado, por exemplo um membro do grupo Domain Admins.

Por enquanto vamos falar sobre os membros do grupo domain admins quem tem acesso total em todas as maquinas do domínio:

Linha de comando remota

psexec \\10.10.10.10 cmd

este vai executar o comando cmd no computador remoto com IP 10.10.10.10 usando os credenciais do computador local (neste exemplo um dos administradores do domínio).  Ao executar esse comando o sistema irá verificar se temos autorização no computador remoto, se o serviço RPC está funcionando no remoto e também se o compartilhamento admin$ existe no remoto.

Ao conectar no sistema remoto,  a pasta remota do linha de comando é c:\windows\system32. Para sair do prompt remoto basta digitar exit.

Copiar um arquivo local para executá-lo no remoto

Este recurso é muito útil para administradores de sistemas. Usamos esse recurso para copiar e executar um arquivo remotamente.  O arquivo tem que estar na pasta onde o executável (programa) psexec está.

psexec -c kk.exe \\10.10.10.10


este comando irá copiar o programa kk.exe (Kido Killer-que remove o vírus conficker) e executa lo no computador remoto.

psexec -c kk.exe \\10.10.10.10,10.10.10.11,10.10.10.12 -a -y

neste exemplo executaremos o comando em três computadores remotos na ordem que está na lista. os switches -a -y pertencem ao KK.exe e são digitados no fim do comando.

Usando um usuário específico

psexec \\10.10.10.10 -u administrador cmd

bom aqui não estamos mais usando as credenciais locais más estamos usando uma conta que já existe no micro remoto. A senha será exigida na execução do comando. Podemos acrescentar;

psexec \\10.10.10.10 -u administrador -p master cmd

aqui estamos mandando o comando com a nossa senha remota descriptografada (texto normal). Este e totalmente não recomendado, e se estiver alguem com um sniffer na linha, ela irá capturar a nossa senha.

Outros Exemplos úteis

psexec \\10.1.1.10 ipconfig /all

Bom para saber as configurações alem do endereço do IP (já sabemos nê :) ), outras opções também funcionam como

psexec \\10.1.1.10 ipconfig /flushdns

psexec \\10.1.1.10 ipconfig /registerdns

Matar um processo remotamente. Usamos o comando tasklist para ver o ID do processo e depois o taskill para matar aquilo processo.

psexec \\10.1.1.10 tasklist.exe  /svc            e em seguida

psexec \\10.1.1.10 taskkill /pid IDdoProcesso

psexec \\10.1.1.10 taskkill /f /pid IDdoProcesso (caso o processo necessita ser forçada para terminar)

O profissional de TI Guilherme Alves Stela deixou uma comentário sobre listar e matar processos usando pslist e pskill – que são ferramentas da Sysinternals também

para listar os processos em tempo real:

pslist -s \\10.1.1.10

para matar um processo:

pskill \\10.1.1.10 nomeDoProcesso

para matar processo forçadamente:

pskill -f \\10.1.1.10 nomeDoProcesso

Obrigado pela dica Guilherme.

——-última edição 21/12/2011——–

8 Respostas para PSEXEC

  1. John disse:

    gostaria de saber como faço pra instalar o flashplayer em todas as maquinas do dominio. o flashplyer está no meu pendrive.
    utilizo qual comando pra executar e como os nomes dentro da lista devem estar? apenas o nome da maquina ja serve ou tem que ser acompanhado do “\\”

    • tekniblog disse:

      @John
      seria bem mais fácil criar uma GPO no OU onde você vai instalar o Flashplayer. Se tivesse instalando no domínio inteiro (será que os servidores precisam dele também?) você aplica a regra GPO no domínio, Default Domain Policy.
      Para Isso voce vai precisar do pacote da instalação (MSI) do flashplayer, disponível no site da adobe. Na regra\computer configuration\software settings. Ai crie uma nova regra e escolhe assign que instalará o flashplayer automaticamente.
      —editado
      Adicionei uma página explicando como fazer essa GPO.

  2. Pingback: PSEXEC « Tekni Blog

  3. Pingback: SysInternals Suite « Tekni Blog

  4. Luis Rosa disse:

    Saberia dizer se essa ferramenta funciona em redes diferentes e apontando para um IP externo de host? Não posso utilizar o IP interno por ser uma máquina web …

  5. Guilherme Alves Stela disse:

    para listar os processos em tempo real:

    pslist -s \\10.1.1.10

    para matar um processo:

    pskill \\10.1.1.10 nomeDoProcesso

    para matar processo forçadamente:

    pskill -f \\10.1.1.10 nomeDoProcesso

    1 milhão de vezes mais fácil… –’

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

WordPress.com Logo

Você está comentando usando sua conta WordPress.com. Sair / Mudar )

Imagem do Twitter

Você está comentando usando sua conta Twitter. Sair / Mudar )

Foto do Facebook

Você está comentando usando sua conta Facebook. Sair / Mudar )

Conectando a %s

%d bloggers like this: