Skip to main content

PraisonAI EUVDEUVD-2026-42902

| CVE-2026-61444 CRITICAL
Code Injection (CWE-94)
2026-07-10 VulnCheck GHSA-vwv5-32vr-3jcp
9.4
CVSS 4.0 · Vendor: VulnCheck
Share

Severity by source

Vendor (VulnCheck) PRIMARY
9.4 CRITICAL
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
vuln.today AI
9.1 CRITICAL

Network-reachable API with low complexity but PR:H because controlling agents_file needs privileged access; scope change (S:C) since injected code runs in a spawned subprocess, with full C/I/A impact.

3.1 AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Privileges Required
High
User Interaction
None
Scope
X

Lifecycle Timeline

2
Patch available
Jul 10, 2026 - 16:16 EUVD
Analysis Generated
Jul 10, 2026 - 15:32 vuln.today

DescriptionCVE.org

PraisonAI versions before 4.6.78 contain a code injection vulnerability in deploy/api.py where the agents_file parameter is directly interpolated into an f-string without sanitization. Attackers can inject arbitrary Python code that executes when the generated server code runs via subprocess.Popen().

AnalysisAI

Remote code execution in PraisonAI before 4.6.78 lets an attacker who can supply the agents_file parameter to deploy/api.py run arbitrary Python, because that value is interpolated directly into an f-string that is later executed as generated server code via subprocess.Popen(). The CVSS 4.0 base score is 9.4 and the vector requires high privileges (PR:H), meaning the attacker must already be able to reach and drive the deployment API. No public exploit has been identified at time of analysis and it is not on the CISA KEV list.

Technical ContextAI

PraisonAI is an open-source Python framework for building and orchestrating multi-agent LLM systems (mervinpraison/praisonai). Its deployment component (deploy/api.py) programmatically generates server code and launches it as a child process with subprocess.Popen(). The root cause is CWE-94 (Improper Control of Generation of Code, i.e. code injection): the user-controlled agents_file value is concatenated into a Python f-string template with no sanitization, escaping, or allow-listing, so any Python expression or statement embedded in that value becomes part of the emitted program and is executed when the generated script runs. This is a classic template/eval-style injection where the trust boundary between configuration input and executable code is not enforced.

RemediationAI

Vendor-released patch: 4.6.78 - upgrade PraisonAI to 4.6.78 or later, which is the primary and recommended fix (see GHSA-g6j7-pffp-8whg). If you cannot upgrade immediately, restrict who can reach and invoke the deploy/api.py deployment endpoint to trusted operators only and treat the agents_file parameter as untrusted input: validate it against a strict allow-list of known file paths and reject any value containing Python syntax, quotes, or newlines, accepting that this narrows legitimate flexibility in specifying agent definitions. As a further compensating control, run the generated server process under a low-privilege, sandboxed account so a successful injection cannot pivot to broader system compromise, at the cost of some deployment convenience. Refer to the vendor advisory (https://github.com/MervinPraison/PraisonAI/security/advisories/GHSA-g6j7-pffp-8whg) and the VulnCheck writeup (https://www.vulncheck.com/advisories/praisonai-before-code-injection-via-f-string) for confirmation of the fixed version.

More in Python

View all
CVE-2025-24016 CRITICAL POC
9.9 Feb 10

Wazuh SIEM platform versions 4.4.0 through 4.9.0 contain an unsafe deserialization vulnerability in the DistributedAPI t

CVE-2025-27520 CRITICAL POC
9.8 Apr 04

BentoML version 1.4.2 and earlier contains an unauthenticated remote code execution vulnerability through insecure deser

CVE-2025-2945 CRITICAL POC
9.9 Apr 03

pgAdmin 4 contains critical remote code execution vulnerabilities in the Query Tool download and Cloud Deployment endpoi

CVE-2013-5093 MEDIUM POC
6.8 Sep 27

The renderLocalView function in render/views.py in graphite-web in Graphite 0.9.5 through 0.9.10 uses the pickle Python

CVE-2025-32375 CRITICAL POC
9.8 Apr 09

BentoML is a Python library for building online serving systems optimized for AI apps and model inference. Rated critica

CVE-2014-0224 HIGH POC
7.4 Jun 05

OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph

CVE-2024-21644 HIGH POC
7.5 Jan 08

pyLoad download manager version prior to 0.5.0b3.dev77 exposes the Flask SECRET_KEY through an unauthenticated endpoint.

CVE-2026-33017 CRITICAL POC
9.3 Mar 17

Langflow (a visual LLM pipeline builder) contains a critical unauthenticated code execution vulnerability (CVE-2026-3301

CVE-2017-9462 HIGH POC
8.8 Jun 06

In Mercurial before 4.1.3, "hg serve --stdio" allows remote authenticated users to launch the Python debugger, and conse

CVE-2026-49869 CRITICAL POC
10.0 Jun 26

Unauthenticated remote code execution affects Kestra OSS (the open-source event-driven orchestration platform) prior to

CVE-2026-39987 CRITICAL POC
9.3 Apr 08

Unauthenticated remote code execution in Marimo ≤0.20.4 allows attackers to execute arbitrary system commands via the `/

CVE-2024-21645 MEDIUM POC
5.3 Jan 08

pyLoad is the free and open-source Download Manager written in pure Python. Rated medium severity (CVSS 5.3), this vulne

Share

EUVD-2026-42902 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy