
エンドツーエンド暗号化、エージェント管理、およびコマンド送信と出力表示のための組み込みWebフロントエンドを備えたHTTPベースのコマンド&コントロールサーバー。

$\textcolor{red}{\text{このツールは倫理的な使用のみを目的としています!}}$
Mothership C2は、Pythonで書かれたコマンド&コントロールサーバーです。
以下はフロントエンドのスクリーンショットのサンプルです。内蔵ターミナルと、エージェントの作成・削除が可能です。フロントエンドを起動するには、webapp に移動して docker compose up を実行してください。
APIのドキュメントです。
すべてのクライアント側のエンドポイントには、管理者JWTが必要です。
/api/configデータベースがデフォルト以外のホストにある場合に設定を行います。
{
"host": "localhost",
"port": "6379",
"db": "0"
}
応答例:
{"response": "config updated!"}
/api/db/priv_keyコマンド応答の復号化を可能にするために、データベースの秘密鍵を取得します。
応答例:
{"response": "server private key"}
/api/connections/<agent_id>/commandエージェントにコマンドを送信します。
{
"command": "string",
"directory": ""
}
出力例:
200
/api/connections/listデータベース内のすべての接続を一覧表示します。
応答例:
{"response": ["agent1", "agent2"]}
/api/connections/<agent_id>/outputコマンドの出力を取得します。
応答例:
{"response": decrypted}
/api/connections/<agent_id>/closeエージェントとの接続を閉じます。
応答例:
{"response": "deleted agent123!"}
/api/connections/create新しいエージェントが接続するための新しいエージェントIDを作成します。
応答例:
{"response": "a52a7cca-5ca9-46ed-98c0-3ee694a97e45"}
/api/connections/<agent_id>/infoOS、公開鍵、コマンド、コマンド出力、コマンド履歴、サーバー側の公開鍵などの接続情報を取得します。
応答例:
{"response":
{
"history": "",
"OS": "linux",
"pubKey": "0x000000",
"serverKey": "0x00000"
}
}
/api/connections/registerエージェントを登録します。
{
"hashedID": "string",
"public_key": "string",
"target_os": "string"
}
/api/connections/<hashed_agent_id>/commandエージェントが実行するシェルコマンドを取得します。エージェントが受け取るコマンドは暗号化されています。エージェントのコードを参照して、どのようにコマンドを復号化するかを確認してください。
応答例:
{"response": "command"}
/api/connections/<hashed_agent_id>/outputコマンド出力を送信します。出力は暗号化され、クライアントが要求した際にAPIによって復号化されます。
{
"command_output": "string"
}