Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
ProcDump-for-Linux — Uma versão Linux da ferramenta ProcDump Sysinternals | Kitploit
Ferramentas/GitHubGitHub/microsoft/procdump-for-linux
Análise Dinâmica (Sandboxing)Forensia de MemóriaDepuradoresAnálise de MalwareResposta a Incidentes
GitHubmicrosoft/procdump-for-linux

ProcDump-for-Linux

Uma versão Linux da ferramenta ProcDump Sysinternals

Ver Repositório
3.1k326há 1 diaRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

ProcDump Build Status

ProcDump é uma releitura para Linux e Mac da clássica ferramenta ProcDump do conjunto Sysinternals de ferramentas para Windows. O ProcDump oferece uma maneira conveniente para desenvolvedores Linux e Mac criarem core dumps de suas aplicações com base em gatilhos de desempenho. O ProcDump para Linux e Mac faz parte do Sysinternals.

ProcDump em uso

Instalação e Uso

Requisitos

  • Sistema Linux mínimo:
    • Red Hat Enterprise Linux / CentOS 7
    • Fedora 29
    • Ubuntu 16.04 LTS
    • gdb >= 7.6.1
  • Mac OS mínimo: Sierra

Instalar o ProcDump

Consulte as instruções de instalação aqui.

Compilar

Consulte as instruções de compilação aqui.

Uso

MUDANÇA IMPORTANTE Com o lançamento do ProcDump 1.3, as opções agora estão alinhadas com a versão Windows do ProcDump. Observe que a versão Mac atualmente possui um conjunto limitado de gatilhos.

root@kitploit:~
Capture Usage:
   procdump [-n Count]
            [-s Seconds]
            [-c|-cl CPU_Usage]
            [-m|-ml Commit_Usage1[,Commit_Usage2...]]
            [-gcm [<GCGeneration>: | LOH: | POH:]Memory_Usage1[,Memory_Usage2...]]
            [-gcgen Generation]
            [-restrack [nodump]]
            [-sr Sample_Rate]
            [-tc Thread_Threshold]
            [-fc FileDescriptor_Threshold]
            [-sig Signal_Number1[,Signal_Number2...]]
            [-e]
            [-f Include_Filter,...]
            [-fx Exclude_Filter]
            [-mc Custom_Dump_Mask]
            [-pf Polling_Frequency]
            [-o]
            [-log syslog|stdout]
            {
             {{[-w] Process_Name | [-pgid] PID} [Dump_File | Dump_Folder]}
            }

Options:
   -n      Número de dumps a serem gravados antes de sair.
   -s      Segundos consecutivos antes de gravar o dump (padrão é 10).
   -c      Limite de CPU acima do qual criar um dump do processo.
   -cl     Limite de CPU abaixo do qual criar um dump do processo.
   -m      Limite(s) de commit de memória (MB) acima do(s) qual(is) criar dumps.
   -ml     Limite(s) de commit de memória (MB) abaixo do(s) qual(is) criar dumps.
   -gcm    [.NET] Limite(s) de memória GC (MB) acima do(s) qual(is) criar dumps para a geração ou heap especificada (padrão é uso total de memória .NET).
   -gcgen  [.NET] Criar dump quando a coleta de lixo da geração especificada iniciar e terminar.
   -restrack Ativa o rastreamento de vazamento de memória (família de APIs malloc). Se usado sem outros gatilhos, use 't' para capturar manualmente um relatório restrack. Quando usado com outros gatilhos, a opção 'nodump' pode ser usada para evitar a geração de dump e produzir apenas relatório(s) restrack.
   -sr     Taxa de amostragem ao usar -restrack.
   -tc     Limite de contagem de threads acima do qual criar um dump do processo.
   -fc     Limite de contagem de descritores de arquivo acima do qual criar um dump do processo.
   -sig    Lista separada por vírgulas de números de sinal durante os quais qualquer sinal resulta em um dump do processo.
   -e      [.NET] Criar dump quando o processo encontrar uma exceção.
   -f      Filtrar (incluir) no conteúdo de exceções .NET (separado por vírgulas). Caracteres curinga (*) são suportados.
   -fx     Filtrar (excluir) no conteúdo das pilhas de chamadas do -restrack. Caracteres curinga (*) são suportados.
   -mc     Máscara personalizada de core dump (em hex) indicando qual memória deve ser incluída no core dump. Consulte 'man core' (/proc/[pid]/coredump_filter) para opções disponíveis.
   -pf     Frequência de polling.
   -o      Sobrescrever arquivo de dump existente.
   -log    Grava rastreamento estendido do ProcDump no fluxo de saída especificado (syslog ou stdout).
   -w      Aguardar o processo especificado ser iniciado se não estiver em execução.
   -pgid   ID do processo refere-se a um ID de grupo de processos.

Rastreamento de Recursos

A opção -restrack ativa o rastreamento de recursos, permitindo o monitoramento e a geração de relatórios de quaisquer alocações de recursos que não tenham sido liberadas no momento da geração do core dump. Os resultados são salvos em um arquivo com extensão '.restrack'. Atualmente, as seguintes funções de alocação/desalocação de recursos são rastreadas:

Alocação:

  • malloc
  • calloc
  • realloc
  • reallocarray
  • mmap

Desalocação:

  • free
  • munmap

A versão Mac atualmente não implementa rastreamento de recursos.

Exemplos

Os exemplos a seguir têm como alvo um processo com pid == 1234

O seguinte criará um core dump imediatamente.

root@kitploit:~
sudo procdump 1234

O seguinte criará 3 core dumps com intervalo de 10 segundos.

root@kitploit:~
sudo procdump -n 3 1234

O seguinte criará 3 core dumps com intervalo de 5 segundos.

root@kitploit:~
sudo procdump -n 3 -s 5 1234

O seguinte criará um core dump cada vez que o processo tiver uso de CPU >= 65%, até 3 vezes, com pelo menos 10 segundos entre cada dump.

root@kitploit:~
sudo procdump -c 65 -n 3 1234

O seguinte criará um core dump cada vez que o processo tiver uso de CPU >= 65%, até 3 vezes, com pelo menos 5 segundos entre cada dump.

root@kitploit:~
sudo procdump -c 65 -n 3 -s 5 1234

O seguinte criará um core dump quando o uso de CPU estiver fora do intervalo [10,65].

root@kitploit:~
sudo procdump -cl 10 -c 65 1234

O seguinte criará um core dump quando o uso de CPU for >= 65% ou o uso de memória for >= 100 MB.

root@kitploit:~
sudo procdump -c 65 -m 100 1234

O seguinte criará um core dump quando o uso de memória for >= 100 MB seguido por outro dump quando o uso de memória for >= 200 MB.

root@kitploit:~
sudo procdump -m 100,200 1234

O seguinte criará um relatório de vazamento de memória (sem dumps) toda vez que o usuário pressionar 't':

root@kitploit:~
sudo procdump -restrack 1234

O seguinte criará 3 relatórios de vazamento de memória (sem dumps) com intervalo de 5 segundos:

root@kitploit:~
sudo procdump -n 3 -s 5 -restrack nodump 1234

O seguinte criará um core dump e um relatório de vazamento de memória quando o uso de memória for >= 100 MB

root@kitploit:~
sudo procdump -m 100 -restrack 1234

O seguinte criará um relatório de vazamento de memória (sem dumps) quando o uso de memória for >= 100 MB

root@kitploit:~
sudo procdump -m 100 -restrack nodump 1234

O seguinte criará um core dump e um relatório de vazamento de memória quando o uso de memória for >= 100 MB, amostrando a cada 10ª alocação de memória.

root@kitploit:~
sudo procdump -m 100 -restrack -sr 10 1234

O seguinte criará um core dump e um relatório de vazamento de memória quando o uso de memória for >= 100 MB e excluirá quaisquer pilhas de chamadas que contenham quadros com a string "cache"

root@kitploit:~
sudo procdump -m 100 -restrack -fx *cache* 1234

O seguinte criará um core dump quando o uso total de memória .NET for >= 100 MB seguido por outro dump quando o uso de memória for >= 200 MB.

root@kitploit:~
sudo procdump -gcm 100,200 1234

O seguinte criará um core dump quando o uso de memória .NET para a geração 1 for >= 1 MB seguido por outro dump quando o uso de memória for >= 2 MB.

root@kitploit:~
sudo procdump -gcm 1:1,2 1234

O seguinte criará um core dump quando o uso de memória do .NET Large Object Heap for >= 100 MB seguido por outro dump quando o uso de memória for >= 200 MB.

root@kitploit:~
sudo procdump -gcm LOH:100,200 1234

O seguinte criará um core dump no início e no final de uma coleta de lixo da geração 1 do .NET.

root@kitploit:~
sudo procdump -gcgen 1

O seguinte criará um core dump no diretório /tmp imediatamente.

root@kitploit:~
sudo procdump 1234 /tmp

O seguinte criará um core dump no diretório atual com o nome dump_0.1234. Se for usado -n, os arquivos serão nomeados dump_0.1234, dump_1.1234 e assim por diante.

root@kitploit:~
sudo procdump 1234 dump

O seguinte criará um core dump quando ocorrer um SIGSEGV.

root@kitploit:~
sudo procdump -sig 11 1234

O seguinte criará um core dump quando ocorrer um SIGSEGV, onde o core dump contém apenas mapeamentos privados anônimos.

root@kitploit:~
sudo procdump -mc 1 -sig 11 1234

O seguinte criará um core dump quando o aplicativo .NET alvo lançar uma System.InvalidOperationException

root@kitploit:~
sudo procdump -e -f System.InvalidOperationException 1234

O filtro de inclusão suporta correspondência parcial e com curingas, então o seguinte também criará um core dump para uma System.InvalidOperationException

root@kitploit:~
sudo procdump -e -f InvalidOperation 1234

ou

root@kitploit:~
sudo procdump -e -f "*Invali*Operation*" 1234

Todas as opções também podem ser usadas com -w, para esperar por qualquer processo com o nome fornecido.

O seguinte aguarda um processo chamado my_application e cria um core dump imediatamente quando encontrado.

root@kitploit:~
sudo procdump -w my_application

Limitações Atuais

  • Atualmente só é executado em kernels Linux versão 3.5+ ou macOS Sierra+.
  • Não possui paridade total de funcionalidades com a versão Windows do ProcDump, especificamente, funcionalidade de permanência ativa e contadores de desempenho personalizados

Feedback

  • Faça uma pergunta no StackOverflow (marque com ProcDumpForLinux)
  • Solicite um novo recurso no GitHub
  • Vote em solicitações de recursos populares
  • Relate um bug no GitHub Issues

Contribuição

Se você tiver interesse em corrigir problemas e contribuir diretamente com o código, consulte o documento Como Contribuir, que cobre os seguintes tópicos:

  • Como compilar e executar a partir do código-fonte
  • O fluxo de trabalho de desenvolvimento, incluindo depuração e execução de testes
  • Diretrizes de codificação
  • Envio de pull requests

Consulte também nosso Código de Conduta.

Licença

Copyright (c) Microsoft Corporation. Todos os direitos reservados.

Licenciado sob a Licença MIT.

ProcDump para Linux:

  • Clona, compila e vincula estaticamente com libbpf (https://github.com/libbpf/libbpf)
  • Copia código-fonte de resolução de símbolos do BCC (https://github.com/iovisor/bcc).
  • Usa eBPF
Baixar ferramenta