CVE-2026-57120

PraisonAI: execute_code sandbox bypass: str.format C-level attribute access reads every blocklisted dunder

Published Sep 14, 2026 CVSS 3.1 · 6.5 Medium EPSS < 1% KEV · Not listed
Description
PraisonAI is a multi-agent teams system. Prior to praisonaiagents 1.6.59, execute_code sandbox mode permits runtime assembly of blocklisted dunder names and allows str.format or str.format_map to resolve dotted fields through C-level attribute access that bypasses _safe_getattr. This exposes class, qualified-name, base-class, globals, and object-dictionary attributes to prompt-influenced code when approval is automatically granted, producing a high-impact read primitive without establishing a complete in-process execution chain. This issue is fixed in praisonaiagents 1.6.59.

Analysis

AI-generated

Technical impact

A sandbox bypass in PraisonAI’s execute_code mode permits prompt‑influenced code to assemble runtime‑constructed blocklisted dunder names, and the str.format and str.format_map functions resolve dotted fields via C‑level attribute access that bypasses the _safe_getattr guard. This allows access to class, qualified‑name, base‑class, globals, and object‑dictionary attributes, producing a high‑impact read primitive without establishing a complete in‑process execution chain.

Affected Systems

The vulnerability affects MervinPraison’s PraisonAI agents software. Versions prior to 1.6.59 are vulnerable; all releases before that version allow the described sandbox bypass.

Risk and Exploitability

With a CVSS score of 6.5 the vulnerability is classified as moderate severity. The EPSS score is <1%, indicating a very low probability of exploitation, although the flaw can be triggered via a user‑supplied prompt that is automatically approved, making it reachable from untrusted input. The vulnerability is not listed in CISA KEV, yet the read of internal attributes could aid attackers in gathering information for downstream attacks. Due to the absence of a full execution chain, immediate remote code execution is unlikely, but the information disclosure can be a stepping stone for further compromise.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade PraisonAI agents to version 1.6.59 or later to eliminate the sandbox bypass.
  • Disable automatic approval of user prompts to reduce exposure to prompt‑driven exploitation.
  • Verify that the execute_code sandbox mode is enabled and review any custom code templates to ensure no unintended attribute dereferencing occurs.

Generated by OpenCVE AI on September 21, 2026 at 00:11 UTC.

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Github GHSA Github GHSA GHSA-pv2j-rghr-v5r9 PraisonAI: execute_code sandbox bypass: str.format C-level attribute access reads every blocklisted dunder
History
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
First Time appeared Mervinpraison
Mervinpraison praisonaiagents
Vendors & Products Mervinpraison
Mervinpraison praisonaiagents
Type Values Removed Values Added
Description PraisonAI is a multi-agent teams system. Prior to praisonaiagents 1.6.59, execute_code sandbox mode permits runtime assembly of blocklisted dunder names and allows str.format or str.format_map to resolve dotted fields through C-level attribute access that bypasses _safe_getattr. This exposes class, qualified-name, base-class, globals, and object-dictionary attributes to prompt-influenced code when approval is automatically granted, producing a high-impact read primitive without establishing a complete in-process execution chain. This issue is fixed in praisonaiagents 1.6.59.
Title PraisonAI: execute_code sandbox bypass: str.format C-level attribute access reads every blocklisted dunder
Weaknesses CWE-693
References
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N'}

Weaknesses
  • CWE-693

    Protection Mechanism Failure

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Sep 16, 2026, 3:07 PM
Reserved
Jun 24, 2026, 12:33 AM
Status
Deferred
Published
Sep 14, 2026, 3:17 PM
Modified
Sep 16, 2026, 4:17 PM