
Fridaベースのトレーサーで、Android、iOS、Linux、Windows、および関連するほとんどのアーキテクチャ上でのリバースエンジニアリングを容易にします。
Frida と拡張版 Tenet を組み合わせることで、Frinet は大規模プログラムの調査、脆弱性研究、そして iOS、Android、Linux、Windows、およびほとんどのアーキテクチャにおける根本原因分析を容易にします。Synacktiv ウェブサイトのブログ記事
このバージョンは synacktiv/frinet の完全な書き直しです(元々は gaasedelen/tenet のフォークでした)。
旧バージョンは legacy ブランチ にあります。
このプロジェクトは SSTIC 2026 で発表されました(フランス語):ビデオ/スライド/ペーパー。
新しいアーキテクチャは4つのコンポーネントに基づいています:
Indexer : トレースファイルから最適化されたインデックスを生成する Rust CLI。Backend : 最適化されたインデックスファイルを照会するための専用アルゴリズムを実装した Rust クレート。Backend (Python bindings) : Python インターフェースを公開する Rust クレート。IDA Plugin : バックエンドからデータを照会し、IDA インターフェースに統合する薄い Python コードのレイヤー。Frida ベースのトレーサー: Frinet のレガシーバージョンと同一です。
Indexer / Backend:
crates/db。フロントエンド:
# Build the Python bindings shared lib
apt install python3-dev
cargo build --release
cp target/release/libfrinet_db.so frontend/frinet_db.so
# Symlink (or copy) the IDA Plugin
ln -s $PWD/frontend ~/.idapro/plugins/frinet
# 1. Trace /bin/ls with frida
python tracer/trace.py spawn /bin/ls ls 0x4c00
# 2. Build an optimised index of the trace
cargo run --bin frinet --release -- index --format tenet tracer/traces/ls_xxxx.tenet ls.db
# 3. Open the trace in IDA (File > Load File > Open Frinet DB...)
cargo test
cargo install cargo-fuzz
cargo +nightly fuzz run --fuzz-dir crates/fuzz register_indexing
cargo install cargo-criterion
BENCH_DB=my.db cargo criterion