Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ebpfmon — bpftoolを使用してeBPFプログラムとマップをリアルタイムで監視・検査するためのターミナルUI。カーネルレベルの可観測性データのライブデバッグと解析を可能にします。 | Kitploit
ツール/GitHubGitHub/redcanaryco/ebpfmon
動的分析 (サンドボックス)デバッガユーティリティとフレームワーク
GitHubredcanaryco/ebpfmon

ebpfmon

bpftoolを使用してeBPFプログラムとマップをリアルタイムで監視・検査するためのターミナルUI。カーネルレベルの可観測性データのライブデバッグと解析を可能にします。

リポジトリを見る
9042年前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

Build workflow

ebpfmon

ebpfmon は eBPF プログラムを監視するためのツールです。Linux カーネルの bpftool と組み合わせて使用するように設計されています。ebpfmon は Go で書かれた TUI(ターミナル UI)アプリケーションで、eBPF プログラムのリアルタイム監視を可能にします。

インストール

eBPFmon はソースからビルドするか、リリースページ でコンパイル済みのバージョンを入手できます。

必要な依存関係

  • bpftool(パッケージマネージャからインストールするか、ソースからビルド)。ebpfmon が eBPF プログラムやマップなどの情報を取得するために使用します。
  • libelf
  • zlib

オプション(ただし強く推奨)の依存関係

  • 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

使用方法

root@kitploit:~
$ ./ebpfmon

注: bpftool は root 権限を必要とするため、ebpfmon は sudo bpftool ... を実行します。そのため、sudo パスワードの入力を求められる可能性があります。

ソースからのビルド

追加の依存関係

まず第一に、このツールは Go で書かれているため、Go をインストールし、PATH 変数に追加する必要があります。Go 1.18 以降で動作するはずですが、それ以前のバージョンでも動作する可能性はありますが、テストされていません。

次に、以下の依存関係をインストールしてください。

  • clang
  • llvm

以下のコマンドを実行するだけです。これにより、現在のディレクトリに ebpfmon バイナリがビルドされます。

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

ドキュメント

基本操作

ebpfmon のメインビューはプログラムビューです。このビューには、システム上で現在ロードされているすべての eBPF プログラムが表示されます。各ペインは選択可能で、tab キーを使用してペイン間を切り替えることができます。特定のペイン内では、矢印キーを使用してテキストのスクロールやリストの選択を上下に移動できます。プログラムやマップなどのリストでは、Enter キーを押して選択できます。プログラムを選択すると、そのプログラムに関する情報が他のペインに表示されます。マップを選択すると、そのマップのエントリを表示するマップエントリビューに切り替わります。

キーバインド

ebpfmon で使用できるキーバインドがいくつかあります。これらは F1 キーまたは ? キーを押すと表示されるヘルプページに一覧表示されています。

プログラムビュー

どのビューにいても、Ctrl + e を押すとプログラムビューにアクセスできます。

BPF フィーチャービュー

どのビューにいても、Ctrl + f を押すと BPF フィーチャービューにアクセスできます。

マップビュー

マップビューにアクセスするには、現在の eBPF プログラムのマップ(存在する場合)を選択するだけです。これにより、マップエントリがマップビューに表示されます。d キーを押すとマップエントリを削除できます。マップビューでは、マップエントリのデータをさまざまな方法でフォーマットできます。フォーマットセクションに移動するには、マップエントリリストビューで TAB キーを押します。その後、TAB キーを使用して異なるフォーマットオプション間を移動できます。マップエントリリストに戻るには ESC キーを押します。

選択したマップエントリで ENTER を押すと編集することもできます。編集ビューでは、マップキー/バリューの生のバイト値を編集できます。角括弧は無視してかまいません。

終了

アプリケーションを終了するには q または Q を押します。

戻る

通常、ESC キーを押すと、前にいたビューに戻ります。また、ヘルプビューやエラービューにいる場合も、Escape キーを押すと前のウィンドウに戻ります。

コマンドライン引数

-bpftool

bpftool バイナリへのパスを指定できます。カスタムビルドの bpftool を使用したい場合に便利です。デフォルトではシステムの bpftool バイナリを使用します。環境変数を使用することもできます。以下の順序で確認します。

  1. コマンドラインで -bpftool 引数が指定されているか確認
  2. 環境変数 BPFTOOL_PATH が設定されているか確認
  3. システムのバイナリを使用

-logfile

この引数はログファイルを指定できます。デフォルトでは ./log.txt にログを出力します。実行中に発生したエラーをログに記録するため、アプリケーションの問題をデバッグする際に確認するのに適したファイルです。

テスト

このプロジェクトにはいくつかの基本的なテストがあります。

テストを実行するには、プロジェクトのルートディレクトリから以下のコマンドを実行します。

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

独自の bpftool バイナリを使用したい場合は、BPFTOOL_PATH 環境変数に bpftool バイナリのパスを設定してください。設定しない場合は、デフォルトでシステムのものが使用されます。

eBPF に関する重要な注意事項

eBPF マップ

  • フリーズされたマップ:マップがフリーズとマークされている場合、今後のシステムコール呼び出しで map_fd のマップ状態を変更できなくなります。フリーズされたマップでも、eBPF プログラムからの書き込み操作は可能です。つまり、ebpfmon が使用する bpftool はマップエントリを変更できなくなります。これは bpftool の制限であり、ebpfmon の制限ではありません。
  • リングバッファ:bpftool は ringbuf タイプのマップをクエリしようとしてもデータを取得できない可能性があります。
ツールをダウンロード