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
权限提升漏洞分析漏洞利用Web应用程序漏洞利用后渗透利用渗透测试学习与教育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 权限提升。

---

📖 概述

本仓库记录了一条完整的 Linux 攻击链,从暴露的 MCPJam Inspector 实例一直到 root 级访问权限。

该攻击链串联了开发者工具、本地服务、凭据处理和应用授权方面的多个弱点:

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

该漏洞影响 1.4.2 及以下版本的 MCPJam Inspector。在授权测试中,可以使用公开的概念验证(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

这两个内部应用之间的权限差异尤其值得关注。


🔐 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 消息协议使用 execute_request 消息来运行 Python 代码:

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

这将在 Jupyter 服务的身份下建立 Python 执行环境——在本环境中,内核以**用户(User)**身份执行。

root@kitploit:~
MCPJam RCE → JupyterLab → User

📂 OPSMCP 源代码

获得用户级 Shell 后,下一步是检查本地安装的应用。OPSMCP 应用位于:

root@kitploit:~
/opt/opsmcp/

审查源代码后发现了一个嵌入的 API 凭据:

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

该应用还维护着两个工具集合:

可见工具

  • 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 凭据泄露

管理工具接受一个描述所请求信息的目标参数。支持的一种资源是 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 连接 · 由内核产生的 Shell 进程

💡 关键要点

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 暴露于网络
2利用 CVE-2026-23744
3获得初始 RCE
4JupyterLab 令牌泄露
5Jupyter 内核执行
6用户级 Shell
7OPSMCP 源代码审计
8发现硬编码 API 凭据
9滥用隐藏的管理功能
10Root 凭据泄露
11root
#弱点影响
1暴露的 MCPJam Inspector远程攻击面
2CVE-2026-23744初始 RCE
3进程参数中的令牌凭据泄露
4Jupyter 内核访问用户级代码执行
5可读的应用源代码凭据发现
6硬编码的 OPSMCP API 密钥API 身份验证绕过
7隐藏的管理功能特权操作
8以 root 运行的 OPSMCP系统完全沦陷
OPSMCP未记录的工具调用 · 与凭据相关的请求 · 意外的 API 客户端 · 管理操作
SSH意外的 root 登录 · 新增的 SSH 密钥 · 异常的身份验证来源