The SentinelOne Annual Threat Report - A Defenders Guide from the FrontlinesThe SentinelOne Annual Threat ReportGet the Report
Experiencing a Breach?Blog
Get StartedContact Us
SentinelOne
  • Platform
    Platform Overview
    • Singularity Platform
      Welcome to Integrated Enterprise Security
    • AI for Security
      Leading the Way in AI-Powered Security Solutions
    • Securing AI
      Accelerate AI Adoption with Secure AI Tools, Apps, and Agents.
    • How It Works
      The Singularity XDR Difference
    • Singularity Marketplace
      One-Click Integrations to Unlock the Power of XDR
    • Pricing & Packaging
      Comparisons and Guidance at a Glance
    Data & AI
    • Purple AI
      Accelerate SecOps with Generative AI
    • Singularity Hyperautomation
      Easily Automate Security Processes
    • AI-SIEM
      The AI SIEM for the Autonomous SOC
    • Singularity Data Lake
      AI-Powered, Unified Data Lake
    • Singularity Data Lake for Log Analytics
      Seamlessly Ingest Data from On-Prem, Cloud or Hybrid Environments
    Endpoint Security
    • Singularity Endpoint
      Autonomous Prevention, Detection, and Response
    • Singularity XDR
      Native & Open Protection, Detection, and Response
    • Singularity RemoteOps Forensics
      Orchestrate Forensics at Scale
    • Singularity Threat Intelligence
      Comprehensive Adversary Intelligence
    • Singularity Vulnerability Management
      Application & OS Vulnerability Management
    • Singularity Identity
      Identity Threat Detection and Response
    Cloud Security
    • Singularity Cloud Security
      Block Attacks with an AI-Powered CNAPP
    • Singularity Cloud Native Security
      Secure Cloud and Development Resources
    • Singularity Cloud Workload Security
      Real-Time Cloud Workload Protection Platform
    • Singularity Cloud Data Security
      AI-Powered Threat Detection for Cloud Storage
    • Singularity Cloud Security Posture Management
      Detect and Remediate Cloud Misconfigurations
    Securing AI
    • Prompt Security
      Secure AI Tools Across Your Enterprise
  • Why SentinelOne?
    Why SentinelOne?
    • Why SentinelOne?
      Cybersecurity Built for What’s Next
    • Our Customers
      Trusted by the World’s Leading Enterprises
    • Industry Recognition
      Tested and Proven by the Experts
    • About Us
      The Industry Leader in Autonomous Cybersecurity
    Compare SentinelOne
    • Arctic Wolf
    • Broadcom
    • CrowdStrike
    • Cybereason
    • Microsoft
    • Palo Alto Networks
    • Sophos
    • Splunk
    • Trellix
    • Trend Micro
    • Wiz
    Verticals
    • Energy
    • Federal Government
    • Finance
    • Healthcare
    • Higher Education
    • K-12 Education
    • Manufacturing
    • Retail
    • State and Local Government
  • Services
    Managed Services
    • Managed Services Overview
      Wayfinder Threat Detection & Response
    • Threat Hunting
      World-Class Expertise and Threat Intelligence
    • Managed Detection & Response
      24/7/365 Expert MDR Across Your Entire Environment
    • Incident Readiness & Response
      DFIR, Breach Readiness, & Compromise Assessments
    Support, Deployment, & Health
    • Technical Account Management
      Customer Success with Personalized Service
    • SentinelOne GO
      Guided Onboarding & Deployment Advisory
    • SentinelOne University
      Live and On-Demand Training
    • Services Overview
      Comprehensive Solutions for Seamless Security Operations
    • SentinelOne Community
      Community Login
  • Partners
    Our Network
    • MSSP Partners
      Succeed Faster with SentinelOne
    • Singularity Marketplace
      Extend the Power of S1 Technology
    • Cyber Risk Partners
      Enlist Pro Response and Advisory Teams
    • Technology Alliances
      Integrated, Enterprise-Scale Solutions
    • SentinelOne for AWS
      Hosted in AWS Regions Around the World
    • Channel Partners
      Deliver the Right Solutions, Together
    • SentinelOne for Google Cloud
      Unified, Autonomous Security Giving Defenders the Advantage at Global Scale
    • Partner Locator
      Your Go-to Source for Our Top Partners in Your Region
    Partner Portal→
  • Resources
    Resource Center
    • Case Studies
    • Data Sheets
    • eBooks
    • Reports
    • Videos
    • Webinars
    • Whitepapers
    • Events
    View All Resources→
    Blog
    • Feature Spotlight
    • For CISO/CIO
    • From the Front Lines
    • Identity
    • Cloud
    • macOS
    • SentinelOne Blog
    Blog→
    Tech Resources
    • SentinelLABS
    • Ransomware Anthology
    • Cybersecurity 101
  • About
    About SentinelOne
    • About SentinelOne
      The Industry Leader in Cybersecurity
    • Investor Relations
      Financial Information & Events
    • SentinelLABS
      Threat Research for the Modern Threat Hunter
    • Careers
      The Latest Job Opportunities
    • Press & News
      Company Announcements
    • Cybersecurity Blog
      The Latest Cybersecurity Threats, News, & More
    • FAQ
      Get Answers to Our Most Frequently Asked Questions
    • DataSet
      The Live Data Platform
    • S Foundation
      Securing a Safer Future for All
    • S Ventures
      Investing in the Next Generation of Security, Data and AI
  • Pricing
Get StartedContact Us
CVE Vulnerability Database
Vulnerability Database/CVE-2026-25905

CVE-2026-25905: mcp-run-python RCE Vulnerability

CVE-2026-25905 is a remote code execution vulnerability in mcp-run-python that allows Python code to modify the JavaScript environment via Pyodide APIs. This post covers technical details, affected versions, and mitigations.

Published: February 13, 2026

CVE-2026-25905 Overview

CVE-2026-25905 is a security vulnerability affecting the mcp-run-python project where Python code executed via runPython or runPythonAsync functions is not properly isolated from the JavaScript environment. This lack of isolation allows any Python code to leverage Pyodide APIs to modify the JavaScript environment, potentially enabling attackers to hijack the MCP (Model Context Protocol) server for malicious purposes, including MCP tool shadowing attacks.

Critical Impact

Attackers can exploit the lack of sandbox isolation to hijack the MCP server, enabling malicious activities such as MCP tool shadowing which could compromise the integrity of AI model interactions and downstream systems.

Affected Products

  • mcp-run-python (all versions - project is archived)
  • Applications using Pyodide with mcp-run-python integration
  • MCP servers utilizing the vulnerable runPython/runPythonAsync functions

Discovery Timeline

  • 2026-02-09 - CVE CVE-2026-25905 published to NVD
  • 2026-02-09 - Last updated in NVD database

Technical Details for CVE-2026-25905

Vulnerability Analysis

This vulnerability stems from improper isolation between Python and JavaScript execution contexts within the mcp-run-python project. The runPython and runPythonAsync functions execute Python code using Pyodide, a Python runtime compiled to WebAssembly. However, the implementation fails to establish proper security boundaries between the Python execution environment and the surrounding JavaScript context.

Without adequate isolation, Python code can access and manipulate Pyodide's internal APIs, which provide direct bridges to the JavaScript environment. This allows malicious Python code to escape its intended sandbox, modify JavaScript objects, inject malicious code into the MCP server's execution flow, and perform MCP tool shadowing attacks where legitimate tools are replaced or intercepted with attacker-controlled implementations.

The vulnerability is classified under CWE-653 (Improper Isolation or Compartmentalization), reflecting the fundamental architectural flaw in the security boundary implementation.

Root Cause

The root cause is the absence of proper compartmentalization between the Python runtime and the JavaScript environment. When Pyodide executes Python code, it provides APIs such as js module access and pyodide.globals that allow bidirectional communication between Python and JavaScript. The mcp-run-python implementation does not restrict or sanitize access to these bridge APIs, enabling Python code to:

  • Access JavaScript global objects via Pyodide's js module
  • Modify MCP server state and registered tools
  • Intercept or replace legitimate MCP tool handlers
  • Execute arbitrary JavaScript code through the bridge APIs

Attack Vector

The attack requires network access with user interaction to execute malicious Python code through the runPython or runPythonAsync functions. An attacker would need to inject or provide malicious Python code that gets executed by the vulnerable functions. Once executed, the Python code can leverage Pyodide APIs to escape isolation and manipulate the MCP server environment.

The attack scenario involves the malicious Python code accessing the Pyodide bridge to JavaScript, locating MCP server objects and tool registrations, and replacing legitimate tool handlers with malicious implementations (tool shadowing). Once shadowed, the attacker can intercept sensitive data, modify model interactions, or perform unauthorized actions through the compromised MCP tools.

For detailed technical analysis of the exploitation mechanism, refer to the JFrog Vulnerability Analysis.

Detection Methods for CVE-2026-25905

Indicators of Compromise

  • Unexpected modifications to MCP server tool registrations or handlers
  • Python code attempting to access Pyodide's js module or pyodide.globals
  • Anomalous JavaScript object modifications during Python code execution
  • Suspicious MCP tool behavior inconsistent with expected functionality

Detection Strategies

  • Monitor Python code executed via runPython/runPythonAsync for attempts to access Pyodide bridge APIs
  • Implement logging for MCP tool registration changes and handler modifications
  • Deploy runtime integrity checks for MCP server tool definitions
  • Analyze Python code inputs for patterns indicative of isolation escape attempts

Monitoring Recommendations

  • Enable verbose logging for Pyodide API usage within the application
  • Implement real-time monitoring of MCP server state changes
  • Set up alerts for unexpected modifications to JavaScript global objects during Python execution
  • Conduct regular audits of MCP tool handlers to detect shadowing

How to Mitigate CVE-2026-25905

Immediate Actions Required

  • Discontinue use of mcp-run-python as the project is archived and will not receive security patches
  • Migrate to alternative Python execution solutions that provide proper sandboxing
  • Implement strict input validation for any Python code executed through Pyodide
  • Review and audit existing deployments for signs of compromise

Patch Information

The mcp-run-python project is archived and is unlikely to receive a security fix. Organizations using this component should treat it as end-of-life and migrate to supported alternatives that implement proper isolation between Python and JavaScript execution environments.

Workarounds

  • Restrict Python code execution to trusted, pre-approved scripts only
  • Implement a custom wrapper that filters access to Pyodide bridge APIs before code execution
  • Deploy network segmentation to limit the impact of MCP server compromise
  • Consider using containerized or process-isolated Python execution environments as an alternative
bash
# Recommended: Identify and remove mcp-run-python dependencies
npm ls mcp-run-python
# If found, remove the dependency
npm uninstall mcp-run-python
# Audit your package-lock.json for any transitive dependencies
npm audit

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

  • Vulnerability Details
  • TypeRCE

  • Vendor/TechMcp

  • SeverityMEDIUM

  • CVSS Score5.8

  • EPSS Probability0.03%

  • Known ExploitedNo
  • CVSS Vector
  • CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:L
  • Impact Assessment
  • ConfidentialityHigh
  • IntegrityLow
  • AvailabilityLow
  • CWE References
  • CWE-653
  • Technical References
  • JFrog Vulnerability Analysis
  • Related CVEs
  • CVE-2026-27735: MCP Server Git Path Traversal Flaw

  • CVE-2025-53365: MCP Python SDK DoS Vulnerability
Experience the World’s Most Advanced Cybersecurity Platform

Experience the World’s Most Advanced Cybersecurity Platform

See how our intelligent, autonomous cybersecurity platform can protect your organization now and into the future.

Try SentinelOne
  • Get Started
  • Get a Demo
  • Product Tour
  • Why SentinelOne
  • Pricing & Packaging
  • FAQ
  • Contact
  • Contact Us
  • Customer Support
  • SentinelOne Status
  • Language
  • Platform
  • Singularity Platform
  • Singularity Endpoint
  • Singularity Cloud
  • Singularity AI-SIEM
  • Singularity Identity
  • Singularity Marketplace
  • Purple AI
  • Services
  • Wayfinder TDR
  • SentinelOne GO
  • Technical Account Management
  • Support Services
  • Verticals
  • Energy
  • Federal Government
  • Finance
  • Healthcare
  • Higher Education
  • K-12 Education
  • Manufacturing
  • Retail
  • State and Local Government
  • Cybersecurity for SMB
  • Resources
  • Blog
  • Labs
  • Case Studies
  • Videos
  • Product Tours
  • Events
  • Cybersecurity 101
  • eBooks
  • Webinars
  • Whitepapers
  • Press
  • News
  • Ransomware Anthology
  • Company
  • About Us
  • Our Customers
  • Careers
  • Partners
  • Legal & Compliance
  • Security & Compliance
  • Investor Relations
  • S Foundation
  • S Ventures

©2026 SentinelOne, All Rights Reserved.

Privacy Notice Terms of Use

English