アップデート一覧に戻る
New releaseSep 3, 2026

lure v0.7.1

ローカルLinuxバイナリ解析ツール。クラウド不要。root不要。実行前にバイナリが何を行うかを正確に確認できます。

共有

lure

ローカルLinuxバイナリ解析。クラウド不要。root不要。コスト不要。

lure は、セキュリティ研究者、リバースエンジニア、CTFプレイヤーのためのローカルLinux ELF解析・サンドボックスツールです。バージョン 0.7.1 では、QEMUユーザーモードエミュレーションによるARM64バイナリサポートが追加されました。

Lure demo

3つの補完的なワークフローを提供します:

  • 静的解析 lure inspect — 実行せずにELFを検査します。
  • 動作解析 lure run — Linux名前空間、strace、seccomp-bpfポリシーの下でELFを実行し、読みやすいレポートを生成します。
  • レポート比較 lure diff — 保存された2つの動作レポートを比較します。

すべてローカルで処理されます。サンプルやレポートがクラウドサービスにアップロードされることはありません。

アルファソフトウェア: lureはまだ活発に開発中です。セキュリティ研究に適した環境でテストし、このサンドボックスを専用のマルウェア解析VMの代替として扱わないでください。

Lure dangerous verdict

機能概要

Lureは、静的ELF検査と動作実行解析を組み合わせます。バイナリがアクセスするもの、試みるネットワーク接続、生成するプロセス、そして実行が CLEANSUSPICIOUS、または DANGEROUS のいずれに分類されるかを表示できます。

なぜ使うのか

  • プライバシー — サンプルとレポートは自分のマシンに留まります。
  • 読みやすさ — 生のstraceノイズではなく、構造化されたレポートを提供します。
  • シンプルなワークフロー — 1つのCLIから検査、実行、保存、比較ができます。
  • 無料 — MITライセンスで、標準的なLinuxツールを基盤としています。
  • マルチアーキテクチャ — x86-64ネイティブ + QEMUユーザーモードエミュレーションによるARM64。

機能

静的ELF検査

lure inspect は以下を報告します:

  • ELFアーキテクチャとタイプ (x86-64、ARM64など)
  • エンディアン
  • ファイルサイズ
  • MD5およびSHA-256ハッシュ
  • NX
  • PIE
  • RELROステータス
  • スタックカナリアの有無
  • リンクされたライブラリ
  • --sections によるELFセクションヘッダ
  • --strings による表示可能なASCII文字列

検査対象のファイルは実行されません。

lure inspect /bin/ls
lure inspect ./arm64_binary   # ARM64 ELF — 検査にQEMUは不要

inspect

サンドボックス実行

lure run は以下を組み合わせます:

  • Linuxユーザー名前空間
  • ネットワーク名前空間
  • マウント名前空間
  • PID名前空間
  • strace システムコールトレース
  • ゲストに適用されるseccomp-bpfシステムコールポリシー
  • 最小限のサンドボックスファイルシステム
  • タイムアウト (デフォルト30秒)
  • --allow-net によるオプションのネットワークアクセス
  • オプションの生のstrace出力
  • オプションのTXT + JSONレポート
  • 利用可能な場合のベストエフォート型cgroups v2リソース制限
  • qemu-aarch64 によるARM64バイナリエミュレーション (v0.7.1+)

ネットワークアクセスはデフォルトでブロックされます。

lure run ./suspicious_binary
lure run ./arm64_binary          # ARM64: qemu-aarch64がバイナリを自動的にラップ

ARM64バイナリが検出されると、lureは:

  1. qemu-aarch64 がPATHにあるか確認します (ない場合は明確なインストールヒントとともに終了)。
  2. 実行コマンドの先頭に qemu-aarch64 を追加します — straceはQEMUチェーン全体をトレースします。
  3. 実行サマリーパネルに Architecture: ARM64 (QEMU emulated) を表示します。

レポート比較

lure diff は保存された2つの.jsonレポートを比較します:

lure run --save ./binary_v1
lure run --save ./binary_v2
lure diff ~/.lure/reports/binary_v1_*.json ~/.lure/reports/binary_v2_*.json

インストール

PyPIから

pip install lure-analyze

システム依存関係 (必須)

ツールパッケージ目的
stracesudo pacman -S straceシステムコールトレース
unshareutil-linux の一部 (プリインストール済み)名前空間分離
gcc / ccsudo pacman -S gcc実行時にseccompラッパーをコンパイル

システム依存関係 (オプション)

ツールパッケージ目的
qemu-aarch64sudo pacman -S qemu-userARM64バイナリエミュレーション

lure run でARM64 ELFバイナリを解析するには qemu-user をインストールしてください。lure inspect による静的検査は、追加ツールなしでARM64 ELFに対して機能します。

cgroups v2リソース制限 (オプション)

メモリとPID制限を有効にするには、cgroupサブツリーをユーザーに委任します:

sudo mkdir -p /sys/fs/cgroup/lure
sudo chown "$USER" /sys/fs/cgroup/lure

使用方法

lure inspect BINARY [--json] [--sections] [--strings]
lure run BINARY [--timeout SECS] [--args 'ARG ...'] [--allow-net] [--out FILE] [--save]
lure diff REPORT1 REPORT2

変更履歴

v0.7.1

  • qemu-aarch64 ユーザーモードエミュレーションによるARM64バイナリサポート
  • lure inspect がAArch64 ELFに対して ARM64 を正しく表示
  • lure run がARM64 ELFを自動検出し、qemu-aarch64 で実行をラップ
  • 実行サマリーがARM64実行に対して Architecture: ARM64 (QEMU emulated) を表示
  • qemu-aarch64 がない場合の明確なエラーとインストールヒント
  • ARM64のinspect (表示 + JSON) とrun (qemu欠落 + QEMU成功) をカバーする4つの新しいテスト

v0.6.0

  • cgroups v2リソース制限 (メモリ512 MB、最大64 PID)
  • コンパイル済みC lure-wrapperによるseccomp-bpf許可リスト
  • 最小chrootによる完全なマウント + PID名前空間分離
  • lure diff レポート比較

ライセンス

MIT — LICENSE を参照してください。

カテゴリ