Skip to main content

PraisonAI CVE-2026-55522

| EUVDEUVD-2026-53580 HIGH
Code Injection (CWE-94)
2026-08-05 GitHub_M GHSA-hxmv-c4g6-5fqc
7.8
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Write malicious tools.py to local recipe directory
  2. Delivery
    Deliver or lure operator into using attacker-controlled include path
  3. Exploit
    Operator runs workflow or recipe.run() with include directive
  4. Execution
    Workflow._execute_include() bypasses safety gates
  5. Persist
    importlib.exec_module() runs malicious module-level code
  6. Impact
    Arbitrary Python executes as PraisonAI process user

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Code injection prevention, sandbox exec
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Initial Access

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires two concurrent conditions: first, the attacker must be able to place or manipulate a tools.py file in a local recipe directory accessible to the target host's filesystem (e.g., through a shared mount, a cloned untrusted repository, or a prior write primitive); second, a victim operator or automated pipeline must invoke a PraisonAI workflow or call praisonai.recipe.run() with an include directive referencing that attacker-controlled directory (UI:R per CVSS). No authentication to PraisonAI itself is required by the attacker. The vulnerability is NOT reachable from a remote, unauthenticated network position without first achieving local file placement. Exploitation is further limited to environments running praisonai 3.9.26-4.6.57 or praisonaiagents 0.12.12-1.6.57. The critical limiting factor for defenders is the include directive: workflows that exclusively reference internal, access-controlled recipe directories are not exploitable through this path.

Impact

The CVSS 3.1 base score of 7.8 (AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H) accurately reflects a local code-injection primitive that requires the victim operator to actively run a workflow referencing an attacker-controlled recipe directory - hence UI:R and AV:L. The AC:L rating is appropriate because once the attacker places a malicious tools.py in the target directory, no further complexity is needed. The PR:N metric reflects that the attacker requires no authenticated access to the PraisonAI application itself, though they must independently achieve write access to a local path the victim will include. Full C:H/I:H/A:H impact is consistent with arbitrary Python execution at process privilege. No EPSS score was provided in the source data; given the niche deployment footprint and the UI:R gating condition, real-world exploitation risk is lower than the raw CVSS would suggest for broad, opportunistic attacks. However, the bypass-of-hardening nature is significant: defenders who believed the ALLOW_TEMPLATE_TOOLS/ALLOW_LOCAL_TOOLS gates were sufficient mitigations for the prior advisory family must treat this as a residual gap, not a new unrelated risk. No KEV listing and no public POC have been identified, but the precise description in the GitHub Security Advisory provides enough technical detail for a skilled researcher to reproduce the issue.

Exploit ScenarioDerived

An attacker who can write a malicious tools.py to a directory on the target host - for example via a compromised shared filesystem, a social-engineering lure that tricks an operator into cloning an attacker-controlled repository, or a prior low-privilege foothold - crafts module-level Python code (e.g., a reverse shell or credential harvester) in that file. When the victim operator runs any PraisonAI workflow or recipe that includes the attacker-controlled directory, Workflow._execute_include() unconditionally imports and executes the malicious tools.py before any other workflow processing, achieving arbitrary code execution as the PraisonAI process user. No public proof-of-concept exploit has been identified, but the advisory description provides sufficient detail to reproduce the technique.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 05, 2026

Arbitrary Python code execution in PraisonAI's workflow include feature allows an attacker who controls a local recipe directory to execute arbitrary code as the PraisonAI process user. Affected are praisonai 3.9.26-4.6.57 and praisonaiagents 0.12.12-1.6.57. This is a hardening bypass: the vulnerable sink in Workflow._execute_include() skips the PRAISONAI_ALLOW_TEMPLATE_TOOLS/PRAISONAI_ALLOW_LOCAL_TOOLS opt-in gates and the centralized safe loader that protect all other tools.py autoload paths, making it a distinct variant within an established advisory family. No public exploit or CISA KEV listing has been identified at time of analysis.

RemediationAI

Upgrade praisonai to version 4.6.58 or later and praisonaiagents to version 1.6.58 or later, per the vendor advisory at https://github.com/MervinPraison/PraisonAI/security/advisories/GHSA-hxmv-c4g6-5fqc. These releases route the include path through the centralized safe loader and enforce the PRAISONAI_ALLOW_TEMPLATE_TOOLS/PRAISONAI_ALLOW_LOCAL_TOOLS gates. If an immediate upgrade is not possible, the most actionable compensating control is to restrict all workflow and recipe definitions to trusted, internally maintained recipe directories - auditing and controlling the filesystem paths passed to include directives and to praisonai.recipe.run(). Disabling or disallowing the workflow include feature entirely, if your deployment does not require it, eliminates the vulnerable sink without side effects on other functionality. Do not rely on the PRAISONAI_ALLOW_TEMPLATE_TOOLS or PRAISONAI_ALLOW_LOCAL_TOOLS environment variables as mitigations for this specific path, as the vulnerability explicitly bypasses those gates.

Affected VersionsENISA

PraisonAI 3.9.26, < 4.6.58
praisonaiagents 0.12.12, < 1.6.58

Affected Packages

pypi praisonai fix: 4.6.58
pypi praisonaiagents fix: 1.6.58

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in pypi

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

PraisonAI (CPE: cpe:2.3:a:mervinpraison:praisonai and cpe:2.3:a:mervinpraison:praisonaiagents) is a Python-based multi-agent orchestration framework. The vulnerability (CWE-94: Code Injection) resides in Workflow._execute_include(), which resolves an included recipe's tools.py using Python's raw importlib.util.spec_from_file_location() followed by spec.loader.exec_module(). Because exec_module() executes all module-level code immediately upon import, any Python statements at the top level of the attacker-crafted tools.py run unconditionally during workflow include setup - before parsing of any child workflow or model API call. Critically, this path does not check the PRAISONAI_ALLOW_TEMPLATE_TOOLS or PRAISONAI_ALLOW_LOCAL_TOOLS environment-variable gates, nor does it route through the framework's centralized safe loader. The same vulnerable sink is also reachable via the higher-level praisonai.recipe.run() API, broadening the reachable attack surface beyond direct workflow invocation.

Know when Praisonai gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 7.8 HIGH
AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
vuln.today AI 7.8 HIGH

Local file write to attacker-controlled recipe directory required (AV:L); no PraisonAI credentials needed (PR:N); victim must actively invoke the malicious include (UI:R); full code execution yields C:H/I:H/A:H.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Local
Attack Complexity
Low
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

2
Patch available
Aug 05, 2026 - 20:03 EUVD
CVE Published
Aug 05, 2026 - 19:01 cve.org
HIGH 7.8

DescriptionCVE.org

PraisonAI is a multi-agent teams system. In versions 3.9.26 through 4.6.57 of praiseonai and 0.12.12 through 1.6.57 of praiseonaiagents, the workflow "include" feature is vulnerable to code execution. Workflow._execute_include() implicitly imports and runs an included recipe's tools.py via a raw importlib.util.spec_from_file_location() and spec.loader.exec_module() call, without honoring the PRAISONAI_ALLOW_TEMPLATE_TOOLS/PRAISONAI_ALLOW_LOCAL_TOOLS autoload opt-in gates or routing through the centralized safe loader that protects the other tools.py autoload paths. As a result, a workflow that includes an attacker-controlled local recipe directory executes arbitrary module-level Python code during include setup, before any child workflow parsing or model call, and the same sink is reachable through the higher-level praisonai.recipe.run() recipe API. An attacker who can cause a victim process to run a workflow or recipe that includes an untrusted local recipe achieves arbitrary Python code execution as the PraisonAI process user, a variant that bypasses the hardening applied to the previously disclosed automatic tools.py RCE advisory family. This issue has been fixed in version 4.6.58 of praisonai and 1.6.58 of praisonaiagents.

Executive ViewAI

Why It Matters

PraisonAI versions 3.9.26 through 4.6.57 contain an arbitrary Python code execution vulnerability in the workflow include feature that bypasses established security controls. An attacker with local access to recipe directories can execute arbitrary code with PraisonAI process privileges, creating risk for organizations using PraisonAI in development and automation environments where recipes may originate from untrusted sources. Although no public exploit has been identified at time of analysis, the vulnerability requires immediate patching.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 95% exploitable
Prevalence
Low
niche Python AI multi-agent framework, limited enterprise footprint
Threat Intel
1
1 sources
Exploit
POC
Public exploit code exists
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC Yes
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
Poc
System Exposure· derived
Small
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

59
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +39
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Code Injection CRITICAL

Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

CVE-2026-57139 CRITICAL POC
9.8 Sep 15

PraisonAI's TypeScript MCP server (npm package `praisonai`, versions 1.5.0 through 1.7.1) exposes an HTTP JSON-RPC trans

CVE-2026-55536 CRITICAL POC
9.1 Aug 25

WebSocket origin-validation bypass in PraisonAI's Browser Server (praisonai/browser/server.py) before 4.6.58 lets an att

CVE-2026-55541 HIGH POC
8.8 Aug 25

PraisonAI's `praisonai serve` subsystem (agents and unified modes) accepts an `--api-key` CLI flag that is parsed but ne

CVE-2026-55534 HIGH POC
8.6 Aug 25

Unauthenticated remote agent invocation in PraisonAI versions 4.6.34 through 4.6.57 allows any network-reachable caller

CVE-2026-55526 HIGH POC
8.5 Aug 25

SSRF protection bypass in PraisonAI's praisonaiagents library (all versions before 1.6.58) lets low-privileged users rou

CVE-2026-55533 HIGH POC
8.2 Aug 25

Authentication fail-open in PraisonAI's Recipe HTTP server allows unauthenticated remote attackers to invoke recipe exec

CVE-2026-55528 HIGH POC
8.2 Aug 25

Authentication bypass in PraisonAI's AgentServer component exposes all routes - /publish, /events, /info, /health - to u

CVE-2026-55523 HIGH POC
7.7 Aug 05

Server-side request forgery in PraisonAI's web_crawl() function (versions 1.5.128-1.6.57) allows an attacker who can inf

CVE-2026-55532 HIGH POC
7.6 Aug 25

Cross-site request forgery against the PraisonAI MCP HTTP-stream transport allows unauthenticated remote attackers to ex

CVE-2026-44338 HIGH POC
7.3 May 08

Remote unauthenticated access to PraisonAI's legacy Flask API server allows attackers to execute configured agent workfl

CVE-2026-55527 HIGH POC
7.1 Aug 25

Path traversal in praisonaiagents prior to 1.6.58 allows a low-privileged caller to write arbitrary JSON files to any pr

CVE-2026-55535 MEDIUM POC
6.8 Aug 25

Server-Side Request Forgery in PraisonAI before version 4.6.58 allows unauthenticated remote attackers to force the appl

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