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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-5029-Exploit | Kitploit
ツール/GitHubGitHub/0x00phantom-hat/cve-2026-5029-exploit
脆弱性スキャナーコード分析エクスプロイトウェブセキュリティペネトレーションテスト学習と教育
GitHub0x00phantom-hat/cve-2026-5029-exploit

CVE-2026-5029-Exploit

リポジトリを見る
1ヶ月前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

🔥 CVE-2026-5029 — Code Runner MCP Server RCE(リモートコード実行)

run-code MCPツールを介した未認証リモートコード実行

CVE CVSS Python Status License

CVE-2026-5029の概念実証(PoC)エクスプロイト — --transport httpでサーバーを実行した際にrun-code MCPツールを介してトリガーされる、Code Runner MCP Serverの重大な未認証リモートコード実行(RCE)脆弱性。


📋 脆弱性の概要

プロパティ詳細
CVE IDCVE-2026-5029
CVSSスコア8.7 / 10 — 高
CWECWE-306 — 重要な機能に対する認証の欠如
影響を受ける製品Code Runner MCP Server
影響を受けるバージョン(未パッチ)--transport httpを介してrun-codeツールを公開しているすべてのバージョン
認証不要(未認証)
パッチ状況未修正
発見者Phantom Hat

🧠 技術的説明

Code Runner MCP Serverは、--transport httpフラグ付きで起動すると、ポート3088にJSON-RPC /mcpエンドポイントを公開します。このエンドポイントには認証なしで到達できます — APIキーもセッショントークンもオリジンチェックもありません。

このポートに到達できる未認証のリモート攻撃者は、run-code MCPツールを直接呼び出すことができます。このツールは任意のソースコードと言語識別子を受け取り、一時ファイルに書き込んで、対応するインタプリタ(bash、python、powershell、その他30以上)を使用してchild_process.exec()で実行します。

どの段階でもcodeパラメータにサニタイゼーションが適用されないため、MCPサーバーを実行しているプロセスの権限で**完全な未認証リモートコード実行(RCE)**が発生します。

ケーススタディ

https://medium.com/@phantom_hat/cve-2026-5029-unpatched-case-study-unauthenticated-remote-code-execution-rce-66c7706f2320

攻撃フロー

root@kitploit:~
┌──────────┐   JSON-RPC tools/call    ┌───────────────────────┐   exec()   ┌──────────┐
│ Attacker │ ──── run-code tool ─────▶│  /mcp  (port 3088)    │ ─────────▶ │   RCE    │
│          │    (no auth needed)      │  Code Runner MCP      │            │  on Host │
└──────────┘                          └───────────────────────┘            └──────────┘
  1. 偵察 — 公開された/mcpエンドポイントに接続し、利用可能なMCPツールを列挙する
  2. スキーマの発見 — run-codeツールの入力スキーマ(code、languageId)を取得する
  3. エクスプロイトの送信 — 攻撃者が制御するcodeを含む細工済みtools/call JSON-RPCリクエストを送信する
  4. コマンド実行 — サーバーはcodeを一時ファイルに書き込み、選択されたインタプリタで実行する

🗂️ リポジトリ構造

root@kitploit:~
.
├── exploit.py           # 🎯 Interactive RCE exploit shell (Rich-based terminal UI)
└── README.md            # 📖 You are here

exploit.py — 対話型エクスプロイト

主要なエクスプロイトスクリプトであり、セキュリティ評価やケーススタディでのプロフェッショナルな使用を目的に構築されています。ターゲットのMCPサーバーに接続し、対話型シェルにドロップします。このシェルでは、任意のコマンドが脆弱なrun-codeツールを通じてライブで実行されます。

主な機能:

  • Richによるクリーンで構造化されたターミナル出力
  • 対話型エクスプロイトシェル — コマンドを入力して出力を取得、スクリプトを再実行することなくやり取りできます
  • 言語の列挙 — MCPサーバーがサポートを宣伝しているすべての言語を一覧表示
  • インストール済み言語のプロービング — ターゲットホストに実際に存在するインタプリタを確認
  • -lによる実行言語の選択(デフォルトはshellscript)
  • 詳細な運用出力のための冗長モード

⚙️ インストール

前提条件

  • Python 3.8+
  • pipパッケージマネージャ

セットアップ

root@kitploit:~
# Clone the repository
git clone https://github.com/0x00phantom-hat/CVE-2026-5029-Exploit.git
cd CVE-2026-5029-RCE-Exploit

# Install dependencies
pip install fastmcp rich

🚀 使用方法

root@kitploit:~
# Drop into an interactive RCE shell (default: shellscript)
python3 exploit.py -u http://TARGET:3088/mcp

# Use a specific language interpreter
python3 exploit.py -u http://TARGET:3088/mcp -l python

# List all languages the MCP server advertises support for
python3 exploit.py -u http://TARGET:3088/mcp --available

# Probe which language runtimes are actually installed on the target
python3 exploit.py -u http://TARGET:3088/mcp --installed -v

# Show the help menu
python3 exploit.py -h

接続すると、エクスプロイトは対話型プロンプトに切り替わります:

root@kitploit:~
PhantomHat-MCP@Exploit-CVE-2026-5029 $ id

exitと入力するとセッションを終了します。

コマンドラインオプション


📸 エクスプロイトのフェーズ


🔗 参考情報

  • NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-5029
  • CERT.PLアドバイザリ: https://cert.pl/en/posts/2026/05/CVE-2026-5029
  • 脆弱なプロジェクト: https://github.com/formulahendry/mcp-server-code-runner
  • 脆弱なシンク(server.ts): https://github.com/formulahendry/mcp-server-code-runner/blob/main/src/server.ts

🛡️ 対策

  • ネットワーク到達可能なインターフェースで--transport httpを実行しない — デフォルトのstdioトランスポートを使用する
  • HTTPトランスポートが必要な場合は、厳密に127.0.0.1にバインドし、認証付きリバースプロキシまたはVPNの背後に配置する
  • ホストまたはネットワークレベルでポート3088をファイアウォールで遮断する
  • サーバーを低権限のサンドボックス化されたユーザーとして実行する、または厳重にロックダウンされたコンテナ内で実行する
  • 予期しないrun-codeの呼び出しや異常な子プロセスを監視する

⚠️ 免責事項

このツールは、許可されたセキュリティテストおよび教育目的のみで提供されます。

コンピュータシステムへの不正アクセスは、Computer Fraud and Abuse Act(CFAA)、Computer Misuse Act、および世界各国の同様の法律を含む法律の下で違法です。作者は、本ソフトウェアの誤用について一切の責任を負いません。

このツールは、あなたが所有するシステム、またはテストについて明示的な書面による許可を得たシステムに対してのみ使用してください。


作者: Phantom Hat

許可されたペネトレーションテストおよびセキュリティ研究のみを目的としています。

ツールをダウンロード
フラグ説明デフォルト
-u, --url(必須) MCPサーバーのURL—
-l, --languageコード実行に使用する言語shellscript
-a, --availableサポートされているすべての言語を一覧表示フラグ
-i, --installedターゲット上のインストール済み言語ランタイムをプローブフラグ
-v, --verbose冗長出力モードフラグ
-h, --helpヘルプメニューを表示—
フェーズ名前説明
1🔍 列挙/mcpに接続し、利用可能なMCPツールを列挙する
2🧪 スキーマの発見run-codeの入力スキーマ(code、languageId)を確認する
3💣 エクスプロイトの送信攻撃者が制御するcodeを含む細工済みtools/callリクエストを送信する
4🚀 対話型実行ライブシェルにドロップ — すべてのコマンドがターゲットホスト上で実行される