Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
ebpfmon — Interfaz de usuario de terminal para monitoreo e inspección en tiempo real de programas y mapas eBPF usando bpftool, permitiendo la depuración y análisis en vivo de datos de observabilidad a nivel de kernel. | Kitploit
Herramientas/GitHubGitHub/redcanaryco/ebpfmon
Análisis Dinámico (Sandboxing)DepuradoresUtilidades y Frameworks
GitHubredcanaryco/ebpfmon

ebpfmon

Interfaz de usuario de terminal para monitoreo e inspección en tiempo real de programas y mapas eBPF usando bpftool, permitiendo la depuración y análisis en vivo de datos de observabilidad a nivel de kernel.

Ver Repositorio
9046hace 3 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Build workflow

ebpfmon

ebpfmon es una herramienta para monitorear programas eBPF. Está diseñada para usarse con bpftool del kernel de Linux. ebpfmon es una aplicación TUI (interfaz de usuario de terminal) escrita en Go que permite realizar monitoreo en tiempo real de programas eBPF.

Instalación

eBPFmon se puede compilar desde el código fuente o hay una versión compilada disponible en los lanzamientos

Dependencias necesarias

  • bpftool (instalado desde un gestor de paquetes o compilado desde el código fuente). Esto es lo que ebpfmon utiliza para obtener información sobre programas eBPF, mapas, etc.
  • libelf
  • zlib

Dependencias opcionales (pero 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 necesita privilegios de root, por lo que ebpfmon ejecutará sudo bpftool .... Esto significa que probablemente se le pedirá que ingrese su contraseña de sudo.

Compilación desde el código fuente

Dependencias adicionales

Antes que nada, esta herramienta está escrita en Go, por lo que deberá tenerlo instalado y en su variable PATH. Debería funcionar en Go 1.18 o posterior, aunque es posible que funcione en versiones anteriores. Simplemente no ha sido probado.

A continuación, asegúrese de instalar las siguientes dependencias.

  • clang
  • llvm

Simplemente ejecute los siguientes comandos. Esto compilará el binario ebpfmon en el directorio actual.

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

Documentación

Navegación básica

La vista principal de ebpfmon es la vista de programas. Esta vista muestra todos los programas eBPF que están actualmente cargados en el sistema. Cada panel es seleccionable y puede cambiar entre paneles usando la tecla tab. En un panel dado puede usar las teclas de flecha para desplazar el texto o la selección de la lista hacia arriba y abajo. Para listas como las de programas o mapas, puede presionar Enter para seleccionar. Seleccionar un programa poblará los otros paneles con información sobre ese programa. Seleccionar un mapa cambiará a una vista de entradas de mapa que muestra las entradas para ese mapa.

Atajos de teclado

Hay algunos atajos de teclado disponibles en ebpfmon. Estos se enumeran en la página de ayuda a la que se puede acceder presionando la tecla F1 o la tecla ?.

Vista de programas

Para acceder a la vista de programas, independientemente de la vista en la que se encuentre, puede presionar Ctrl y e.

Vista de características BPF

Para acceder a la vista de características BPF, independientemente de la vista en la que se encuentre, puede presionar Ctrl y f.

Vistas de mapas

Para acceder a la vista de mapa, simplemente seleccione un mapa (si existe) para el programa eBPF actual. Esto poblará la vista de mapa con las entradas del mapa. Puede eliminar entradas de mapa presionando la tecla d. En la vista de mapa puede formatear los datos de las entradas de mapa de varias formas. Para llegar a la sección de formato, simplemente presione TAB mientras está en la vista de lista de entradas de mapa. Luego puede usar TAB para moverse entre las diferentes opciones de formato. Para volver a la lista de entradas de mapa, presione ESC.

También puede editar las entradas de mapa presionando ENTER en una selección. En la vista de edición puede editar los valores de bytes sin procesar de la clave/valor del mapa. Puede ignorar los corchetes.

Salir

Para salir de la aplicación puede presionar q o Q.

Volver atrás

Generalmente, la tecla ESC debería llevarlo de vuelta a la vista anterior en la que se encontraba. Además, si está en la vista de ayuda o en la vista de error, presionar escape debería devolverlo a la ventana anterior.

Argumentos de línea de comandos

-bpftool

Le permite especificar la ruta al binario de bpftool. Esto es útil si tiene una compilación personalizada de bpftool que desea utilizar. Por defecto, utilizará el binario de bpftool del sistema. También puede usar una variable de entorno. Buscará en el siguiente orden:

  1. Verificar si se especificó el argumento -bpftool en la línea de comandos.
  2. Verificar si la variable de entorno BPFTOOL_PATH está configurada.
  3. Usar el binario del sistema.

-logfile

Este argumento le permite especificar un archivo para registrar. Por defecto, registrará en ./log.txt. Este es un buen archivo para revisar al intentar depurar problemas con la aplicación, ya que registrará los errores que ocurran durante la ejecución.

Pruebas

Hay algunas pruebas básicas asociadas con este proyecto.

Para ejecutar las pruebas, simplemente ejecute el siguiente comando desde el directorio raíz del proyecto:

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

Si desea usar su propio binario de bpftool, puede configurar la variable de entorno BPFTOOL_PATH en la ruta de su binario de bpftool. Si no, se usará el del sistema de forma predeterminada.

Notas importantes sobre eBPF

Mapas eBPF

  • Frozen Maps: Si un mapa está marcado como congelado (frozen), significa que ninguna invocación futura de syscall puede alterar el estado del mapa de map_fd. Las operaciones de escritura desde programas eBPF aún son posibles para un mapa congelado. Esto significa que bpftool (que es lo que usa ebpfmon) no podrá modificar las entradas del mapa. Esto es una limitación de bpftool, no de ebpfmon.
  • Ring buffers: Es probable que bpftool no obtenga datos al intentar consultar un mapa de tipo ringbuf.
Descargar herramienta