Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
ebpfmon — Terminal-Benutzeroberfläche für Echtzeit-Überwachung und Inspektion von eBPF-Programmen und -Maps mit bpftool, die Live-Debugging und Analyse von Kernel-Level-Observability-Daten ermöglicht. | Kitploit
Tools/GitHubGitHub/redcanaryco/ebpfmon
Dynamische Analyse (Sandboxing)DebuggerDienstprogramme & Frameworks
GitHubredcanaryco/ebpfmon

ebpfmon

Terminal-Benutzeroberfläche für Echtzeit-Überwachung und Inspektion von eBPF-Programmen und -Maps mit bpftool, die Live-Debugging und Analyse von Kernel-Level-Observability-Daten ermöglicht.

Repository anzeigen
904vor 2 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Build workflow

ebpfmon

ebpfmon ist ein Werkzeug zur Überwachung von eBPF-Programmen. Es wurde für die Verwendung mit bpftool aus dem Linux-Kernel entwickelt. ebpfmon ist eine TUI-Anwendung (Terminal-UI), die in Go geschrieben ist und eine Echtzeit-Überwachung von eBPF-Programmen ermöglicht.

Installation

eBPFmon kann aus dem Quellcode erstellt werden, oder es gibt eine kompilierte Version in den Releases

Erforderliche Abhängigkeiten

  • bpftool (über einen Paketmanager installiert oder aus dem Quellcode erstellt). Dies wird von ebpfmon verwendet, um Informationen über eBPF-Programme, Maps usw. zu erhalten.
  • libelf
  • zlib

Optionale (aber sehr empfohlene) Abhängigkeiten

  • 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

Verwendung

root@kitploit:~
$ ./ebpfmon

HINWEIS: bpftool benötigt Root-Rechte, daher führt ebpfmon sudo bpftool ... aus. Das bedeutet, dass Sie wahrscheinlich aufgefordert werden, Ihr sudo-Passwort einzugeben.

Aus dem Quellcode erstellen

Zusätzliche Abhängigkeiten

Zunächst einmal ist dieses Werkzeug in Go geschrieben, daher müssen Sie Go installiert und in Ihrer PATH-Variable haben. Es sollte mit Go 1.18 oder neuer funktionieren, es könnte aber auch mit älteren Versionen funktionieren. Es wurde nur nicht getestet.

Stellen Sie als Nächstes sicher, dass die folgenden Abhängigkeiten installiert sind:

  • clang
  • llvm

Führen Sie einfach die folgenden Befehle aus. Dies erstellt die ebpfmon-Binärdatei im aktuellen Verzeichnis.

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

Dokumentation

Grundlegende Navigation

Die Hauptansicht von ebpfmon ist die Programm-Ansicht. Diese Ansicht zeigt alle eBPF-Programme an, die derzeit auf dem System geladen sind. Jeder Bereich ist auswählbar, und Sie können zwischen den Bereichen mit der Tab-Taste wechseln. In einem bestimmten Bereich können Sie mit den Pfeiltasten den Text scrollen oder die Listenauswahl nach oben und unten bewegen. Bei Listen wie Programmen oder Maps können Sie durch Drücken der Eingabetaste eine Auswahl treffen. Durch die Auswahl eines Programms werden die anderen Bereiche mit Informationen über dieses Programm gefüllt. Durch die Auswahl einer Map wird zur Map-Eintragsansicht gewechselt, die die Einträge für diese Map anzeigt.

Tastaturkürzel

In ebpfmon sind einige Tastaturkürzel verfügbar. Diese sind auf der Hilfeseite aufgeführt, die Sie durch Drücken der F1-Taste oder der ?-Taste erreichen können.

Programm-Ansicht

Um zur Programm-Ansicht zu gelangen, egal in welcher Ansicht Sie sich befinden, drücken Sie Strg und e.

Bpf-Feature-Ansicht

Um zur Bpf-Feature-Ansicht zu gelangen, egal in welcher Ansicht Sie sich befinden, drücken Sie Strg und f.

Map-Ansichten

Um zur Map-Ansicht zu gelangen, wählen Sie einfach eine Map (falls vorhanden) für das aktuelle eBPF-Programm aus. Dadurch wird die Map-Ansicht mit den Map-Einträgen gefüllt. Sie können Map-Einträge durch Drücken der d-Taste löschen. In der Map-Ansicht können Sie die Map-Eintragsdaten auf verschiedene Weise formatieren. Um zum Formatierungsbereich zu gelangen, drücken Sie einfach Tab, während Sie sich in der Map-Eintragslistenansicht befinden. Sie können dann mit Tab zwischen den verschiedenen Formatierungsoptionen wechseln. Um zur Map-Eintragsliste zurückzukehren, drücken Sie ESC.

Sie können Map-Einträge auch bearbeiten, indem Sie bei einer Auswahl die Eingabetaste drücken. In der Bearbeitungsansicht können Sie die rohen Byte-Werte des Map-Schlüssels/-Werts bearbeiten. Die eckigen Klammern können Sie ignorieren.

Beenden

Um die Anwendung zu beenden, drücken Sie q oder Q.

Zurückgehen

Im Allgemeinen sollten Sie mit der ESC-Taste zur vorherigen Ansicht zurückkehren. Wenn Sie sich in der Hilfe- oder Fehleransicht befinden, sollten Sie durch Drücken von Escape zum vorherigen Fenster zurückkehren.

Befehlszeilenargumente

-bpftool

Ermöglicht es Ihnen, den Pfad zur bpftool-Binärdatei anzugeben. Dies ist nützlich, wenn Sie eine benutzerdefinierte Version von bpftool verwenden möchten. Standardmäßig wird die systemeigene bpftool-Binärdatei verwendet. Sie können auch eine Umgebungsvariable verwenden. Die Reihenfolge der Prüfung ist:

  1. Prüft, ob das Argument -bpftool in der Befehlszeile angegeben wurde.
  2. Prüft, ob die Umgebungsvariable BPFTOOL_PATH gesetzt ist.
  3. Verwendet die systemeigene Binärdatei.

-logfile

Dieses Argument ermöglicht es Ihnen, eine Datei für die Protokollierung anzugeben. Standardmäßig wird in ./log.txt protokolliert. Dies ist eine gute Datei, um beim Debuggen von Problemen mit der Anwendung zu überprüfen, da sie Fehler protokolliert, die während der Laufzeit aufgetreten sind.

Tests

Es gibt einige grundlegende Tests für dieses Projekt.

Um die Tests auszuführen, führen Sie einfach den folgenden Befehl aus dem Stammverzeichnis des Projekts aus:

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

Wenn Sie Ihre eigene bpftool-Binärdatei verwenden möchten, können Sie die Umgebungsvariable BPFTOOL_PATH auf den Pfad Ihrer bpftool-Binärdatei setzen. Andernfalls wird standardmäßig die systemeigene Binärdatei verwendet.

Wichtige Hinweise zu eBPF

eBPF-Maps

  • Gefrorene Maps: Wenn eine Map als "gefroren" markiert ist, bedeutet dies, dass keine zukünftigen Syscall-Aufrufe den Map-Status von map_fd ändern können. Schreiboperationen von eBPF-Programmen sind für eine gefrorene Map weiterhin möglich. Das bedeutet, dass bpftool (das von ebpfmon verwendet wird) die Map-Einträge nicht ändern kann. Dies ist eine Einschränkung von bpftool, nicht von ebpfmon.
  • Ringpuffer: bpftool wird wahrscheinlich keine Daten erhalten, wenn versucht wird, eine Map vom Typ Ringbuffer abzufragen.
Tool herunterladen