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
ebpfmon — Interface de terminal para monitoramento e inspeção em tempo real de programas e mapas eBPF usando bpftool, permitindo depuração ao vivo e análise de dados de observabilidade em nível de kernel. | Kitploit
Ferramentas/GitHubGitHub/redcanaryco/ebpfmon
Análise Dinâmica (Sandboxing)DepuradoresUtilitários e Frameworks
GitHubredcanaryco/ebpfmon

ebpfmon

Interface de terminal para monitoramento e inspeção em tempo real de programas e mapas eBPF usando bpftool, permitindo depuração ao vivo e análise de dados de observabilidade em nível de kernel.

Ver Repositório
904há 2 anosRevisado 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

Build workflow

ebpfmon

ebpfmon é uma ferramenta para monitorar programas eBPF. Ela foi projetada para ser usada com bpftool do kernel Linux. ebpfmon é uma aplicação TUI (interface de terminal) escrita em Go que permite monitoramento em tempo real de programas eBPF.

Instalação

eBPFmon pode ser compilado a partir do código fonte ou existe uma versão compilada disponível nos lançamentos

Dependências necessárias

  • bpftool (instalado a partir de um gerenciador de pacotes ou compilado a partir do código fonte). É o que o ebpfmon usa para obter informações sobre programas eBPF, mapas, etc
  • libelf
  • zlib

Dependências opcionais (mas altamente recomendadas)

  • libcap-devel
  • libbfd

Ubuntu 20.04+

root@kitploit:~
$ sudo apt install linux-tools-`uname -r` libelf-dev zlib1g-dev libcap-dev binutils-dev

Amazon Linux 2

root@kitploit:~
$ sudo yum install bpftool elfutils-libelf-devel libcap-devel binutils-devel

Rhel, CentOS, Fedora

root@kitploit:~
$ sudo dnf install elfutils-libelf-devel libcap-devel zlib-devel binutils-devel bpftool

Debian 11

root@kitploit:~
$ sudo apt install bpftool libelf-dev zlib1g-dev libcap-dev binutils-dev

Uso

root@kitploit:~
$ ./ebpfmon

NOTA: bpftool precisa de privilégios de root e, portanto, o ebpfmon executará sudo bpftool .... Isso significa que você provavelmente será solicitado a digitar sua senha de sudo.

Compilando a partir do código fonte

Dependências adicionais

Primeiramente, esta ferramenta é escrita em Go, então você precisará tê-lo instalado e na sua variável PATH. Deve funcionar no Go 1.18 ou superior, embora seja possível que funcione em versões anteriores. Apenas não foi testado.

Em seguida, certifique-se de instalar as seguintes dependências.

  • clang
  • llvm

Simplesmente execute os seguintes comandos. Isso irá compilar o binário ebpfmon no diretório atual

root@kitploit:~
$ git clone https://github.com/redcanaryco/ebpfmon.git
$ cd ebpfmon
$ make

Documentação

Navegação básica

A visualização principal do ebpfmon é a visualização de programas. Esta visualização mostra todos os programas eBPF que estão atualmente carregados no sistema. Cada painel é selecionável e você pode alternar entre os painéis usando a tecla tab. Em um determinado painel, você pode usar as teclas de seta para rolar o texto ou a seleção da lista para cima e para baixo. Para listas como programas ou mapas, você pode pressionar Enter para selecionar. Selecionar um programa preencherá os outros painéis com informações sobre esse programa. Selecionar um mapa alternará para uma visualização de entrada de mapa que mostra as entradas desse mapa.

Atalhos de teclado

Existem alguns atalhos de teclado disponíveis no ebpfmon. Eles estão listados na página de ajuda, que pode ser acessada pressionando a tecla F1 ou a tecla ?

Visualização de Programas

Para acessar a visualização de programas, independentemente de qual visualização você esteja, pressione Ctrl e e.

Visualização de recursos BPF

Para acessar a visualização de recursos BPF, independentemente de qual visualização você esteja, pressione Ctrl e f.

Visualizações de mapas

Para acessar a visualização de mapas, basta selecionar um mapa (se existir) para o programa eBPF atual. Isso preencherá a visualização de mapas com as entradas do mapa. Você pode excluir entradas do mapa pressionando a tecla d. Na visualização de mapas, você pode formatar os dados da entrada do mapa de várias maneiras. Para ir para a seção de formato, pressione TAB enquanto estiver na visualização da lista de entradas do mapa. Em seguida, você pode usar TAB para navegar entre as diferentes opções de formato. Para voltar à lista de entradas do mapa, pressione ESC

Você também pode editar entradas do mapa pressionando ENTER em uma seleção. Na visualização de edição, você pode editar os valores brutos de bytes da chave/valor do mapa. Você pode ignorar os colchetes.

Sair

Para sair da aplicação, pressione q ou Q

Voltar

Geralmente, a tecla ESC deve levá-lo de volta à visualização anterior em que você estava. Além disso, se você estiver na visualização de ajuda ou de erro, pressionar Escape deve retorná-lo à janela anterior.

Argumentos de linha de comando

-bpftool

Permite especificar o caminho para o binário do bpftool. Isso é útil se você tiver uma versão personalizada do bpftool que deseja usar. Por padrão, ele usará o binário do bpftool do sistema. Você também pode usar uma variável de ambiente. Ele pesquisará na seguinte ordem

  1. Verificar se o argumento -bpftool foi especificado na linha de comando
  2. Verificar se a variável de ambiente BPFTOOL_PATH está definida.
  3. Usar o binário do sistema

-logfile

Este argumento permite especificar um arquivo para registrar logs. Por padrão, ele registrará em ./log.txt. Este é um ótimo arquivo para verificar ao tentar depurar problemas com a aplicação, pois registrará erros que ocorreram durante a execução.

Testes

Existem alguns testes básicos associados a este projeto.

Para executar os testes, basta executar o seguinte comando a partir do diretório raiz do projeto

root@kitploit:~
$ go test ./...

Se você quiser usar seu próprio binário do bpftool, pode definir a variável de ambiente BPFTOOL_PATH para o caminho do seu binário do bpftool. Caso contrário, ele usará o do sistema por padrão.

Notas importantes sobre eBPF

Mapas eBPF

  • Mapas congelados: Se um mapa está marcado como congelado, isso significa que nenhuma invocação futura de syscall pode alterar o estado do mapa de map_fd. Operações de escrita de programas eBPF ainda são possíveis para um mapa congelado. Isso significa que o bpftool (que é o que é usado pelo ebpfmon) não será capaz de alterar as entradas do mapa. Esta é uma limitação do bpftool e não do ebpfmon.
  • Ring buffers: provavelmente o bpftool não obterá nenhum dado ao tentar consultar um mapa do tipo ringbuf
Baixar ferramenta