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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ltm — ltmはLinux向けのマシン履歴デバッガです。eBPFを介してプロセス、ファイル、ネットワーク、メモリ、およびブロックI/Oのメタデータを記録し、タイムラインをクエリできるようにします。 | Kitploit
ツール/GitHubGitHub/agent-hellboy/ltm
ディスクフォレンジックOSINT (オープンソースインテリジェンス)動的分析 (サンドボックス)メモリフォレンジックネットワークフォレンジックデバッガフォレンジックデジタルフォレンジックインシデントレスポンスログ分析
GitHubagent-hellboy/ltm

ltm

23171ヶ月前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

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

ltmはLinux向けのマシン履歴デバッガです。eBPFを介してプロセス、ファイル、ネットワーク、メモリ、およびブロックI/Oのメタデータを記録し、タイムラインをクエリできるようにします。

リポジトリを見る

ltm

Linux用のマシンヒストリーデバッガー。eBPFを介してプロセス、ファイル、ネットワーク、メモリ、ブロックI/Oを記録し、メタデータをSQLiteに保存し、そのマシンで何が起こったかについてのタイムライン/差分/平易な英語/SQLの質問に答えます。

⚠️ 現在はトレースポイントのみのキャプチャ — 現在の記録はトレースポイントプログラムを使用しています。まだkprobes、uprobes、XDP、TCフックは使用していません。そのため、より深いカーネル内部、ユーザースペース関数トレーシング、パケットパス検査よりも、安定したシステムコール/ブロック/プロセスメタデータを優先します。

Quick start

root@kitploit:~
go build -o bin/ltm ./cmd/ltm

sudo ./bin/ltm start                       # record (eBPF; root, Linux/x86_64)
./bin/ltm timeline --since 5m
./bin/ltm watch                            # live tail; Ctrl-C to stop
./bin/ltm diff --from 10m --to now
./bin/ltm query "who modified /etc/some.conf?"
sudo ./bin/ltm stop

記録にはroot(または CAP_BPF + CAP_PERFMON)が必要です。クエリにはrootは必要ありません。ライブLinuxレコーダーがない場合:ltm benchmark --count 1000 で合成イベントをDBにシードし、timeline、diff、query で検査できます。

グローバルフラグはサブコマンドの前に置きます(ltm --db /tmp/ltm.db status)。デフォルト:DB ~/.local/share/ltm/ltm.db、PID ~/.local/run/ltm.pid。機械可読出力を得るには、任意の読み取りコマンドに --json を追加します。

Commands

Storage and querying

1つのSQLiteデータベースで、WALライターはデーモンが保持します。すべての読み取りパスは読み取り専用で開かれます(PRAGMA query_only=ON)— クエリはライターと競合したりログを変更したりすることはありません。メタデータのみ;ファイルコンテンツは含みません。

root@kitploit:~
export LTM_AGENT=claude   # or codex, cursor, gemini, auto, or a custom command
ltm query "which process wrote to files the most today?"

エージェントSQLが表示され、その後読み取り専用接続で実行され、単一の SELECT でない場合は拒否されます。エージェントがない(またはエージェントの失敗) → 組み込みテンプレート。

What gets recorded

約60のトレースポイント:プロセス(exec、exit、fork、clone、kill)、ファイル(open/close、read/write、rename、unlink、link、symlink、mkdir、rmdir、chmod、chown、stat、access、truncate、dup、pipe、…)、メモリ(mmap、munmap、mprotect)、ネットワーク(socket、connect、bind、listen、accept、send/recv、shutdown)、ブロック(block_rq_issue)。

BPFは /proc、/sys、/dev とデーモン自身のPIDをスキップします。手書きのトレースポイントマニフェストは internal/abi/abi.yaml にあります;チェックインされたランタイムテーブルは internal/abi/tracepoints_gen.go に生成されます。collector.bpf.c を編集した後、make ebpf で再ビルドします。internal/abi/abi.yaml のABIメタデータを編集した後、make generate を実行し、カーネルイベントレイアウトまたはトレースポイントテーブルが変更された場合は make ebpf を実行します。

Limitations

  • x86_64のみの記録 — BPFは -D__TARGET_ARCH_x86 でビルドされています(#2)。クエリとベンチマーク生成のデモデータはLinux記録サポートを必要としません。
  • IPv4アドレスのみ — IPv6の接続/バインドはデコードされたアドレスなしで保存されます。
  • バイトカウント はシステムコールの要求されたサイズ(エンタープローブ)です;短い/失敗したI/Oは過剰カウントされます;readv/writev/sendmsg/recvmsg は 0 を報告します。
  • fd→path はfds ≤ 1024をカバーし、PIDの頻繁な再利用後に誤った属性になる可能性があります;より高いfdはパスなしで記録されます。

Development

root@kitploit:~
go test ./...                # local/unit tests
make generate                # regenerate ABI/schema outputs from abi.yaml
make ebpf                    # regenerate checked-in BPF object/bindings (Linux)
make integration             # real eBPF recording; Linux + root

レイアウト:cmd/ltm エントリポイント;それ以外は internal/ の下(abi、cli、daemon、collector、ebpf、storage、agent、diff、query)。

ABI/スキーマジェネレーターは、イベント定義、ストレージDDL、トレースポイントメタデータ、カーネル向け構造体を単一の情報源である internal/abi/abi.yaml に結び付けます。これは意図的にCPythonの Argument Clinic ワークフロー(ソース)と精神が似ています:新しいキャプチャイベント/モジュールサーフェスを追加するときは、マニフェストを更新してチェックインされた出力を再生成し、派生のGoまたはCファイルを手動で編集しないようにします。

ドキュメント:docs/(ABI、CLI、生成ファイル、クエリ、記録、アーキテクチャ、セキュリティ)。コントリビュータールール:AGENTS.md。

ツールをダウンロード
Command説明
start / stop / statusレコーダーを制御
timeline--pid --uid --comm --category --action --path --exe --since --until --limit でフィルタリング(繰り返し可能;--path/--exe は SQL LIKE)
watchライブテール(--interval --since --category --comm --pid)
diff --from --to2つの時点間のマシンステートの変更
query "<question>"平易な英語(テンプレート、またはエージェント → SQL)
query sql ["<SELECT>"]読み取り専用SQL;引数なしでスキーマを表示(ltm sql も動作)
prune --older-than 720h [--vacuum]古い行を削除、オプションでディスク領域を再利用
benchmark --count NN個の合成イベントを書き込み(eBPF不要)
versionビルドバージョン、コミット、プラットフォーム