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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
shootback — リバースTCPトンネルを使用すると、NATやファイアウォールの内側にあるターゲットにアクセスできます | Kitploit
ツール/GitHubGitHub/aploium/shootback
リバースエンジニアリングネットワークセキュリティペネトレーションテストレッドチーミング
GitHubaploium/shootback

shootback

リバースTCPトンネルを使用すると、NATやファイアウォールの内側にあるターゲットにアクセスできます

リポジトリを見る
9762334ヶ月前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

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

shootback

shootbackは、NATやファイアウォールの背後にあるターゲットにアクセスできるようにするリバースTCPトンネルです。
リバースTCPトンネルにより、NATやファイアウォール内側のマシンに外部からアクセスできます。
800同時接続時、CPU使用率1%未満、メモリ8MB未満を消費します。
slaverは単一ファイルで、Python(2.7/3.4+)標準ライブラリのみに依存します。

動作の仕組み

shootbackの動作図

典型的なシナリオ

  1. 自宅から会社/学校のコンピュータ(外部IPなし)にアクセス
    自宅から会社や学校の独立した外部IPがないコンピュータに接続
  2. プライベートネットワーク/サイトを公開
    内部ネットワークや内部サイトを外部からアクセス可能にする
  3. 内部ネットワークへの侵入を支援
    内部ネットワークのペネトレーションテストを補助
  4. CTFオフライン大会を支援
    CTFオフライン大会において、会場外の参加者にも競技ネットワーク環境を提供
  5. 動的IPを持つデバイス(ADSLなど)に接続
    動的IPを持つデバイス(ADSLなど)に接続
  6. slaverとmaster間のSSL暗号化
    slaverとmaster間のSSL暗号化をサポート

はじめに

  1. 必要条件:

    • Master: Python3.4+、OS問わず
    • Slaver: Python2.7/3.4+、OS問わず
    • 外部依存関係なし、Python標準ライブラリのみ
  2. ダウンロード: git clone https://github.com/aploium/shootback

  3. (オプション)単一ファイルのslaver.pyが必要な場合: python3 build_singlefile_slaver.py を実行

  4. 以下のコマンドを実行

    root@kitploit:~
    # master listen :10000 for slaver, :10080 for you
    python3 master.py -m 0.0.0.0:10000 -c 127.0.0.1:10080
    
    # slaver connect to master, and use example.com as tunnel target
    # ps: you can use python2 in slaver, not only py3
    python3 slaver.py -m 127.0.0.1:10000 -t example.com:80
    
    # doing request to master
    curl -v -H "host: example.com" 127.0.0.1:10080
    # -- some HTML content from example.com --
    # -- some HTML content from example.com --
    # -- some HTML content from example.com --
    
  5. より実践的な例(SSL使用):
    masterが22.33.44.55であると仮定(上の図の通り)

    root@kitploit:~
    # slaver_local_ssh <---> slaver <--[SSL]--> master(22.33.44.55) <--> You
    
    # ---- master ----
    python3 master.py -m 0.0.0.0:10000 -c 0.0.0.0:10022 --ssl
    
    # ---- slaver ----
    # ps: the `--ssl` option is for slaver-master encryption, not for SSH
    python(or python3) slaver.py -m 22.33.44.55:10000 -t 127.0.0.1:22 --ssl
    
    # ---- YOU ----
    ssh 22.33.44.55 -p 10022
    
  6. 詳細なヘルプは、 python3 master.py --help および python3 slaver.py --help を参照してください。

ヒント

  1. デーモンとして実行:
    nohup python(or python3) slaver.py -m host:port -t host:port -q &
    または:

    root@kitploit:~
    # screen is a linux command
    screen
    python(or python3) slaver.py -m host:port -t host:port
    # press  ctrl-a d  to detach screen
    # and if necessary, use "screen -r" to reattach
    
  2. TCPを使用するサービスはすべてshootbackに対応可能です。 HTTP/FTP/Proxy/SSH/VNC/...

  3. shootback自体は転送のみを行い、暗号化やプロキシ処理は行いません。
    ただし、slaverのターゲットとしてサードパーティのプロキシ(例:shadowsocks)を使用できます。
    例:
    shadowsocks_server<-->shootback_slaver<-->shootback_master<-->shadowsocks_client(socks5)

警告

  1. Windowsでは、CPythonの select.select() の制限により、shootbackは512同時接続以上を処理できません。
    ValueError: too many file descriptors in select() が発生する可能性があります。
    Windowsで高い同時接続数を処理する必要がある場合は、Anaconda-Python3 を推奨します。
    Windowsでの制限は2048です

パフォーマンス

  1. Intel I7-4710MQ、Win10 x64搭載のノートPCでの結果:
    • 1.6Gbits/sのループバック転送(iperf使用)、CPU使用率約5%。
    • 800スレッドのApacheBench、CPU使用率1%未満、メモリ消費8MB未満。
ツールをダウンロード