Como posso obter um histórico dos processos em execução [duplicado]

16

Preciso obter um histórico de quais processos foram executados na minha máquina Windows e quando foram executados. No entanto, não posso usar nenhum software de terceiros, pois não posso garantir que ele esteja sempre em execução.

Existe alguma maneira de obter essas informações apenas usando a funcionalidade interna do Windows?

zzy
fonte

Respostas:

21

Certo. Você pode usar o log de eventos interno do Windows (supondo que você não esteja em uma edição barata que não a possui).

  1. Pressione Win+ Re digite gpedit.msc para abrir o gerenciador de políticas de grupo
  2. No painel esquerdo, navegue até

    Diretiva do Computador Local \ Configuração do Computador \ Configurações do Windows \ Configurações de Segurança \ Diretivas Locais \ Diretiva de Auditoria

  3. No painel direito, clique duas vezes em "Audit process tracking" e marque as duas caixas

A partir de agora, todas as criações e exclusões de processos (e tentativas com falha no mesmo) aparecerão no log de segurança.

Para visualizá-los, execute o Visualizador de Eventos. (Pressione a tecla Windows e comece a digitar "Visualizador de Eventos".) No painel esquerdo, expanda a subárvore "Logs do Windows" e clique em "Segurança". Todos os eventos de segurança serão exibidos.

No painel direito, você pode configurar um filtro para procurar IDs de eventos como 4688 ou 4689 ou qualquer outro critério suportado.

Você pode considerar não ativar o registro de falhas, já que está procurando "o que foi executado e quando" e se a criação de um processo falhou, nada foi executado ... mas isso é com você.

Você também não está limitado a apenas ler o log de eventos na tela. As "Tarefas agendadas" do Windows podem ser acionadas por entradas do log de eventos que correspondem aos critérios especificados por você. Você também pode ler o log de eventos com um script do PowerShell (ou, é claro, com um programa comum) e fazer as coisas com base no que encontrar.

Nota: A resposta de David Postill fornece mais detalhes sobre alguns códigos de eventos, etc. Não ignore!

Jamie Hanrahan
fonte
E se eu não puder ter o "gpedit.msc"?
desenvolvedor android
Você está na edição Home?
Jamie Hanrahan
Sim. Estou na edição de casa. Existe talvez um aplicativo para fazer isso?
desenvolvedor Android
1
Encontrei isso, que fornece um script .bat para download. Não parece nada prejudicial. Você precisará executá-lo em um prompt de comando elevado. (ou seja, execute cmd.exe como administrador) Há alguns relatos de sucesso e outros de falha ... boa sorte. itechtics.com/…
Jamie Hanrahan
Uau. Não sabia que isso é possível. Obrigado. Funcionou
desenvolvedor android
12

Como posso obter um histórico dos processos em execução

Por padrão, não existe esse histórico e ele não é registrado em nenhum lugar.

No entanto, você pode habilitar os eventos de rastreamento de processo no log de eventos de segurança do Windows.

Isso fornecerá as informações necessárias.

Notas:


Como usar eventos de rastreamento de processo no log de segurança do Windows

No Windows 2003 / XP, você obtém esses eventos simplesmente ativando a política de auditoria Process Tracking.

No Windows 7/2008 +, é necessário ativar as subcategorias de processo de auditoria e, opcionalmente, as subcategorias de processo de auditoria, encontradas em Configuração avançada da diretiva de auditoria nos objetos de diretiva de grupo.

Esses eventos são incrivelmente valiosos porque fornecem uma trilha de auditoria abrangente sempre que qualquer executável no sistema é iniciado como um processo. Você pode até determinar por quanto tempo o processo foi executado, vinculando o evento de criação do processo ao evento de encerramento do processo usando o ID do processo encontrado nos dois eventos. Exemplos de ambos os eventos são mostrados abaixo.

insira a descrição da imagem aqui

Origem Como usar eventos de rastreamento de processo no log de segurança do Windows


Como habilitar a criação do processo de auditoria

  1. Execute gpedit.msc

  2. Selecione "Configurações do Windows"> "Configurações de segurança"> "Políticas locais"> "Política de auditoria"

    insira a descrição da imagem aqui

  3. Clique com o botão direito do mouse em "Rastrear processo de auditoria" e selecione "Propriedades"

  4. Marque "Sucesso" e clique em "OK"

    insira a descrição da imagem aqui


O que é o acompanhamento do processo de auditoria

Essa configuração de segurança determina se o sistema operacional audita eventos relacionados ao processo, como criação, término, manipulação de duplicação e acesso indireto a objetos.

Se essa configuração de política for definida, o administrador poderá especificar se deve auditar apenas sucessos, apenas falhas, sucessos e falhas ou não auditar esses eventos (por exemplo, nem sucessos nem falhas).

Se a auditoria de sucesso estiver ativada, uma entrada de auditoria será gerada toda vez que o sistema operacional executar uma dessas atividades relacionadas ao processo.

Se a auditoria de falhas estiver ativada, uma entrada de auditoria será gerada sempre que o SO falhar ao executar uma dessas atividades.

Padrão: sem auditoria

Importante: Para obter mais controle sobre as políticas de auditoria, use as configurações no nó Configuração avançada da política de auditoria. Para obter mais informações sobre a Configuração avançada da diretiva de auditoria, consulte http://go.microsoft.com/fwlink/?LinkId=140969 .


Leitura adicional

DavidPostill
fonte
David, por que você repassou partes de sua própria resposta , em vez de fechar a pergunta como uma duplicata?
Dmitry Grigoryev
1
@DmitryGrigoryev Na verdade, eu estava reposicionando partes de Como identificar o processo encerrado do Windows, se ainda tenho seu PID? que não é uma duplicata desta pergunta. I assinalaram este como um joguete;)
DavidPostill