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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
mcpsafetywarden — MCPサーバーをラップするプロキシサーバーで、行動プロファイリング、セキュリティスキャン、リスクゲーティング、安全な実行を提供します。プロンプトインジェクション、悪意のあるツールメタデータ、引数インジェクション、ソースコードリスク、認証情報の露出を検出します。 | Kitploit
ツール/GitHubGitHub/gautamvarmadatla/mcpsafetywarden
静的分析脆弱性スキャナーシークレット検出脅威インテリジェンスサプライチェーンセキュリティAIセキュリティ
GitHubgautamvarmadatla/mcpsafetywarden

mcpsafetywarden

MCPサーバーをラップするプロキシサーバーで、行動プロファイリング、セキュリティスキャン、リスクゲーティング、安全な実行を提供します。プロンプトインジェクション、悪意のあるツールメタデータ、引数インジェクション、ソースコードリスク、認証情報の露出を検出します。

リポジトリを見る
918日前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

MCP Safety Warden

MCP Safety Wardenは、任意のMCPサーバーをラップし、動作プロファイリング、セキュリティスキャン、リスクゲーティング、安全な実行をそのツールに追加するプロキシサーバーです。

PyPI Python PyPI Downloads License CI CodeQL MCP Registry Docker Pulls OpenSSF Scorecard OpenSSF Best Practices GitHub Stars

目次

  • 概要
  • 前提条件
  • インストール
  • 設定
  • MCP連携
  • CLIリファレンス
  • 補助的セキュリティツール連携
  • 開発
  • テスト
  • さらに読む

[!IMPORTANT] MCPセキュリティは活発な研究分野です。最近の調査では、ツールポイズニング、プロンプトインジェクション、ラグプル攻撃、サプライチェーン侵害、資格情報の流出、サーバーライフサイクル全体にわたる構成攻撃など、多くのプロトコル固有の脅威カテゴリがカタログ化されています。詳細はSecuring the MCP (OpenReview)、Landscape & Threats (arXiv)、When MCP Servers Attack (arXiv)、MCP-38 Taxonomy (arXiv)を参照してください。

概要

任意のMCPサーバーにセーフティゲートを追加するプロキシとして使用するか、所有していないサーバーを指定してツールコールを一切行わずに完全なセキュリティ監査を実行できます。

2つの動作モード
図1. 2つの動作モード:プロキシと監査

動作プロファイリング:エフェクトクラス、リトライ安全性、破壊性。LLM支援型(Anthropic、OpenAI、Gemini、Ollama)で、ルールベースのフォールバックあり。プロキシ呼び出しごとに観測統計(レイテンシp50/p95、障害率、出力サイズ)を更新。

セキュリティスキャン:mcpsafety+ 5段階パイプライン(Recon、Planner、Hacker、Auditor、Supervisor)。Cisco AI Defense(AST/YARA)。Snyk(メタデータ分析)。KaliおよびBurp Suite連携により、実際のネットワークデータとHTTP層プローブでパイプラインを強化。GitHubからのソースコードスキャン(エントロピー、AST、テイントフロー、ラグプル検出)。

mcpsafety+5段階パイプライン
図2. mcpsafety+5段階パイプライン。任意のMCPサーバーで完全なセキュリティ監査を実行すると起動します。

安全な実行:引数スキャン(20以上の攻撃カテゴリ、LLMによる二次パス)。2層の出力インジェクションスキャン。リスクゲーティング(代替案とツールごとのポリシー)。呼び出しごとのドリフト検出とスタンドアロンチェック。

安全実行パイプライン
図3. 安全実行パイプライン:プロキシされるすべてのツール呼び出しが通過する5つのチェック

CLI:24のサブコマンド、対話型リスクメニュー、すべてのコマンドに--jsonフラグ、CI用の--yes。

検出内容

  • プロンプトインジェクション:エージェントを乗っ取ろうとするツール出力:ロールハイジャック、ジェイルブレイク、偽のシステムプロンプト、命令の上書き。Unicode類似文字、ゼロ幅文字、Base64エンコードペイロードなど11種類の難読化手法を検出。
  • 悪意のあるツールメタデータ:インジェクション文字列を含む説明、ハードコードされた秘密情報、不審なダウンロードURL、ツールのなりすまし(シャドウイング)、直接的な金融実行、システムサービス変更、信頼できない外部依存関係。19のSnykチェックでバックアップ。
  • 引数インジェクション:ツール呼び出しの転送前に毎回チェックされる20以上の攻撃カテゴリ:クラウドメタデータエンドポイント(AWS、GCP、Azure、Alibaba)へのSSRF、パストラバーサル、資格情報ファイルへのアクセス(.aws、.ssh、.kube、.env)、コマンドインジェクション、SQL/NoSQL/LDAP/XPathインジェクション、XXE、テンプレートインジェクション(SSTI)、CRLF、nullバイト、デシリアライゼーションペイロード(Java、Python pickle、PHP、.NET)、Windows UNC/ADS攻撃、および上記すべてのBase64難読化バリアント。
  • ソースコードのリスク:サーバーのGitHubソースを取得し、6つの分析レイヤーを実行:ハードコードされた秘密情報のエントロピースキャン、ASTテイントフロー追跡(パラメータから危険なシンクへ)、説明と実装の不一致、BanditおよびSemgrep SAST、LLMによる関数間推論。PythonとTypeScript/JavaScriptをサポート。
  • ラグプルとドリフト:初回スキャン時にサーバーソースのSHA-256ハッシュを保存し、変更があれば警告。説明のすり替え、スキーマ変更、ツール削除を呼び出しごとにドリフトガードで検出。
  • 動作異常:すべてのツールをエフェクトクラス、破壊性、7つのリスクタグ(資格情報露出、任意実行、データ流出、ファイルシステムアクセス、ラテラルムーブメント、特権昇格、プロンプトインジェクション表面)で分類。
  • 構成攻撃:ツールセットの連鎖リスクを分析:IDOR連鎖、読み取り/書き込みペア、認証フロー悪用、書き込み後実行シーケンス、複数ツールにわたるデータ蓄積+流出パス。
  • ネットワークとホストのリスク:Kali Linux MCPが登録されている場合:nmapによるオープンポート、実行中のサービス、OSフィンガープリント。Burp Suite MCPが登録されている場合:HTTP層のアクティブプロービングとアウトオブバンドコールバックによるブラインドSSRF。
  • 出力への資格情報露出:保存前にツール応答から秘密情報を削除。インジェクションがフラグされた応答は隔離され、呼び出しエージェントに返されず、フォレンジックレビューのために実行IDで保存。
  • CVE研究とArxivの知見:mcpsafety+のAuditorステージで、発見された機能を既知の脆弱性や最新のセキュリティ研究とクロスリファレンス。

前提条件

  • Python 3.10以降
  • プロキシ対象のラップされたMCPサーバーが少なくとも1つ(stdio、SSE、streamable_http)
  • 推奨:LLM APIキー(Anthropic、OpenAI、Gemini)

キーがない場合、ラッパーはルールベースのみのモードで動作します:ツール分類の信頼度低下、正規表現のみのインジェクションスキャン、リスクゲートに代替案なし、mcpsafety+パイプラインなし。完全にローカルなセットアップを行うには、Ollamaを実行し、OLLAMA_MODELを設定し、--provider ollamaを明示的に指定してください(Ollamaは自動検出されません)。

[!NOTE] ローカルセットアップが必要なstdioサーバー(設定ファイル、資格情報、データディレクトリ、OS固有の依存関係が不足しているために起動前にローカル設定が必要なstdioサーバー)はラッパーで検査できません。ツール検出に失敗し、0個のツールが保存されます。サーバーを起動せずに完全なソースコードセキュリティスキャンを実行するには、scan / onboardに--github-urlを、またはsecurity_scan_serverにgithub_urlパラメータを渡してください。mcpsafety+パイプラインはGitHubから直接ソースを取得して分析します。sseおよびstreamable_httpサーバーは影響を受けません。

インストール

root@kitploit:~
pip install mcpsafetywarden

すべてのオプションエクストラを含める場合:

root@kitploit:~
pip install "mcpsafetywarden[all]"

または特定のエクストラのみ:

root@kitploit:~
pip install "mcpsafetywarden[anthropic,snyk]"

ソースから:

root@kitploit:~
git clone https://github.com/gautamvarmadatla/mcpsafetywarden
cd mcpsafetywarden
pip install .

SQLiteデータベースは初回実行時にプラットフォームのユーザーデータディレクトリ(Linuxでは~/.local/share/mcpsafetywarden/、macOSでは~/Library/Application Support/mcpsafetywarden/、Windowsでは%APPDATA%\mcpsafetywarden\)に自動的に作成されます。MCP_DB_PATHで上書き可能。

資格情報保護(自動、操作不要)

register_serverやonboard_serverに渡される秘密の値(Bearerトークン、headersまたはenv内のAPIキー)は、モデルコンテキストに触れる前に自動的に検出され、不透明なcref_識別子に置き換えられます。実際の資格情報はデータベースに暗号化されて保存され、接続時に自動的に解決されます。モデル、会話履歴、ログにはcref_<id>のみが表示されます。

オプション:保存資格情報の保存時暗号化

root@kitploit:~
pip install cryptography
python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())"

サーバー起動前に表示されたキーをMCP_DB_ENCRYPTION_KEYとして設定します。これにより、サーバー資格情報とcref_値の両方が保存時に暗号化されます。

設定

すべての設定は環境変数を介して行います。

セキュリティ注意: APIキーや暗号化キーをリポジトリにコミットしないでください。ラッパーはstdioサーバーを起動する前に、子プロセス環境から自身の秘密情報を削除します。

MCP連携

Claude Desktopとの接続

claude_desktop_config.jsonにラッパーを追加します:

root@kitploit:~
{
  "mcpServers": {
    "mcpsafetywarden": {
      "command": "mcpsafetywarden-server",
      "args": [],
      "env": {
        "ANTHROPIC_API_KEY": "sk-ant-...",
        "MCP_DB_ENCRYPTION_KEY": "<生成したFernetキー>"
      }
    },
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/yourname/Documents"]
    }
  }
}

使用前に各サーバーをラッパーに登録します:

root@kitploit:~
mcpsafetywarden register filesystem --transport stdio \
  --command npx \
  --args '["-y", "@modelcontextprotocol/server-filesystem", "/Users/yourname/Documents"]'

すべてのツールコールがラッパーを通過する必須ゲートウェイ設定については、docs/DEPLOYMENT.mdを参照してください。

利用可能なMCPツール

完全なツールリファレンスはdocs/TOOLS.mdを参照してください。

CLIリファレンス

25のMCPツールすべてをカバーする24のサブコマンド。すべてのコマンドが機械可読出力用の--jsonと確認プロンプトをスキップする--yes / -yをサポートしています。

完全なリファレンス(フラグと例を含む)はdocs/CLI.mdを参照してください。

補助的セキュリティツール連携

Kali Linux MCP、Burp Suite MCP、Snykは、登録されると自動的に統合されます。KaliはReconステージとping_serverに実際のnmap/tracerouteデータを追加します。Burpは生のHTTPプロービング、アウトオブバンドコールバック、プロキシ証拠を追加します。Snykはツールメタデータを分析して、インジェクション文字列、ツールのシャドウイング、ハードコードされた秘密情報、その他16のチェックを実行します。

セットアップ手順についてはdocs/INTEGRATIONS.mdを参照してください。

開発

編集可能モードでインストール:

root@kitploit:~
pip install -e ".[all]"

サーバーを起動してログを確認:

root@kitploit:~
mcpsafetywarden-server 2>server.log

すべてのモジュールはlogging.getLogger(__name__)を使用します。サーバー自体はlogging.basicConfigを呼び出しません。ロギングはエントリポイントでインポートする前に設定してください。

テスト

root@kitploit:~
pytest tests/ -v

LLM支援テストを含めるにはLLM APIキーを設定してください。設定しない場合、それらのテストは自動的にスキップされます。分類、インジェクションスキャン、リスクゲーティング、ポリシー適用のステップごとの検証についてはdocs/TESTING.mdを参照してください。

さらに読む

コントリビューション

コード標準とプルリクエストガイドラインについてはCONTRIBUTING.mdを参照してください。

ライセンス

Apache License 2.0。詳細はLICENSEを参照してください。

ツールをダウンロード
変数デフォルト目的
MCP_TRANSPORTstdioトランスポートモード:stdio、sse、streamable_http
MCP_HOST127.0.0.1HTTPトランスポートのバインドアドレス
MCP_PORT8000HTTPトランスポートのバインドポート
MCP_AUTH_TOKEN(未設定)HTTPトランスポート認証用のBearerトークン
MCP_DB_ENCRYPTION_KEY(未設定)保存資格情報を暗号化するFernetキー
ANTHROPIC_API_KEY(未設定)LLMプロバイダーとしてAnthropicを有効化
OPENAI_API_KEY(未設定)LLMプロバイダーとしてOpenAIを有効化
GEMINI_API_KEY または GOOGLE_API_KEY(未設定)LLMプロバイダーとしてGeminiを有効化(GEMINI_API_KEY推奨)
OLLAMA_MODEL(未設定)Ollamaのモデル名(例:llama3.1)
OLLAMA_BASE_URLhttp://localhost:11434/v1Ollama APIのベースURL
SNYK_TOKEN(未設定)Snyk E001プロンプトインジェクション検出を有効化
MCP_SCANNER_API_KEY(未設定)Cisco AI DefenseクラウドMLエンジンキー
MCP_SCANNER_LLM_API_KEY(未設定)Cisco内部AST分析用のLLMキー
MCP_DB_PATH(未設定)SQLiteデータベースファイルのパスを上書き
MCP_GRAPH_POLICYwarnsafe_tool_callにおけるグラフ強制:off(無効)、warn(応答にリスクコンテキストを添付)、block(approved=Trueでない限り、クリティカル/高ブラスト半径のツールをハードブロック)
GITHUB_TOKEN(未設定)ソースコードスキャン用のGitHubパーソナルアクセストークン(レート制限を60から5,000リクエスト/時間に引き上げ)
ツール機能
onboard_server登録+検査+セキュリティスキャンを1回の呼び出しで実行
register_serverサーバーを登録;オプションで自動検査
inspect_serverツールリストとプロファイルを更新
check_server_drift保存されたベースラインに対するスキーマとツールリストのドリフトを検出
list_servers登録済みの全サーバーを一覧表示
list_server_toolsサーバーのツールをサマリープロファイルとともに一覧表示
preflight_tool_call実行せずにリスク評価
safe_tool_callリスクゲーティングと代替案付きで実行
get_tool_profile観測統計を含む完全な動作プロファイル
get_retry_policyリトライとタイムアウトの推奨事項
suggest_safer_alternativeLLMがランク付けしたより安全な代替案
run_replay_testべき等性テスト(ツールを2回呼び出し)
security_scan_serverライブセキュリティ監査(mcpsafety+、Cisco、Snyk)
scan_all_servers登録済み全サーバーに対してmcpsafety+パイプラインを実行
get_security_scan最新の保存済みスキャンレポートを取得
set_tool_policyツールに対する永続的な許可/ブロックポリシーを設定
get_run_historyツールの最近の実行履歴
ping_serverレイテンシ付きの到達可能性チェック
discover_serversファイルシステムをスキャンしてMCPクライアント設定を見つけ、サーバーエントリを抽出
onboard_discovered_servers検出されたサーバーを一括登録
get_risk_graphインベントリリスクグラフ(サーバー、ツール、検出結果、エージェントクライアント)の構築またはクエリ
explain_tool_riskツールのリスクパスを説明:ブラスト半径、構成リスク、MITREタグ、推奨アクション
explain_client_risk1つのエージェントクライアント下の全サーバーにわたるクロスサーバーリスクを分析
analyze_cve_blast_radius同じクライアント下の複数サーバーに影響するCVEを報告
export_graphリスクグラフをJSONまたはMermaid図としてエクスポート
ドキュメント内容
docs/TOOLS.md25のMCPツールすべての完全リファレンス
docs/CLI.mdCLIサブコマンド、フラグ、例
docs/INTEGRATIONS.mdKali、Burp Suite、Snykのセットアップ
docs/DEPLOYMENT.mdstdio、HTTP、コンテナ、ゲートウェイデプロイ
docs/TROUBLESHOOTING.md一般的なエラーと修正
docs/SECURITY.md秘密情報、認証、分離、スキャンの詳細
docs/TESTING.md各機能の検証手順
docs/COMPARISON.md関連ツールとの比較
docs/ROADMAP.md計画中の機能