Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
提出
ツールエクスプロイトブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
TransparentTorProxy — Torネットワークを介してnftablesを使用し、すべてのシステムトラフィックを透過的にルーティングするLinux CLIユーティリティです。迅速なIPローテーションと、プライバシー関連タスク向けのグローバルプロキシ設定の簡単な切り替えを可能にします。 | Kitploit
ツール/GitHubGitHub/onyks-os/transparenttorproxy
防御ツールパケットスニッフィングと分析スクリプトと自動化ネットワークセキュリティペネトレーションテストプライバシーコマンド&コントロールユーティリティとフレームワークDNS分析
GitHubonyks-os/transparenttorproxy

TransparentTorProxy

Torネットワークを介してnftablesを使用し、すべてのシステムトラフィックを透過的にルーティングするLinux CLIユーティリティです。迅速なIPローテーションと、プライバシー関連タスク向けのグローバルプロキシ設定の簡単な切り替えを可能にします。

375541日前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
リポジトリを見るウェブサイト

TTP - Transparent Tor Proxy

nftables を使用して すべてのシステムトラフィック を Tor ネットワーク経由で透過的にルーティングする Linux CLI ツール。

Sponsor Linux Python CI Status Documentation PyPI - Downloads OpenSSF Best Practices License

機能 • 要件 • インストール • 使用方法 • 仕組み • 検証 • コントリビュート


TTP Demo


アプリケーションごとの設定は不要 - sudo ttp start を実行するだけで、すべての接続 が Tor を経由します。

[!CAUTION] TTP は、トラフィックを Tor 経由でルーティングすることでプライバシーを支援するために設計されたツールです。ただし、100% の匿名性を保証できるツールは存在しません。あなたの安全は、あなたの行動 (通常のブラウザと Tor Browser のどちらを使うか、アカウントにサインインするかどうかなど) にも依存します。常に多層的なセキュリティ戦略の一部として TTP を使用してください。

[!WARNING] 内部告発者である場合、または高リスクの活動に従事している場合は、TTP を使用しないでください。 代わりに、TailsOS や Tor Browser のような、公式に監査された信頼性の高いツールを直接使用してください。TTP の作者およびコントリビューターは、あなたの安全や本ソフトウェアの使用による結果について一切の責任を負いません。

なぜ TTP なのか?

従来の透過プロキシスクリプト (TorGhost、Anonsurf) は、設定ファイルを上書きし、オープン に失敗する iptables ルールセットを構築します。つまり、壊れたときにはトラフィックが平文で流出します。TTP は逆の発想で作られており、クローズドに失敗し、ディスク上に何も残しません。

機能

  • 継続的な完全性保護 - 形式的な FSM (transitions) によって管理されるウォッチドッグが、シンボリックリンクのターゲット差し替えを検知する二重 inotify ウォッチを介して Tor、nftables チェーン、DNS オーバーレイを監視します。1 回修復し、その後は緊急キルスイッチを適用します。
  • スプリットトンネリング - ネイティブの nftables UID/GID マッチングでユーザーまたはグループを除外 (--bypass-user、--bypass-group) するか、cgroups v2 スライスを介して ttp bypass <cmd> で単一のコマンドを Tor の外で実行できます。
  • LAN を維持 - RFC 1918 およびリンクローカルサブネットは到達可能なままなので、プリンターや NAS は引き続き動作します。
  • デュアルスタック、またはスタックなし - IPv6 はループバックルーティングが利用可能な場合は Tor 経由でルーティングされ、利用できない場合は完全にドロップされます。リークする第三の選択肢はありません。
  • DoT と DoH をブロック - ポート 853 は拒否され、既知のパブリック DoH リゾルバは 443 (TCP および QUIC) で拒否され、ブラウザのカナリアドメインは torrc でポイズニングされます。
  • システムの Tor と共存 - 非標準ポートで独自の揮発性 ttp-tor.service を実行し、既存の Tor インスタンスには手を付けません。
  • ブリッジ - obfs4 と snowflake、BYOD (bring your own daemon) モード付き。

要件

  • systemd を備えた Linux
  • Python 3.10+
  • nftables (ほとんどのモダンなディストロにプリインストール済み)
  • root 権限 (ファイアウォールと DNS の変更に必要)

インストール

ニーズに最適な方法を選択してください。システムの安定性、セキュリティ、クリーンなアンインストールのために、ネイティブパッケージを強く推奨します。

1. ネイティブパッケージ (推奨)

ネイティブパッケージ経由でインストールすると、すべてのシステム依存関係 (tor、nftables) とカーネルレベルの最適化 (SELinux) が OS のパッケージマネージャーによって管理されます。

最新リリース から希望するバージョンの .deb または .rpm をダウンロードし (パッケージはリリースアセットであり、リポジトリにはチェックインされていません)、インストールします:

  • Debian / Ubuntu: sudo apt install ./transparent-tor-proxy_0.4.9_all.deb
  • Fedora / RHEL: sudo dnf install ./transparent-tor-proxy-0.4.9-1.noarch.rpm
  • Arch Linux: リポジトリから cd packaging && makepkg -si でビルド

リリースアセットの完全性と真正性を検証する方法については、リリース検証ガイド を参照してください。


2. 手動ソースインストール (開発者/汎用)

開発者である場合、またはリポジトリからインストールしたい場合:

root@kitploit:~
git clone https://github.com/onyks-os/TransparentTorProxy.git
cd TransparentTorProxy
sudo ./scripts/install.sh

[!TIP] なぜ ./install.sh を使うのか?
標準的な Python インストーラーとは異なり、このスクリプトは 「インテリジェント」 です。Red Hat ベースのシステムでは、SELinux が Enforcing モードかどうかを検出し、TTP が必要とする非標準ポート (9041、9054) に Tor をバインドできるようにカスタムポリシーモジュール (ttp_tor_policy.te から) を動的にコンパイルします。このカーネルレベルの最適化は pip では実行できません。

3. 代替インストール方法 (フォールバック)

Python 固有のパッケージマネージャー (pipx または仮想環境付きの pip) を介して TTP をインストールするには、代替インストール方法リファレンス を参照してください。

使用方法

TTP はシンプルで軽量になるように設計されています。CLI コマンド、オプション、終了コード、技術仕様の完全なリストについては、外部インターフェースリファレンス を参照してください。

クイックスタート

ネットワークを変更するほとんどのコマンドには root 権限 (sudo) が必要です:

  • プロキシを開始:

    root@kitploit:~
    sudo ttp start
    
  • プロキシを停止:

    root@kitploit:~
    sudo ttp stop
    
  • 現在のセッションステータスを確認:

    root@kitploit:~
    ttp status
    
  • Tor ルーティングとレイテンシを検証:

    root@kitploit:~
    ttp check
    
  • 新しい出口 IP を要求 (サーキットをローテート):

    root@kitploit:~
    sudo ttp refresh
    

より高度なセットアップと回避プロファイルについては、高度なセキュリティと使用プロファイルリファレンス を参照するか、外部インターフェースリファレンス を参照してください。

セッションの確認

クリックして手動検証手順を展開

トンネルが正しく機能しており、リークが存在しないことを確認するには:

  1. Tor 出口 IP を検証:

    root@kitploit:~
    curl -s https://check.torproject.org/api/ip
    
  2. DNS ルーティングを検証:

    root@kitploit:~
    # Should return a valid IP via Tor's DNSPort
    dig +short A check.torproject.org
    
  3. DNS リークテスト (ターミナル):

    root@kitploit:~
    # This TXT query SHOULD return an EMPTY output
    dig +short TXT whoami.ipv4.akahelp.net
    

    注: 空の出力は Tor 下での 期待される 動作です。Tor の透過リゾルバは TXT レコードをサポートしていません。このコマンドが実際の ISP の IP を返す場合、DNS リークがあります。

  4. Web ベースの検証: dnsleaktest.com と ipleak.net で常に追加のテストを実行してください。

完全なアンインストール

システムから TTP を完全に削除するには:

root@kitploit:~
sudo ./scripts/uninstall.sh

仕組み

TTP は、標準的な Linux カーネルサブシステム、システムユーティリティ、および Tor の制御インターフェースをオーケストレーションすることで、すべてのネットワークトラフィックを透過的にルーティングします:

root@kitploit:~
flowchart LR
    App["Application"] --> Local["Local Network"]
    Local --> DNS["systemd-resolved (Intercepted)"]
    DNS --> NFT["nftables (inet ttp table)"]
    NFT --> Tor["Tor Daemon"]
    Tor --> Internet["Internet"]
  1. アトミックなファイアウォールリダイレクション: 分離された inet ttp nftables ルールセットをアトミックに生成・ロードして TCP と DNS トラフィックを傍受し、Tor にリダイレクトすると同時に IPv6 および DoT/DoH のリークを防止します。
  2. DNS バインドマウントオーバーレイ: カーネルレベルのバインドマウントを介して /etc/resolv.conf を揮発性の RAM バックエンド設定でオーバーレイし、DNS 呼び出しが Tor によって解決されるようにします。
  3. Tor デーモン統合: ポート競合を防ぐために、非標準ポートで揮発性の systemd サービスを介して分離された Tor インスタンスを設定、実行、監視します。
  4. セッションウォッチドッグ: 設定の完全性を検証し、セキュリティ侵害またはシステム変更時にフェイルクローズドの緊急キルスイッチを実行するアクティブなバックグラウンドモニターを実行します。

実行フロー、システムフック、セキュリティ境界、モジュラーコンポーネントの詳細なウォークスルーについては、以下を参照してください:

技術アーキテクチャ & 設計ガイド

クラッシュリカバリ

TTP は、エッジケースにおいても常にネットワークを復元するように設計されています:

既知の動作と制限

[!WARNING]

  • Tor Browser: 明示的な SOCKS5 プロキシを使用するアプリケーションは、二重の Tor ホップを作成します。TTP がアクティブな間は、代わりに通常のブラウザを使用してください。
  • DNS-over-HTTPS (DoH): 通常のブラウザ (Firefox、Chrome、Brave、Edge) は DoH を使用してシステム DNS をバイパスする可能性があります。TTP は 3 層の防御で DoH を緩和します: (1) すべてのアウトバウンド TCP トラフィック (DoH を含む) が Tor TransPort にリダイレクトされます。(2) 一般的な DoH カナリアドメインが torrc で 0.0.0.0 にマッピングされます。(3) パブリック DoH IP リゾルバが TCP/UDP ポート 443 でブロックされます (HTTP/3 QUIC DoH をブロック)。最大限のセキュリティのために、ブラウザ設定で DoH / 「Secure DNS」 を無効にしてください。
  • IPv6: 利用可能な場合は完全にサポートされます。TTP は IPv6 ループバックを動的に検出し、IPv6 トラフィックを Tor 経由でルーティングします。ホストが IPv6 ループバックサポートを欠いている場合、または --no-ipv6 オプションが渡された場合、TTP はリークを防ぐためにすべてのアウトバウンド IPv6 トラフィックをドロップします。
  • 出口 IP の変動: Tor ストリーム分離により、異なる接続で異なる出口 IP が表示される場合があります。

残存リスク、アーキテクチャ上の信頼境界、STRIDE 脅威モデルの完全な内訳については、以下を参照してください:

docs/security-assessment.md

開発 & テスト

TTP は Makefile を使用してテストパイプラインを自動化および標準化しています。これにより、すべての変更がコミットされる前にユニットテストと統合テストで検証されることが保証されます。

「プッシュ前」ルール

[!IMPORTANT] コードをプッシュする前に必ず make verify を実行してください。 このコマンドが失敗した場合、コードは本番環境に対応していません。

必須コマンド

検証

TTP のゼロリークの主張は、断言ではなく測定されています。 Network Sandbox Engine は、 分離されたネットワーク名前空間を構築し、TTP の 実際の 生成されたルールセットをそこにロードし、 リークが構成するトラフィックを生成し、Scapy スニファーで境界の veth インターフェースを監視します。

すべての封じ込めテストは 2 回実行されます。 assert no leaks は、スニファーが起動しなかった場合、インターフェース名が間違っている場合、またはトラフィックがプロセスを離れなかった場合にも真になります。そのため、各テストはまずルールセットを フラッシュ した状態で同じ刺激を実行し、パケットが観測されることを要求します。その後でのみ、TTP のルールセットがそれを停止すると主張します。リークを観測できないハーネスは、テストに合格するのではなく失敗します。

対象: プレーン DNS (UDP および TCP)、通常の TCP、853 の DoT、UDP/443 の QUIC DoH、ICMP、任意の UDP、IPv6 — さらに逆方向として、バイパスされた UID が依然として LAN に到達できること。すべてをブロックするファイアウォールは最初の 7 つに合格し、8 つ目に失敗します。

root@kitploit:~
# libpcap is required: the sniffer compiles a BPF filter, and Scapy dlopen()s
# the unversioned libpcap.so that only the -devel/-dev package ships.
sudo apt install nftables iproute2 conntrack libpcap0.8 libpcap-dev   # Debian/Ubuntu
sudo dnf install nftables iproute2 conntrack libpcap libpcap-devel    # Fedora/RHEL
pip install -e ".[nse]"
make test-nse            # runs as root; TTP_REQUIRE_NSE=1 so it cannot skip itself

これは、すべてのプッシュで CI (Zero-leak ruleset verification ジョブ) で実行され、リリース前の scripts/verify.sh のステップとしても実行されます。

高度: 実世界の VM テスト

Docker 統合テストは高速でアトミックですが、カーネル/systemd のニュアンスを 100% 捉えることはできません。重要な変更については、実際の QEMU VM でテストすることを 強く推奨します:

root@kitploit:~
# Start a specific VM (e.g., arch)
./scripts/vm/start.sh arch

# Sync current code to the VM
./scripts/vm/send.sh

# Snapshot management for easy rollbacks
./scripts/vm/snapshot.sh arch save before-risky-test

診断

何か問題が発生した場合は、診断コマンドを実行してください:

root@kitploit:~
sudo ttp diagnose

プロジェクト構造

root@kitploit:~
├── pyproject.toml          # Package metadata and dependencies
├── README.md
├── CONTRIBUTING.md         # Contribution guidelines
├── SECURITY.md             # Security policy
├── scripts/                # Installation, verification, and VM management scripts
├── assets/                 # Branding and demo assets
├── packaging/              # Packaging configurations (.deb, .rpm, Arch PKGBUILD)
├── ttp/                    # Main Python source package
│   └── resources/          # Internal package resources (SELinux policies, etc.)
├── tests/                  # Unit, integration, and leak testing suites
└── docs/                   # Technical documentation, threat models, and ADRs

コントリビュート

コントリビューションは歓迎します。最も支援が重要な領域は狭く具体的です:

  1. Linux ネットワーキング - nftables、ルーティングテーブル、ネットワーク名前空間、VPN インターフェース検出。
  2. Tor の内部 - デーモン設定、Stem、ブリッジ、ブートストラップのエッジケース。
  3. CI/CD - GitHub Actions 上で特権テストスイートを高速かつ信頼性の高い状態に保つこと。

まず CONTRIBUTING.md から始めてください。このコードベースが基づいている 2 つのルールが記載されています: バグを捕捉するはずだったチェックを追加せずにバグを修正しないこと、および不在を主張するテストはまず存在を検知できることを証明しなければならないこと。

このプロジェクトは自由時間に維持されています。star は他の人が見つける助けになり、sponsorship は 継続を支えます。

ライセンス

MIT。詳細については LICENSE を参照してください。

ツールをダウンロード
構造的にフェイルクローズド分離された inet ttp nftables テーブルに、catch-all reject と転送時の policy drop を設定。クラッシュ、ウォッチドッグトリガー、または異常終了時には、トラフィックは Tor 経由でルーティングされるかブロックされるかのいずれかであり、決して解放されません。
何も永続化しないセッション状態、torrc、ロックファイル、ログは tmpfs (/run/ttp/、/run/tor/ttp/) にのみ存在します。再起動しても残留物も古いロックも残りません。
アプリケーションごとの設定が不要TCP と DNS はネットワーク層で傍受されます。SOCKS5 設定も、プロキシ環境変数も、アプリケーションのサポートも必要ありません。
システムを書き換えずに DNS を処理/etc/resolv.conf を編集するのではなく mount --bind でオーバーレイし、さらに systemd-resolved を無効化する揮発性の drop-in を追加し、非ループバックのリゾルバトラフィックをカーネルレベルでドロップします。
リークの主張は測定されているすべての封じ込めルールは、実際に生成されたルールセットに対して分離されたネットワーク名前空間でテストされ、各テストはリークが存在しないと主張する前に、まずリークを 検知できる ことを証明します。検証 を参照してください。
シナリオ何が起こるか
ttp stopゼロリーククリーンアップ: ティアダウンロックダウンを適用し、Tor を正常にシャットダウンし、アクティブソケットスローターを実行し、1.5 秒待機し、コネクショントラッキングをフラッシュし、ファイアウォールと DNS を復元し (テーブルのフラッシュと削除を介して)、ロックファイルを削除します
Ctrl+C / killシグナルハンドラーが SIGINT/SIGTERM を捕捉し、終了前に通常のクリーンアップを実行します
kill -9 / 電源断次回の ttp start が孤立したロックファイルを検出し、古いマウントスタックをクリアし、自動復元します
手動緊急時sudo ./scripts/restore-network.sh を実行して、すべての nftables ルールをフラッシュし、DNS をリセットし、ロックファイルを削除します
コマンド目的
make testローカルで高速な ユニットテスト を実行します (root 不要、完全にモック化)。
make integration-debian特権 Docker コンテナ (Debian) 内で完全なシステムテストを実行します。
make integration-allサポートされているすべてのディストロ (Debian、Fedora、Arch) の統合テストを実行します。
make verifyユニットテスト + すべての統合テストを実行します。
make buildネイティブの .deb および .rpm パッケージを生成します。
make cleanすべてのビルド成果物、キャッシュ、一時ファイルを削除します。
バグと機能リクエストGitHub Issues
セキュリティ脆弱性SECURITY.md - 公開 issue を開かないでください
バージョンサポートと EOLSUPPORT.md
リリースとパッケージGitHub Releases · PyPI