CVE-2026-40159 PraisonAI Exposes Sensitive Environment Variable via Untrusted MCP Subprocess Execution

Medium 5.5 Published Updated

PraisonAI exposes sensitive environment variables to untrusted subprocesses, allowing attackers to steal API keys and credentials via malicious MCP commands.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Local or same network only
Victim action needed
A user has to click or open something
Fix
Available

What is CVE-2026-40159?

CVE-2026-40159 is a medium-severity vulnerability in MervinPraison PraisonAI, published on 10 Apr 2026. It can only be exploited from the same machine or local network, and only if a user opens a file or follows a link.

Official description

PraisonAI is a multi-agent teams system. Prior to 4.5.128, PraisonAI’s MCP (Model Context Protocol) integration allows spawning background servers via stdio using user-supplied command strings (e.g., MCP("npx -y @smithery/cli ...")). These commands are executed through Python’s subprocess module. By default, the implementation forwards the entire parent process environment to the spawned subprocess. As a result, any MCP command executed in this manner inherits all environment variables from the host process, including sensitive data such as API keys, authentication tokens, and database credentials. This behavior introduces a security risk when untrusted or third-party commands are used. In common scenarios where MCP tools are invoked via package runners such as npx -y, arbitrary code from external or potentially compromised packages may execute with access to these inherited environment variables. This creates a risk of unintended credential exposure and enables potential supply chain attacks through silent exfiltration of secrets. This vulnerability is fixed in 4.5.128.

Weakness: CWE-214, CWE-200

Which versions are affected by CVE-2026-40159?

3 open source packages ship an affected version, including praisonai and PraisonAI. It affects 1 product.

PackageAffectedFixed in
praisonai PyPIAll versions4.5.128
praisonai PyPIAll versions4.5.128
PraisonAI PyPIAll versions4.5.128

Products include Praison Praisonai.

How do I fix CVE-2026-40159?

Upgrade praisonai to 4.5.128 or later.

Is CVE-2026-40159 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-40159 exists.

Sources

Also known as GHSA-pj2r-f9mw-vrcq, PYSEC-2026-2918.

Is CVE-2026-40159 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free