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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
mcpjam-to-root — MCPJam Inspector の RCE から root まで — CVE-2026-23744、JupyterLab のトークン開示、カーネル実行、および OPSMCP の特権昇格 | Kitploit
ツール/GitHubGitHub/itsc1sco/mcpjam-to-root
特権昇格脆弱性分析エクスプロイトウェブアプリケーション悪用ポストエクスプロイトペネトレーションテスト学習と教育APIセキュリティ
GitHubitsc1sco/mcpjam-to-root

mcpjam-to-root

MCPJam Inspector の RCE から root まで — CVE-2026-23744、JupyterLab のトークン開示、カーネル実行、および OPSMCP の特権昇格

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

人気

すべて見る →

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

すべてのツールを探索

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

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

⚠️ 免責事項

このリポジトリは、許可されたセキュリティ研究、ペネトレーションテスト、教育目的のみを意図しています。 明示的な許可なく、ここで説明する手法をシステムに対して使用しないでください。


⚡ MCPJam → Root

CVE-2026-23744 MCPJam Inspector JupyterLab Linux Privilege Escalation

MCPJam Inspector RCEからrootまで — CVE-2026-23744、JupyterLabトークン開示、カーネル実行、そしてOPSMCP権限昇格。

---

📖 概要

このリポジトリは、公開されたMCPJam Inspectorインスタンスからrootレベルのアクセスに至る、完全なLinux攻撃チェーンを文書化したものです。

このチェーンは、開発者ツール、ローカルサービス、認証情報の取り扱い、アプリケーションの認可にまたがる脆弱性を連結したものです:

root@kitploit:~
MCPJam Inspector
       │  CVE-2026-23744
       ▼
     RCE
       │
       ▼
JupyterLab Token
       │
       ▼
Jupyter Kernel
       │
       ▼
     User
       │
       ▼
  OPSMCP API
       │
       ▼
Hidden Admin Tool
       │
       ▼
Root Credential
       │
       ▼
     root

[!WARNING] このリポジトリは、許可されたセキュリティ研究、ペネトレーションテスト、教育目的のみを意図しています。本書全体にわたるターゲットアドレス、認証情報、トークン、その他の環境固有の値は、編集されるかラボ用のプレースホルダーに置き換えられています。


📑 目次

  • 🎯 攻撃経路
  • 🔎 列挙
  • 💥 CVE-2026-23744 — MCPJam Inspector RCE
  • 🕵️ 内部列挙
  • 🔐 JupyterLabトークン開示
  • 🧠 JupyterLabカーネル実行
  • 📂 OPSMCPソースコード
  • 🚨 隠れた管理機能
  • 🔑 root認証情報の開示
  • 👑 root
  • 🗺️ 完全な攻撃チェーン
  • 🧩 脆弱性サマリー
  • 🛡️ 修復策
  • 🔍 検知
  • 💡 重要なポイント
  • 📚 参考資料

🎯 攻撃経路


🔎 列挙

初期偵察は、外部に公開されたサービスを特定することに注力します。

root@kitploit:~
nmap -sC -sV -oN nmap_initial.txt TARGET

その後、完全なTCPスキャンを実行できます:

root@kitploit:~
nmap -p- --min-rate 5000 -oN nmap_full.txt TARGET

関連する外部サービス:

ポートサービス役割
22SSHリモート管理
6274MCPJam Inspector初期攻撃面

localhostのみにバインドされたサービス:

ポートサービス権限
8888JupyterLabユーザー
5000OPSMCProot

ポート6274で外部からアクセス可能なMCPJam Inspectorが、最初のエントリーポイントになります。


💥 CVE-2026-23744 — MCPJam Inspector RCE

公開されたMCPJam Inspectorインスタンスは、CVE-2026-23744の影響を受けます。

MCPJam Inspectorは、主にMCPサーバー向けの開発・テスト用インターフェースとして設計されています。この脆弱性は、このインターフェースが信頼できないネットワークに公開されると特に危険になります。脆弱な設定フローにより、攻撃者が制御するデータがコマンド実行パスに到達し得るためです。

root@kitploit:~
Remote Request
      │
      ▼
MCP Server Configuration
      │
      ▼
Command Execution
      │
      ▼
Initial Shell

この脆弱性は、MCPJam Inspectorのバージョン1.4.2以下に影響します。許可されたテストでは、公開されているPoCを使用して、ターゲット環境に対するこの脆弱性を検証できます。

悪用に成功したら、実行コンテキストを確認します:

root@kitploit:~
id
whoami
hostname

🕵️ 内部列挙

初期足場を獲得すると、ローカルサービスが見えるようになります。

root@kitploit:~
ss -tlnp
ps aux | grep -E 'jupyter|python|node'
root@kitploit:~
                    Network
                       │
                       ▼
              MCPJam Inspector
                   :6274
                       │
                       ▼
                 Initial RCE
                       │
             ┌─────────┴─────────┐
             ▼                   ▼
        JupyterLab             OPSMCP
        :8888/local            :5000/local
             │                   │
             ▼                   ▼
            User                root

2つの内部アプリケーション間の権限差は、特に興味深いものです。


🔐 JupyterLabトークン開示

JupyterLabプロセスは、認証トークンをコマンドラインに直接指定して起動されていました:

root@kitploit:~
--ServerApp.token=<JUPYTER_TOKEN>

コマンドラインは次の方法で確認できます:

root@kitploit:~
ps aux | grep jupyter
# or
cat /proc/<PID>/cmdline

これは、一般的なシークレット管理の問題を示しています:

root@kitploit:~
Secret → Command-line argument → Process metadata → Local credential disclosure

取得したトークンは、ローカルのJupyter APIへのアクセスを提供します。


🧠 JupyterLabカーネル実行

Jupyterは、カーネルを管理するためのREST APIを公開しています。取得したトークンで認証した後、次の方法でカーネルを作成できます:

root@kitploit:~
POST /api/kernels

レスポンスにはカーネルのUUIDが含まれます。JupyterカーネルはWebSocketを介して通信します:

root@kitploit:~
/api/kernels/<KERNEL_ID>/channels

Jupyterのメッセージングプロトコルは、Pythonコードを実行するためにexecute_requestメッセージを使用します:

root@kitploit:~
{
  "header": { "msg_type": "execute_request" },
  "content": { "code": "<AUTHORIZED_LAB_CODE>" }
}

これにより、JupyterサービスのIDでPythonコードが実行されます。この環境では、カーネルはユーザーとして実行されます。

root@kitploit:~
MCPJam RCE → JupyterLab → User

📂 OPSMCPソースコード

ユーザーシェルを手に入れたら、次のステップはローカルにインストールされたアプリケーションの調査です。OPSMCPアプリケーションは以下の場所にあります:

root@kitploit:~
/opt/opsmcp/

ソースコードをレビューすると、埋め込まれたAPI認証情報が明らかになります:

root@kitploit:~
VALID_API_KEY = "<REDACTED_OPSMCP_API_KEY>"

アプリケーションはまた、2つのツールコレクションを保持しています:

可視ツール

  • ops.system_status
  • ops.list_services
  • ops.check_disk
  • ops.view_logs

隠しツール

  • ops._admin_dump
  • ops._debug_mode

管理機能は、通常のツール列挙では返されないため、特に興味深いものです。

ドキュメントに記載されていないからといって、アクセスできないわけではありません。

バックエンドは依然として隠しツールを登録しており、汎用ツール実行メカニズムを介してその名前を受け入れます。


🚨 隠れた管理機能

アプリケーションは、APIキーを使用してリクエストを認証します:

root@kitploit:~
X-API-Key: <OPSMCP_API_KEY>

認証されると、ツール実行エンドポイントは、要求された関数が存在するかどうかのみをチェックし、呼び出し元がそれを実行する権限があるかどうかはチェックしません。

実際の動作:

root@kitploit:~
API Key → Authenticated → Tool exists? → Execute

あるべき動作:

root@kitploit:~
API Key → Authenticated → Permission check → Allowed → Execute
                                            └ Denied  → 403

隠れた管理機能は、rootが所有する機微なリソースにアクセスできます。


🔑 root認証情報の開示

管理ツールは、要求された情報を記述するターゲットを受け入れます。サポートされているリソースの1つが、rootのSSHキーです:

root@kitploit:~
{
  "name": "ops._admin_dump",
  "arguments": {
    "target": "ssh_keys",
    "confirm": true
  }
}

アプリケーションは、その後、rootが所有するSSH秘密鍵を読み取ります。これは、OPSMCPがrootとして実行され、/root/*を読み取れるため可能です。したがって、このアプリケーションは認証情報開示プリミティブとなります。


👑 root

許可されたラボのSSH認証情報を入手したら、制限的な権限で保存します:

root@kitploit:~
chmod 600 <ROOT_KEY>

結果として得られる認証コンテキストを確認します:

root@kitploit:~
whoami
id

最終的な権限レベル:root 🎉


🗺️ 完全な攻撃チェーン

root@kitploit:~
┌──────────────────────────────┐
│       MCPJam Inspector       │
│          TCP/6274            │
└──────────────┬───────────────┘
               │ CVE-2026-23744
               ▼
┌──────────────────────────────┐
│          Initial RCE         │
└──────────────┬───────────────┘
               ▼
┌──────────────────────────────┐
│          JupyterLab          │
│        127.0.0.1:8888        │
└──────────────┬───────────────┘
               │ Token disclosure
               ▼
┌──────────────────────────────┐
│       Jupyter Kernel         │
│        WebSocket RCE         │
└──────────────┬───────────────┘
               ▼
             User
               │ Source review
               ▼
┌──────────────────────────────┐
│           OPSMCP             │
│        127.0.0.1:5000        │
│             root             │
└──────────────┬───────────────┘
               │ API key + hidden tool
               ▼
┌──────────────────────────────┐
│    Root Credential Leak      │
└──────────────┬───────────────┘
               ▼
              root

🧩 脆弱性サマリー


🛡️ 修復策

MCPJam Inspector
  • パッチ適用済みバージョンにアップグレードする。
  • 可能な限り、Inspectorインターフェースをlocalhostにバインドしたままにする。
  • リモートデプロイでは認証を必須にする。
  • MCP設定入力を検証する。
  • 専用の低権限アカウントでサービスを実行する。
JupyterLab
  • WebインターフェースとAPIの両方を保護する。
  • カーネルのWebSocketアクセスを制限する。
  • 認証シークレットをコマンドライン引数で渡さないようにする。
  • 最小権限でJupyterを実行する。
  • 公開されたトークンをローテーションする。
OPSMCP
  • ハードコードされたAPI認証情報を削除する。
  • シークレット管理ソリューションを使用する。
  • ツールごとの認可を実装する。
  • 本番環境から隠れた管理機能を削除する。
  • API経由で秘密鍵を決して返さない。
  • 非特権アカウントでサービスを実行する。
SSH
  • 侵害されたキーをローテーションする。
  • 秘密鍵の権限を制限的に設定する。
  • rootへの直接SSHアクセスを最小化する。
  • rootの認証イベントを監視する。

🔍 検知

システム監視項目
MCPJam予期しない設定変更・不審な子プロセス・異常なリモートクライアント
JupyterLab予期しないトークン使用・予期しないカーネル作成・異常なWebSocket接続・カーネルから生成されたシェルプロセス

💡 重要なポイント

01 — 開発者ツールは攻撃面である ローカル開発用に設計されたツールは、信頼できないネットワークに公開されると、重大な脆弱性になり得ます。

02 — Jupyterトークンは強力な認証情報である Jupyterトークンへのアクセスは、単なるUIアクセス以上のものを提供し得ます。カーネルAPIにより任意のコード実行が可能になるためです。

03 — 隠れていることは安全を意味しない ドキュメントに記載されていないエンドポイントは、認可メカニズムではありません。

04 — ソースコードは侵害後に価値がある アプリケーションのソースコードは、認証メカニズム、シークレット、隠れた機能、権限の境界を即座に明らかにし得ます。

05 — 最小権限は攻撃チェーンを断ち切ることができる OPSMCPが非特権のサービスアカウントで実行されていたなら、最終的な影響は大幅に軽減されていたでしょう。


📚 参考資料

  • CVE-2026-23744 — MCPJam Inspectorのリモートコード実行
  • JupyterLabドキュメント — カーネルとAPIのアーキテクチャ
  • OWASP — 最小権限
  • OWASP — シークレット管理

⚠️ 免責事項

このリポジトリは、許可されたセキュリティ研究、ペネトレーションテスト、教育目的のみを意図しています。 明示的な許可なく、ここで説明する手法をシステムに対して使用しないでください。


⚡ MCPJam → RCE → Jupyter → User → OPSMCP → root ⚡

ツールをダウンロード
ステップ段階
1MCPJam Inspectorがネットワーク上に露出
2CVE-2026-23744の悪用
3初期RCEの達成
4JupyterLabトークンの開示
5Jupyterカーネル実行
6ユーザーレベルのシェル
7OPSMCPソースコードのレビュー
8ハードコードされたAPI認証情報の発見
9隠れた管理機能の悪用
10root認証情報の開示
11root
#脆弱性影響
1公開されたMCPJam Inspectorリモート攻撃面
2CVE-2026-23744初期RCE
3プロセス引数内のトークン認証情報の開示
4Jupyterカーネルへのアクセスユーザーレベルのコード実行
5読み取り可能なアプリケーションソース認証情報の発見
6ハードコードされたOPSMCP APIキーAPI認証のバイパス
7隠れた管理機能特権操作
8rootとして実行されるOPSMCPシステム全体の完全な侵害
OPSMCPドキュメントに記載されていないツール呼び出し・認証情報関連のリクエスト・予期しないAPIクライアント・管理操作
SSH予期しないrootログイン・新しいSSHキー・異常な認証ソース